From 4530a47356185eb5dbc3e552f81b7c3f95b94aa3 Mon Sep 17 00:00:00 2001 From: andy Date: Tue, 23 Nov 2010 18:24:00 +0000 Subject: [PATCH] ENH: updates to Xfer after commit 49331bf9176d17 --- .../steadyParticleTracks/steadyParticleTracksTemplates.C | 2 +- src/OpenFOAM/fields/Fields/Field/Field.C | 9 ++++++++- src/OpenFOAM/fields/Fields/Field/Field.H | 3 +++ src/fileFormats/starcd/STARCDCore.C | 2 +- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/applications/utilities/postProcessing/lagrangian/steadyParticleTracks/steadyParticleTracksTemplates.C b/applications/utilities/postProcessing/lagrangian/steadyParticleTracks/steadyParticleTracksTemplates.C index 9cd3ce34ff..d64a36dda5 100644 --- a/applications/utilities/postProcessing/lagrangian/steadyParticleTracks/steadyParticleTracksTemplates.C +++ b/applications/utilities/postProcessing/lagrangian/steadyParticleTracks/steadyParticleTracksTemplates.C @@ -83,7 +83,7 @@ PtrList > readFields { Info<< " reading field " << obj.name() << endl; IOField newField(obj); - values.set(fieldI++, new List(newField.xfer())); + values.set(fieldI++, new List(newField.xferList())); break; } } diff --git a/src/OpenFOAM/fields/Fields/Field/Field.C b/src/OpenFOAM/fields/Fields/Field/Field.C index 398772b4e8..861486cd83 100644 --- a/src/OpenFOAM/fields/Fields/Field/Field.C +++ b/src/OpenFOAM/fields/Fields/Field/Field.C @@ -164,7 +164,7 @@ Field::Field(const Xfer >& f) template Field::Field(const Xfer >& f) : - List(f) + List(f().xferList()) {} @@ -585,6 +585,13 @@ Xfer > Field::xfer() } +template +Xfer > Field::xferList() +{ + return List::xfer(); +} + + template void Field::writeEntry(const word& keyword, Ostream& os) const { diff --git a/src/OpenFOAM/fields/Fields/Field/Field.H b/src/OpenFOAM/fields/Fields/Field/Field.H index b3b9826154..b2457153ed 100644 --- a/src/OpenFOAM/fields/Fields/Field/Field.H +++ b/src/OpenFOAM/fields/Fields/Field/Field.H @@ -305,6 +305,9 @@ public: //- Transfer contents to the Xfer container Xfer > xfer(); + //- Transfer contents to a List Xfer container + Xfer > xferList(); + //- Write the field as a dictionary entry void writeEntry(const word& keyword, Ostream& os) const; diff --git a/src/fileFormats/starcd/STARCDCore.C b/src/fileFormats/starcd/STARCDCore.C index 6bfb02ad69..8645cb9feb 100644 --- a/src/fileFormats/starcd/STARCDCore.C +++ b/src/fileFormats/starcd/STARCDCore.C @@ -117,7 +117,7 @@ bool Foam::fileFormats::STARCDCore::readPoints // reuse memory if possible - DynamicList dynPoints(points.xfer()); + DynamicList dynPoints(points.xferList()); DynamicList