EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RawTowerZDCGeomContainer.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RawTowerZDCGeomContainer.h
1 #ifndef EICZDCBASE_RAWTOWERZDCGEOMCONTAINER_H
2 #define EICZDCBASE_RAWTOWERZDCGEOMCONTAINER_H
3 
4 #include "RawTowerZDCDefs.h"
5 
6 #include <phool/PHObject.h>
7 
8 #include <cmath>
9 #include <cstddef>
10 #include <iostream>
11 #include <map>
12 #include <type_traits>
13 #include <utility>
14 
15 
16 class RawTowerZDCGeom;
17 
22 {
23  public:
24  typedef std::map<RawTowerZDCDefs::keytype, RawTowerZDCGeom *> Map;
25  typedef Map::iterator Iterator;
26  typedef Map::const_iterator ConstIterator;
27  typedef std::pair<Iterator, Iterator> Range;
28  typedef std::pair<ConstIterator, ConstIterator> ConstRange;
29 
32  ~RawTowerZDCGeomContainer() override;
33 
34  void Reset() override;
35  int isValid() const override;
36  void identify(std::ostream &os = std::cout) const override;
37 
38 
41 
45 
47 
48  ConstRange get_tower_geometries(void) const;
50 
51  unsigned int size() const { return _geoms.size(); }
52 
53  protected:
56 
57  ClassDefOverride(RawTowerZDCGeomContainer, 1)
58 };
59 
60 #endif