diff --git a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C index 15a32c1e8e..4e3bf3fad6 100644 --- a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C +++ b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C @@ -50,8 +50,7 @@ Foam::OutputFilterFunctionObject::OutputFilterFunctionObject const dictionary& dict ) : - functionObject(), - name_(name), + functionObject(name), time_(t), dict_(dict), regionName_(polyMesh::defaultRegion), @@ -92,7 +91,7 @@ bool Foam::OutputFilterFunctionObject::start() ( new IOOutputFilter ( - name_, + name(), time_.lookupObject(regionName_), dictName_ ) @@ -104,7 +103,7 @@ bool Foam::OutputFilterFunctionObject::start() ( new OutputFilter ( - name_, + name(), time_.lookupObject(regionName_), dict_ ) diff --git a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H index 9ac00bd060..f6c183e803 100644 --- a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H +++ b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H @@ -63,9 +63,6 @@ class OutputFilterFunctionObject { // Private data - //- Output filter name - word name_; - //- Reference to the time database const Time& time_; @@ -121,12 +118,6 @@ public: // Access - //- Return name - virtual const word& name() const - { - return name_; - } - //- Return time database virtual const Time& time() const { diff --git a/src/OpenFOAM/db/functionObjects/functionObject/functionObject.C b/src/OpenFOAM/db/functionObjects/functionObject/functionObject.C index a731621ff6..3157cea04b 100644 --- a/src/OpenFOAM/db/functionObjects/functionObject/functionObject.C +++ b/src/OpenFOAM/db/functionObjects/functionObject/functionObject.C @@ -36,7 +36,9 @@ int Foam::functionObject::debug(Foam::debug::debugSwitch("functionObject", 0)); // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::functionObject::functionObject() +Foam::functionObject::functionObject(const word& name) +: + name_(name) {} @@ -103,6 +105,12 @@ Foam::functionObject::~functionObject() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +const Foam::word& Foam::functionObject::name() const +{ + return name_; +} + + bool Foam::functionObject::end() { return execute(); diff --git a/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H b/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H index 94a2f7aea4..8757c3adbc 100644 --- a/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H +++ b/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H @@ -57,6 +57,12 @@ class Time; class functionObject { + // Private data + + //- Name + const word name_; + + // Private Member Functions //- Disallow default bitwise copy construct @@ -88,8 +94,8 @@ public: // Constructors - //- Construct null - functionObject(); + //- Construct from components + functionObject(const word& name); //- Return clone autoPtr clone() const @@ -137,6 +143,9 @@ public: // Member Functions + //- Name + virtual const word& name() const; + //- Called at the start of the time-loop virtual bool start() = 0; diff --git a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H index ea2c43adf3..0b3a035464 100644 --- a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H +++ b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H @@ -133,6 +133,9 @@ public: //- Return true if the List is empty (ie, size() is zero). using PtrList::empty; + //- Access to the functionObjects + using PtrList::operator[]; + //- Clear the list of function objects virtual void clear();