Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Prototype2DSTReader.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file Prototype2DSTReader.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
11 #ifndef PROTOTYPE2_PROTOTYPE2DSTREADER_H
12 #define PROTOTYPE2_PROTOTYPE2DSTREADER_H
13 
14 #include "RawTower_Prototype2.h"
15 #include "RawTower_Temperature.h"
16 
17 #include <fun4all/SubsysReco.h>
18 
19 #include <memory>
20 #include <string>
21 #include <vector>
22 
23 class PHCompositeNode;
24 class TClonesArray;
25 class TTree;
26 
32 {
33  public:
35  virtual ~Prototype2DSTReader();
36 
38  int Init(PHCompositeNode *);
39 
42 
44  int End(PHCompositeNode *);
45 
46  void AddTower(const std::string &name) { _tower_postfix.push_back(name); }
47 
49  {
50  _towertemp_postfix.push_back(name);
51  }
52 
53  void AddRunInfo(const std::string &name) { _runinfo_list.push_back(name); }
54 
56  double get_tower_zero_sup() { return _tower_zero_sup; }
57 
59  void set_tower_zero_sup(double b) { _tower_zero_sup = b; }
60 
61  protected:
62  std::vector<std::string> _tower_postfix;
64  std::vector<std::string> _towertemp_postfix;
65  std::vector<std::string> _runinfo_list;
66 
67  int nblocks;
68 
69  typedef std::shared_ptr<TClonesArray> arr_ptr;
70 
71  struct record
72  {
73  unsigned int _cnt;
76  TClonesArray *_arr_ptr;
77  double _dvalue;
78 
79  enum enu_type
80  {
88  };
90  };
91  typedef std::vector<record> records_t;
93 
95 
97 
98  int _event;
99 
101 
102  // TFile * _file;
103  TTree *_T;
104 
107 
108  void build_tree();
109 };
110 
111 #endif