Go to the documentation of this file.
42 #ifndef CloudFunctionObject_H
43 #define CloudFunctionObject_H
62 template<
class CloudType>
117 const word& objectType,
143 const word& objectType,
153 virtual void preEvolve(
const typename parcelType::trackingData& td);
158 const typename parcelType::trackingData& td
166 const point& position0,
202 #define makeCloudFunctionObject(CloudType) \
204 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \
205 defineNamedTemplateTypeNameAndDebug \
207 Foam::CloudFunctionObject<kinematicCloudType>, \
212 defineTemplateRunTimeSelectionTable \
214 CloudFunctionObject<kinematicCloudType>, \
220 #define makeCloudFunctionObjectType(SS, CloudType) \
222 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \
223 defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0); \
225 Foam::CloudFunctionObject<kinematicCloudType>:: \
226 adddictionaryConstructorToTable<Foam::SS<kinematicCloudType>> \
227 add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
virtual void postFace(const parcelType &p, bool &keepParticle)
Post-face hook.
virtual void postEvolve(const typename parcelType::trackingData &td)
Post-evolve hook.
virtual void postMove(parcelType &p, const scalar dt, const point &position0, bool &keepParticle)
Post-move hook.
A class for handling words, derived from Foam::string.
A class for handling file names.
virtual autoPtr< CloudFunctionObject< CloudType > > clone() const
Construct and return a clone.
CloudFunctionObject(CloudType &owner)
Construct null from owner.
Base class for cloud sub-models.
const word & modelName() const
Return const access to the name of the sub-model.
const dictionary & dict() const
Return const access to the cloud dictionary.
A patch is a list of labels that address the faces in the global face list.
const CloudType & owner() const
Return const access to the owner cloud.
Templated base class for dsmc cloud.
virtual ~CloudFunctionObject()=default
Destructor.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
virtual void preEvolve(const typename parcelType::trackingData &td)
Pre-evolve hook.
virtual void postPatch(const parcelType &p, const polyPatch &pp, bool &keepParticle)
Post-patch hook.
static autoPtr< CloudFunctionObject< CloudType > > New(const dictionary &dict, CloudType &owner, const word &objectType, const word &modelName)
Selector.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Macros to ease declaration of run-time selection tables.
fileName writeTimeDir() const
Return the output time path.
Templated cloud function object base class.
ParcelType parcelType
Type of parcel the cloud was instantiated for.
TypeName("cloudFunctionObject")
Runtime type information.
declareRunTimeSelectionTable(autoPtr, CloudFunctionObject, dictionary,(const dictionary &dict, CloudType &owner, const word &modelName),(dict, owner, modelName))
Declare runtime constructor selection table.
const fileName & outputDir() const
Return the output path.