File indexing completed on 2025-08-06 08:17:28
0001 #ifndef CALOBASE_RAWTOWERGEOMCONTAINERV1_H
0002 #define CALOBASE_RAWTOWERGEOMCONTAINERV1_H
0003
0004 #include "RawTowerGeomContainer.h"
0005
0006 #include "RawTowerDefs.h"
0007
0008 #include <iostream>
0009
0010 class RawTowerGeom;
0011
0012
0013
0014
0015 class RawTowerGeomContainerv1 : public RawTowerGeomContainer
0016 {
0017 public:
0018 RawTowerGeomContainerv1(RawTowerDefs::CalorimeterId caloid = RawTowerDefs::NONE);
0019 ~RawTowerGeomContainerv1() override;
0020
0021
0022 void Reset() override;
0023 int isValid() const override;
0024 void identify(std::ostream &os = std::cout) const override;
0025
0026 void set_calorimeter_id(RawTowerDefs::CalorimeterId caloid) override { _caloid = caloid; }
0027 RawTowerDefs::CalorimeterId get_calorimeter_id() const override { return _caloid; }
0028
0029 ConstIterator add_tower_geometry(RawTowerGeom *geo) override;
0030 RawTowerGeom *get_tower_geometry(RawTowerDefs::keytype key) override;
0031
0032
0033 ConstRange get_tower_geometries(void) const override;
0034 Range get_tower_geometries(void) override;
0035
0036 unsigned int size() const override { return _geoms.size(); }
0037
0038 protected:
0039 RawTowerDefs::CalorimeterId _caloid;
0040 Map _geoms;
0041
0042 ClassDefOverride(RawTowerGeomContainerv1, 1)
0043 };
0044
0045 #endif