Celeritas
0.5.0-56+6b053cd
|
Persistent data used by ORANGE implementation. More...
#include <OrangeData.hh>
Public Types | |
template<class T > | |
using | Items = Collection< T, W, M > |
template<class T > | |
using | UnivItems = Collection< T, W, M, UniverseId > |
using | RealId = OpaqueId< real_type > |
Public Member Functions | |
CELER_FUNCTION | operator bool () const |
True if assigned. | |
template<Ownership W2, MemSpace M2> | |
OrangeParamsData & | operator= (OrangeParamsData< W2, M2 > const &other) |
Assign from another set of data. | |
Public Attributes | |
OrangeParamsScalars | scalars |
UnivItems< UniverseType > | universe_types |
UnivItems< size_type > | universe_indices |
Items< SimpleUnitRecord > | simple_units |
Items< RectArrayRecord > | rect_arrays |
Items< TransformRecord > | transforms |
BIHTreeData< W, M > | bih_tree_data |
Items< LocalSurfaceId > | local_surface_ids |
Items< LocalVolumeId > | local_volume_ids |
Items< RealId > | real_ids |
Items< logic_int > | logic_ints |
Items< real_type > | reals |
Items< FastReal3 > | fast_real3s |
Items< SurfaceType > | surface_types |
Items< ConnectivityRecord > | connectivity_records |
Items< VolumeRecord > | volume_records |
Items< Daughter > | daughters |
Items< OrientedBoundingZoneRecord > | obz_records |
UniverseIndexerData< W, M > | universe_indexer_data |
Persistent data used by ORANGE implementation.
Most data will be accessed through the invidual units, which reference data in the "storage" below. The type and index for a universe ID will determine the class type and data of the Tracker to instantiate. If only simple units are present, then the simple_units
data structure will just be equal to a range (with the total number of universes present). Use universe_types
to switch on the type of universe; then universe_indices
to index into simple_units
or rect_arrays
or ...