AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::klee::internal Namespace Reference

Classes

struct  SingleOperatorData
 
class  GeometryOperatorData
 
struct  NamedOperatorData
 
struct  NamedOperatorMapData
 

Typedefs

using NamedOperatorMap = std::unordered_map< std::string, std::shared_ptr< const GeometryOperator > >
 

Functions

std::vector< double > toDoubleVector (inlet::Proxy const &field, Dimensions expectedDims, char const *fieldName)
 
primal::Point3D toPoint (inlet::Container const &parent, char const *fieldName, Dimensions expectedDims)
 
primal::Point3D toPoint (inlet::Container const &parent, char const *fieldName, Dimensions expectedDims, const primal::Point3D &defaultValue)
 
primal::Vector3D toVector (inlet::Container const &parent, char const *fieldName, Dimensions expectedDims)
 
primal::Vector3D toVector (inlet::Container const &parent, char const *fieldName, Dimensions expectedDims, const primal::Vector3D &defaultValue)
 
std::tuple< LengthUnit, LengthUnitgetOptionalStartAndEndUnits (const inlet::Container &container)
 
std::tuple< LengthUnit, LengthUnitgetStartAndEndUnits (const inlet::Container &container)
 
void defineUnitsSchema (inlet::Container &container, const char *unitsDescription="", const char *startUnitsDescription="", const char *endUnitsDescription="")
 
inlet::VerifiableScalardefineDimensionsField (inlet::Container &parent, const char *name, const char *description="")
 
Dimensions toDimensions (const inlet::Proxy &dimProxy)
 

Typedef Documentation

◆ NamedOperatorMap

using axom::klee::internal::NamedOperatorMap = typedef std::unordered_map<std::string, std::shared_ptr<const GeometryOperator> >

Function Documentation

◆ toDoubleVector()

std::vector<double> axom::klee::internal::toDoubleVector ( inlet::Proxy const &  field,
Dimensions  expectedDims,
char const *  fieldName 
)

Convert the given field to a std::vector<double>, ensuring that it has the expected number of entries.

Parameters
fieldthe field to convert
expectedDimsthe expected dimensionality of the array
fieldNamethe name of the field (used for error reporting)
Returns
the field as a std::vector<double>

◆ toPoint() [1/2]

primal::Point3D axom::klee::internal::toPoint ( inlet::Container const &  parent,
char const *  fieldName,
Dimensions  expectedDims 
)

Convert the specified field to a Point3D, ensuring that it has the expected number of entries.

Parameters
parentthe parent of the field
fieldNamethe name of the field
expectedDimsthe expected dimensionality of the point
Returns
the field as a primal::Point3D

◆ toPoint() [2/2]

primal::Point3D axom::klee::internal::toPoint ( inlet::Container const &  parent,
char const *  fieldName,
Dimensions  expectedDims,
const primal::Point3D defaultValue 
)

Convert the specified field to a Point3D, ensuring that it has the expected number of entries. If the field is not present, the default value is used.

Parameters
parentthe parent of the field
fieldNamethe name of the field
expectedDimsthe expected dimensionality of the point
defaultValuethe default value of the field if it is not present
Returns
the field as a primal::Point3D

◆ toVector() [1/2]

primal::Vector3D axom::klee::internal::toVector ( inlet::Container const &  parent,
char const *  fieldName,
Dimensions  expectedDims 
)

Convert the specified field to a Vector3D, ensuring that it has the expected number of entries.

Parameters
parentthe parent of the field
fieldNamethe name of the field
expectedDimsthe expected dimensionality of the vector
Returns
the field as a primal::Vector3D

◆ toVector() [2/2]

primal::Vector3D axom::klee::internal::toVector ( inlet::Container const &  parent,
char const *  fieldName,
Dimensions  expectedDims,
const primal::Vector3D defaultValue 
)

Convert the specified field to a Vector3D, ensuring that it has the expected number of entries. If the field is not present, the default value is used.

Parameters
parentthe parent of the field
fieldNamethe name of the field
expectedDimsthe expected dimensionality of the vector
defaultValuethe default value of the field if it is not present
Returns
the field as a primal::Vector3D

◆ getOptionalStartAndEndUnits()

std::tuple<LengthUnit, LengthUnit> axom::klee::internal::getOptionalStartAndEndUnits ( const inlet::Container container)

Get the start and end units in a Container.

The Container may either have a "units" field, or a "start_units" and "end_units". In the first case, "units" will be used for both the start and end. In the second, both must be present. In the case where no units are present at all, both returned units will be LengthUnit::unspecified.

Parameters
containerthe Container from which to get the units
Returns
the start and end units
Exceptions
KleeErrorif an invalid combination of fields is specified

◆ getStartAndEndUnits()

std::tuple<LengthUnit, LengthUnit> axom::klee::internal::getStartAndEndUnits ( const inlet::Container container)

Get the start and end units in a Container.

The Container may either have a "units" field, or a "start_units" and "end_units". In the first case, "units" will be used for both the start and end. In the second, both must be present.

Parameters
containerthe Container from which to get the units
Returns
the start and end units
Exceptions
KleeErrorif an invalid combination of fields is specified or if no units are specified.

◆ defineUnitsSchema()

void axom::klee::internal::defineUnitsSchema ( inlet::Container container,
const char *  unitsDescription = "",
const char *  startUnitsDescription = "",
const char *  endUnitsDescription = "" 
)

Define the schema for units. This is the schema that will be expected by getOptionalStartAndEndUnits() and getStartAndEndUnits().

Parameters
containerthe container to which to add the expected fields
unitsDescriptionthe description of the "units" field
startUnitsDescriptionthe description of the "start_units" field
endUnitsDescriptionthe description of the "end_units" field

◆ defineDimensionsField()

inlet::VerifiableScalar& axom::klee::internal::defineDimensionsField ( inlet::Container parent,
const char *  name,
const char *  description = "" 
)

Define a field which can hold a number of dimensions

Parameters
parentthe parent Container on which to define the field
namethe name of the field
descriptionand optional description of the field
Returns
the field, which can have additional restrictions set on it

◆ toDimensions()

Dimensions axom::klee::internal::toDimensions ( const inlet::Proxy dimProxy)

Convert the given proxy to a Dimensions object. The field should have been created by defineDimensionsField()

Parameters
dimProxythe proxy to the dimensions field
Returns
the value of the dimensions