Go to the documentation of this file.
7 #ifndef INCLUDE_JET_GRID_SYSTEM_DATA3_H_
8 #define INCLUDE_JET_GRID_SYSTEM_DATA3_H_
116 double initialVal = 0.0);
152 double initialVal = 0.0);
218 void serialize(std::vector<uint8_t>* buffer)
const override;
230 std::vector<ScalarGrid3Ptr> _scalarDataList;
231 std::vector<VectorGrid3Ptr> _vectorDataList;
232 std::vector<ScalarGrid3Ptr> _advectableScalarDataList;
233 std::vector<VectorGrid3Ptr> _advectableVectorDataList;
241 #endif // INCLUDE_JET_GRID_SYSTEM_DATA3_H_
std::shared_ptr< FaceCenteredGrid3 > FaceCenteredGrid3Ptr
Shared pointer type for the FaceCenteredGrid3.
Definition: face_centered_grid3.h:285
const VectorGrid3Ptr & advectableVectorDataAt(size_t idx) const
Returns the advectable vector data at given index.
size_t numberOfScalarData() const
Returns the number of non-advectable scalar data.
size_t numberOfAdvectableVectorData() const
Returns the number of advectable vector data.
size_t numberOfAdvectableScalarData() const
Returns the number of advectable scalar data.
const ScalarGrid3Ptr & scalarDataAt(size_t idx) const
Returns the non-advectable scalar data at given index.
GridSystemData3(const GridSystemData3 &other)
Copy constructor.
Size3 resolution() const
Returns the resolution of the grid.
std::shared_ptr< VectorGridBuilder3 > VectorGridBuilder3Ptr
Shared pointer for the VectorGridBuilder3 type.
Definition: vector_grid3.h:123
std::shared_ptr< VectorGrid3 > VectorGrid3Ptr
Shared pointer for the VectorGrid3 type.
Definition: vector_grid3.h:103
size_t velocityIndex() const
Returns the index of the velocity field.
size_t addScalarData(const ScalarGridBuilder3Ptr &builder, double initialVal=0.0)
Adds a non-advectable scalar data grid by passing its builder and initial value.
void deserialize(const std::vector< uint8_t > &buffer) override
Serialize the data from the given buffer.
3-D axis-aligned bounding box class.
Definition: bounding_box3.h:41
virtual ~GridSystemData3()
Destructor.
GridSystemData3()
Constructs empty grid system.
std::shared_ptr< ScalarGrid3 > ScalarGrid3Ptr
Shared pointer for the ScalarGrid3 type.
Definition: scalar_grid3.h:193
BoundingBox3D boundingBox() const
Returns the bounding box of the grid.
size_t addAdvectableScalarData(const ScalarGridBuilder3Ptr &builder, double initialVal=0.0)
Adds an advectable scalar data grid by passing its builder and initial value.
void resize(const Size3 &resolution, const Vector3D &gridSpacing, const Vector3D &origin)
Resizes the whole system with given resolution, grid spacing, and origin.
Definition: advection_solver2.h:18
std::shared_ptr< GridSystemData3 > GridSystemData3Ptr
Shared pointer type of GridSystemData3.
Definition: grid_system_data3.h:237
std::shared_ptr< ScalarGridBuilder3 > ScalarGridBuilder3Ptr
Shared pointer for the ScalarGridBuilder3 type.
Definition: scalar_grid3.h:213
size_t addAdvectableVectorData(const VectorGridBuilder3Ptr &builder, const Vector3D &initialVal=Vector3D())
Adds an advectable vector data grid by passing its builder and initial value.
const VectorGrid3Ptr & vectorDataAt(size_t idx) const
Returns the non-advectable vector data at given index.
Vector3D origin() const
Returns the origin of the grid.
3-D size class.
Definition: size3.h:19
Abstract base class for any serializable class.
Definition: serialization.h:17
Vector3< double > Vector3D
Double-type 3D vector.
Definition: vector3.h:349
3-D vector class.
Definition: vector3.h:25
3-D grid system data.
Definition: grid_system_data3.h:26
GridSystemData3(const Size3 &resolution, const Vector3D &gridSpacing, const Vector3D &origin)
Constructs a grid system with given resolution, grid spacing and origin.
size_t numberOfVectorData() const
Returns the number of non-advectable vector data.
size_t addVectorData(const VectorGridBuilder3Ptr &builder, const Vector3D &initialVal=Vector3D())
Adds a non-advectable vector data grid by passing its builder and initial value.
void serialize(std::vector< uint8_t > *buffer) const override
Serialize the data to the given buffer.
const FaceCenteredGrid3Ptr & velocity() const
Returns the velocity field.
Vector3D gridSpacing() const
Return the grid spacing.
const ScalarGrid3Ptr & advectableScalarDataAt(size_t idx) const
Returns the advectable scalar data at given index.