icedb
version 0.5.1
Snow particle scattering database API
|
Structure containing a list of all of the common optional data for creating a new shape in the database. More...
#include <shape.hpp>
Public Member Functions | |
bool | isValid (gsl::not_null< const NewShapeRequiredProperties *> required, std::ostream *errout=nullptr) const |
Public Attributes | |
gsl::span< const uint64_t > | particle_scattering_element_number |
DIMENSION: The id number for each scattering element. Single dimension. More... | |
gsl::span< const uint8_t > | particle_constituent_number |
DIMENSION: The id number of each particle's constituent. Single dimension. More... | |
gsl::span< const float > | particle_scattering_element_radius |
gsl::span< const std::string > | particle_constituent_name |
std::string | particle_constituent_single_name |
gsl::span< const float > | particle_scattering_element_composition_fractional |
gsl::span< const uint8_t > | particle_scattering_element_composition_whole |
float | particle_scattering_element_spacing = -1 |
OPTIONAL ATTRIBUTE: Physical spacing between adjacent grid points (in meters). Used in DDA. More... | |
float | hint_max_scattering_element_dimension = -1 |
EXPERIMENTAL HINT: Specify the maximum scattering element dimension. More... | |
Structure containing a list of all of the common optional data for creating a new shape in the database.
bool icedb::Shapes::NewShapeCommonOptionalProperties::isValid | ( | gsl::not_null< const NewShapeRequiredProperties *> | required, |
std::ostream * | errout = nullptr |
||
) | const |
Validate that all required properties are set, and that they have the correct dimensions. Writes diagnostic messages to the output stream.
Definition at line 56 of file Shapes.cpp.
Referenced by icedb::Shapes::Shape::createShape(), and main().
float icedb::Shapes::NewShapeCommonOptionalProperties::hint_max_scattering_element_dimension = -1 |
EXPERIMENTAL HINT: Specify the maximum scattering element dimension.
Definition at line 100 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), and icedb::Shapes::Shape::createShape().
gsl::span<const std::string> icedb::Shapes::NewShapeCommonOptionalProperties::particle_constituent_name |
VARIABLE: The name of each particle's constituent. Single dimension. Becomes REQUIRED if there is more than one constituent. If there is only one constituent, then this constituent can be written as an attribute, or it can be just assumed to be 'ice'. Dimensions of [particle_constituent_number]
Definition at line 77 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply().
gsl::span<const uint8_t> icedb::Shapes::NewShapeCommonOptionalProperties::particle_constituent_number |
DIMENSION: The id number of each particle's constituent. Single dimension.
Definition at line 64 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), and icedb::Shapes::Shape::createShape().
std::string icedb::Shapes::NewShapeCommonOptionalProperties::particle_constituent_single_name |
OPTIONAL ATTRIBUTE: The name of the single constituent of the particle Used only if there is a single constituent, and if this constituent is NOT ice.
Definition at line 81 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), and icedb::Shapes::Shape::createShape().
gsl::span<const float> icedb::Shapes::NewShapeCommonOptionalProperties::particle_scattering_element_composition_fractional |
OPTIONAL VARIABLE: Mass fractions of each constituent for each scattering element. Either this or particle_scattering_element_composition_whole is is required only if there is more than one constituent CANNOT COEXIST with particle_scattering_element_composition_whole. Dimensions of [particle_scattering_element_number][particle_constituent_number]
Definition at line 88 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), and icedb::Shapes::Shape::createShape().
gsl::span<const uint8_t> icedb::Shapes::NewShapeCommonOptionalProperties::particle_scattering_element_composition_whole |
OPTIONAL VARIABLE: The constituent of each scattering element This table is used when scattering elements can only be a single substance (not fractional). This CANNOT COEXIST with particle_scattering_element_composition_fractional. It exists to save space when non-compressed data is stored.
Definition at line 93 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), and icedb::Shapes::Shape::createShape().
gsl::span<const uint64_t> icedb::Shapes::NewShapeCommonOptionalProperties::particle_scattering_element_number |
DIMENSION: The id number for each scattering element. Single dimension.
Definition at line 62 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), and icedb::Shapes::Shape::createShape().
gsl::span<const float> icedb::Shapes::NewShapeCommonOptionalProperties::particle_scattering_element_radius |
OPTIONAL VARIABLE: Physical radius of the scattering sphere, in meters. Dimensions: [particle_scattering_element_number]
Definition at line 69 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), and icedb::Shapes::Shape::createShape().
float icedb::Shapes::NewShapeCommonOptionalProperties::particle_scattering_element_spacing = -1 |
OPTIONAL ATTRIBUTE: Physical spacing between adjacent grid points (in meters). Used in DDA.
Definition at line 96 of file shape.hpp.
Referenced by icedb::Examples::Shapes::ShapeCommonOptionalData::apply(), icedb::Shapes::Shape::createShape(), and main().