The PODfield structure is used to store the fields inside POD classes. More...
#include <pod_common.hpp>
Public Member Functions | |
PODField () | |
PODField (const PODField &field) | |
PODField (int nsf, int nvf, VolumeKernel *lmesh=nullptr, const PiercedKernel< long > *lkernel=nullptr) | |
PODField (PODField &&field)=default | |
void | clear () |
PODField & | operator= (PODField other) |
void | setDynamicKernel (PiercedKernel< long > *lkernel) |
void | setMesh (const std::shared_ptr< VolumeKernel > &lmesh) |
void | setMesh (VolumeKernel *lmesh) |
void | setStaticKernel (const PiercedKernel< long > *lkernel) |
void | swap (PODField &other) |
Public Attributes | |
std::unique_ptr< PiercedStorage< bool > > | mask |
VolumeKernel * | mesh |
std::shared_ptr< VolumeKernel > | meshStorage |
std::unique_ptr< pod::ScalarStorage > | scalar |
std::unique_ptr< pod::VectorStorage > | vector |
The PODfield structure is used to store the fields inside POD classes.
Definition at line 65 of file pod_common.hpp.
|
inline |
Creates a new empty pod field.
Definition at line 76 of file pod_common.hpp.
Copy a pod field.
Definition at line 84 of file pod_common.hpp.
|
default |
Move a field.
|
inline |
Creates a new empty pod field with fixed number of scalar and vector fields and optional linked kernel.
[in] | nsf | is the number of scalar fields. |
[in] | nvf | is the number of vector fields. |
[in] | lmesh | Linked mesh. |
[in] | lkernel | Linked kernel. |
Definition at line 107 of file pod_common.hpp.
|
inline |
Clear the pod field. If the field is set to be mesh owner the mesh is destroyed.
Definition at line 198 of file pod_common.hpp.
|
inline |
Assignement operator using copy and swap
[in] | other | another pod field whose content is copied in this pod field |
Definition at line 122 of file pod_common.hpp.
|
inline |
Set the linked dynamic kernel to a pod field.
[in] | lkernel | Linked kernel |
Definition at line 165 of file pod_common.hpp.
|
inline |
Set the linked mesh to a pod field.
[in] | lmesh | Linked mesh |
Definition at line 188 of file pod_common.hpp.
|
inline |
Set the linked mesh to a pod field.
[in] | lmesh | Linked mesh |
Definition at line 177 of file pod_common.hpp.
|
inline |
Set the linked static kernel to a pod field.
[in] | lkernel | Linked kernel |
Definition at line 150 of file pod_common.hpp.
Exchanges the content of the pod field by the content of other pod field received in input.
[in] | other | another pod field whose content is swapped with that of this pod field. |
Definition at line 136 of file pod_common.hpp.
std::unique_ptr<PiercedStorage<bool> > bitpit::pod::PODField::mask |
Mask: true where the values of the field are defined.
Definition at line 69 of file pod_common.hpp.
VolumeKernel* bitpit::pod::PODField::mesh |
std::shared_ptr<VolumeKernel> bitpit::pod::PODField::meshStorage |
Mesh owned by the field
Definition at line 67 of file pod_common.hpp.
std::unique_ptr<pod::ScalarStorage> bitpit::pod::PODField::scalar |
Scalar fields.
Definition at line 70 of file pod_common.hpp.
std::unique_ptr<pod::VectorStorage> bitpit::pod::PODField::vector |
Vector fields.
Definition at line 71 of file pod_common.hpp.