Container with one element per geometry wire plane. More...
#include <GeometryDataContainers.h>
Public Member Functions | |
PlaneDataContainer ()=default | |
Default constructor: empty container. More... | |
PlaneDataContainer (unsigned int nCryo, unsigned int nTPCs, unsigned int nPlanes) | |
Prepares the container with default-constructed data. More... | |
PlaneDataContainer (unsigned int nCryo, unsigned int nTPCs, unsigned int nPlanes, T const &defValue) | |
Prepares the container with copies of the specified default value. More... | |
Container modification | |
void | resize (unsigned int nCryo, unsigned int nTPCs, unsigned int nPlanes) |
Prepares the container with default-constructed data. More... | |
void | resize (unsigned int nCryo, unsigned int nTPCs, unsigned int nPlanes, T const &defValue) |
Prepares the container initializing all its data. More... | |
Container status query | |
bool | hasCryostat (geo::CryostatID const &cryoid) const |
Returns whether this container hosts data for the specified cryostat. More... | |
bool | hasTPC (geo::TPCID const &tpcid) const |
Returns whether this container hosts data for the specified TPC. More... | |
bool | hasPlane (geo::PlaneID const &planeid) const |
Returns whether this container hosts data for the specified plane. More... | |
Public Member Functions inherited from geo::GeoIDdataContainer< T, geo::PlaneIDmapper<> > | |
GeoIDdataContainer ()=default | |
Default constructor: container has no room at all. More... | |
GeoIDdataContainer (std::initializer_list< unsigned int > dims) | |
Prepares the container with default-constructed data. More... | |
GeoIDdataContainer (std::initializer_list< unsigned int > dims, value_type const &defValue) | |
Prepares the container initializing all its data. More... | |
reference | operator[] (ID_t const &id) |
Returns the element for the specified geometry element. More... | |
const_reference | operator[] (ID_t const &id) const |
Returns the element for the specified geometry element (read-only). More... | |
reference | at (ID_t const &id) |
const_reference | at (ID_t const &id) const |
reference | first () |
Returns the element for the first ID (unchecked). More... | |
const_reference | first () const |
Returns the element for the first ID (unchecked). More... | |
reference | last () |
Returns the element for the last ID (unchecked). More... | |
const_reference | last () const |
Returns the element for the last ID (unchecked). More... | |
iterator | begin () |
Returns an iterator to the beginning of the data. More... | |
const_iterator | begin () const |
Returns a constant iterator to the beginning of the data. More... | |
iterator | end () |
Returns an iterator to past the end of the data. More... | |
const_iterator | end () const |
Returns a constant iterator to past the end of the data. More... | |
const_iterator | cbegin () const |
Returns a constant iterator to the beginning of the data. More... | |
const_iterator | cend () const |
Returns a constant iterator to past the end of the data. More... | |
item_iterator | item_begin () |
Returns an item iterator to the beginning of the data. More... | |
item_const_iterator | item_begin () const |
Returns a item constant iterator to the beginning of the data. More... | |
item_iterator | item_end () |
Returns an item iterator to past the end of the data. More... | |
item_const_iterator | item_end () const |
Returns a item constant iterator to past the end of the data. More... | |
item_const_iterator | item_cbegin () const |
Returns a item constant iterator to the beginning of the data. More... | |
item_const_iterator | item_cend () const |
Returns a item constant iterator to past the end of the data. More... | |
auto | items () |
Returns an object suitable for a range-for loop with item_iterator . More... | |
auto | items () const |
Returns an object suitable for a range-for loop with item_const_iterator . More... | |
void | fill (value_type value) |
Sets all elements to the specified value (copied). More... | |
void | reset () |
Sets all the elements to a default-constructed value_type . More... | |
Op | apply (Op &&op) |
Applies an operation on all elements. More... | |
decltype(auto) | apply (Op &&op) const |
Applies an operation on all elements. More... | |
void | resize (std::initializer_list< unsigned int > dims) |
Prepares the container with default-constructed data. More... | |
void | resize (std::initializer_list< unsigned int > dims, value_type const &defValue) |
Prepares the container initializing all its data. More... | |
void | resizeAs (geo::GeoIDdataContainer< OT, Mapper_t > const &other) |
Prepares the container with default-constructed data. More... | |
void | resizeAs (geo::GeoIDdataContainer< OT, Mapper_t > const &other, value_type const &defValue) |
Prepares the container initializing all its data. More... | |
void | clear () |
Makes the container empty, with no usable storage space. More... | |
size_type | size () const |
Returns the number of elements in the container. More... | |
size_type | capacity () const |
Returns the number of elements the container has memory for. More... | |
bool | empty () const |
Returns whether the container has no elements (false by assumptions). More... | |
unsigned int | dimSize () const |
Dimensions of the Level dimension of this container. More... | |
bool | hasElement (GeoID const &id) const |
Returns whether this container hosts data for the specified ID. More... | |
GeoID | firstID () const |
Returns the ID of the first element with GeoID type. More... | |
GeoID | lastID () const |
Returns the ID of the last covered element with GeoID type. More... | |
Mapper_t const & | mapper () const |
Returns the mapper object used to convert ID's and container positions. More... | |
Private Types | |
using | BaseContainer_t = geo::GeoIDdataContainer< T, geo::PlaneIDmapper<>> |
Base class. More... | |
Container with one element per geometry wire plane.
T | type of the contained datum |
geo::GeometryCore::makePlaneData
The container is of fixed size and can't be neither resized nor freed before destruction.
This example creates a "map" of hits on each wire plane:
The following assumptions should be considered unchecked, and the behavior when they are violated undefined (but note that in debug mode some of them might be actually checked):
Definition at line 42 of file GeometryDataContainers.h.
|
private |
Base class.
Definition at line 706 of file GeometryDataContainers.h.
|
default |
|
inline |
Prepares the container with default-constructed data.
nCryo | number of cryostats |
nTPCs | number of TPCs per cryostat |
nPlanes | number of planes per TPC |
The container is sized to host data for nCryo
cryostats, each with nTPCs
TPCs, each one with nPlanes
wire planes. Each element in the container is default-constructed.
Definition at line 731 of file GeometryDataContainers.h.
|
inline |
Prepares the container with copies of the specified default value.
nCryo | number of cryostats |
nTPCs | number of TPCs |
nPlanes | number of planes per TPC |
defValue | the value to be replicated |
The container is sized to host data for nCryo
cryostats, each with nTPCs
TPCs, and each of them with nPlanes
planes. Each element in the container is a copy of defValue
.
Definition at line 751 of file GeometryDataContainers.h.
|
inline |
Returns whether this container hosts data for the specified cryostat.
Definition at line 816 of file GeometryDataContainers.h.
|
inline |
Returns whether this container hosts data for the specified plane.
Definition at line 824 of file GeometryDataContainers.h.
|
inline |
Returns whether this container hosts data for the specified TPC.
Definition at line 820 of file GeometryDataContainers.h.
|
inline |
Prepares the container with default-constructed data.
nCryo | number of cryostats |
nTPCs | number of TPCs |
nPlanes | number of planes per TPC |
The container is sized to host data for nCryo
cryostats, each with nTPCs
TPCs, each one with nPlanes
wire planes. Each element in the container is default-constructed.
Existing data is not touched, but it may be rearranged in a non-straightforward way.
Definition at line 777 of file GeometryDataContainers.h.
|
inline |
Prepares the container initializing all its data.
nCryo | number of cryostats |
nTPCs | number of TPCs |
nPlanes | number of planes per TPC |
defValue | the value copied to fill all entries in the container |
The container is sized to host data for nCryo
cryostats, each with nTPCs
TPCs, and each of them with nPlanes
planes. Each element in the container is a copy of defValue
.
Existing data is not touched, but it may be rearranged in a non-straightforward way.
Definition at line 801 of file GeometryDataContainers.h.