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 |
Detailed Description
The PODfield structure is used to store the fields inside POD classes.
- Examples
- POD_example_00002.cpp, POD_example_00004.cpp, and POD_example_00005.cpp.
Definition at line 65 of file pod_common.hpp.
Constructor & Destructor Documentation
◆ PODField() [1/4]
|
inline |
Creates a new empty pod field.
Definition at line 76 of file pod_common.hpp.
◆ PODField() [2/4]
|
inline |
Copy a pod field.
Definition at line 84 of file pod_common.hpp.
◆ PODField() [3/4]
|
default |
Move a field.
◆ PODField() [4/4]
|
inline |
Creates a new empty pod field with fixed number of scalar and vector fields and optional linked kernel.
- Parameters
-
[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.
Member Function Documentation
◆ clear()
|
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.
◆ operator=()
Assignement operator using copy and swap
- Parameters
-
[in] other another pod field whose content is copied in this pod field
- Returns
- the assigneed field
Definition at line 122 of file pod_common.hpp.
◆ setDynamicKernel()
|
inline |
Set the linked dynamic kernel to a pod field.
- Parameters
-
[in] lkernel Linked kernel
Definition at line 165 of file pod_common.hpp.
◆ setMesh() [1/2]
|
inline |
Set the linked mesh to a pod field.
- Parameters
-
[in] lmesh Linked mesh
Definition at line 188 of file pod_common.hpp.
◆ setMesh() [2/2]
|
inline |
Set the linked mesh to a pod field.
- Parameters
-
[in] lmesh Linked mesh
- Examples
- POD_example_00005.cpp.
Definition at line 177 of file pod_common.hpp.
◆ setStaticKernel()
|
inline |
Set the linked static kernel to a pod field.
- Parameters
-
[in] lkernel Linked kernel
Definition at line 150 of file pod_common.hpp.
◆ swap()
|
inline |
Exchanges the content of the pod field by the content of other pod field received in input.
- Parameters
-
[in] other another pod field whose content is swapped with that of this pod field.
Definition at line 136 of file pod_common.hpp.
Member Data Documentation
◆ mask
std::unique_ptr<PiercedStorage<bool> > bitpit::pod::PODField::mask |
Mask: true where the values of the field are defined.
- Examples
- POD_example_00002.cpp, and POD_example_00005.cpp.
Definition at line 69 of file pod_common.hpp.
◆ mesh
VolumeKernel* bitpit::pod::PODField::mesh |
◆ meshStorage
std::shared_ptr<VolumeKernel> bitpit::pod::PODField::meshStorage |
Mesh owned by the field
Definition at line 67 of file pod_common.hpp.
◆ scalar
std::unique_ptr<pod::ScalarStorage> bitpit::pod::PODField::scalar |
Scalar fields.
- Examples
- POD_example_00002.cpp, and POD_example_00005.cpp.
Definition at line 70 of file pod_common.hpp.
◆ vector
std::unique_ptr<pod::VectorStorage> bitpit::pod::PODField::vector |
Vector fields.
- Examples
- POD_example_00002.cpp, and POD_example_00005.cpp.
Definition at line 71 of file pod_common.hpp.
The documentation for this struct was generated from the following file:
- src/POD/pod_common.hpp
