All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GeometryData.h
Go to the documentation of this file.
1 /**
2  * @file larcorealg/Geometry/GeometryData.h
3  * @brief Simple data structure holding the data of the geometry.
4  * @author Gianluca Petrillo (petrillo@slac.stanford.edu)
5  * @see `larcorealg/Geometry/GeometryCore.h`
6  * @ingroup Geometry
7  *
8  * This is a header-only library.
9  */
10 
11 #ifndef LARCOREALG_GEOMETRY_GEOMETRYDATA_H
12 #define LARCOREALG_GEOMETRY_GEOMETRYDATA_H
13 
14 // LArSoft libraries
17 
18 // C/C++ standard libraries
19 #include <vector>
20 
21 
22 namespace geo {
23 
24  /*
25  * To decouple the channel mapping algorithm from `geo::GeometryCore`,
26  * this data structure, which is in fact the core data of `geo::GeometryCore`,
27  * is detached and included by both.
28  */
29 
30  /// Data in the geometry description.
31  struct GeometryData_t {
32 
33  /// Type of list of cryostats.
34  using CryostatList_t = std::vector<geo::CryostatGeo>;
35  /// Type of list of auxiliary detectors
36  using AuxDetList_t = std::vector<geo::AuxDetGeo>;
37 
38  CryostatList_t cryostats; ///< The detector cryostats.
39  AuxDetList_t auxDets; ///< The auxiliary detectors.
40 
41  }; // GeometryData_t
42 
43 } // namespace geo
44 
45 #endif // LARCOREALG_GEOMETRY_GEOMETRYDATA_H
Encapsulate the construction of a single cyostat.
AuxDetList_t auxDets
The auxiliary detectors.
Definition: GeometryData.h:39
std::vector< geo::CryostatGeo > CryostatList_t
Type of list of cryostats.
Definition: GeometryData.h:34
CryostatList_t cryostats
The detector cryostats.
Definition: GeometryData.h:38
Encapsulate the geometry of an auxiliary detector.
std::vector< geo::AuxDetGeo > AuxDetList_t
Type of list of auxiliary detectors.
Definition: GeometryData.h:36
Data in the geometry description.
Definition: GeometryData.h:31