Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TowerInfoContainerv2.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file TowerInfoContainerv2.h
1 #ifndef TOWERINFOCONTAINERV2_H
2 #define TOWERINFOCONTAINERV2_H
3 
4 #include "TowerInfoContainer.h"
5 #include "TowerInfov2.h"
6 
7 #include <phool/PHObject.h>
8 
9 #include <TClonesArray.h>
10 // this is basically a copy of TowerInfoContainerv1.h, but with TowerInfov2...
12 {
13  public:
15 
16  // default constructor for ROOT IO
18  PHObject *CloneMe() const override { return new TowerInfoContainerv2(*this); }
20 
21  ~TowerInfoContainerv2() override;
22 
23  void identify(std::ostream &os = std::cout) const override;
24 
25  void Reset() override;
26  TowerInfov2 *get_tower_at_channel(int pos) override;
27  TowerInfov2 *get_tower_at_key(int pos) override;
28 
29  unsigned int encode_key(unsigned int towerIndex) override;
30  unsigned int decode_key(unsigned int tower_key) override;
31 
32  size_t size() const override { return _clones->GetEntries(); }
33  DETECTOR get_detectorid() const override {return _detector;}
34 
35  protected:
36  TClonesArray *_clones = nullptr;
38 
39  private:
41 };
42 
43 #endif