eventAnalysis  7.0-49-g0ac7482
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
TLowLevelInfoModule.hxx
Go to the documentation of this file.
1 #ifndef TLowLevelInfoModule_hxx_seen
2 #define TLowLevelInfoModule_hxx_seen
3 
4 #include <string>
5 
6 #include <TClonesArray.h>
7 #include <TNamed.h>
8 #include <TRef.h>
9 #include <TTree.h>
10 
11 #include <TND280Event.hxx>
12 #include "TAnalysisModuleBase.hxx"
13 
14 namespace ND {
15 class TLowLevelInfoModule;
16 };
17 
18 /// An analysis module which carries some low level hit information.
19 /// The definitions of the TLowLevelTFBDigit and TLowLevelHit classes
20 /// are based on the branches in the TMakeTree executable in eventUnpack.
22  protected:
23  enum EDigitType {
29  };
31  EDigitType GetDigitType(const char *);
32  EHitType GetHitType(const char *);
33 
34  public:
35  TLowLevelInfoModule(const char *name = "LowLevelInfo",
36  const char *title = "Low Level Info Module");
37 
38  virtual ~TLowLevelInfoModule() {}
39 
40  virtual Bool_t IsEnabledByDefault() const { return kFALSE; }
41 
42  virtual Bool_t ProcessFirstEvent(ND::TND280Event &);
43 
44  EType GetTreeType() const { return kLowLevel; }
45 
46  ///////////////////////////////////////////////////////////////////////
47  /// TLowLevelTFBDigit
48  /// An object for storing low level TFB digit information (TTFBDigits)
49  class TLowLevelTFBDigit : public TObject {
50  public:
52  virtual ~TLowLevelTFBDigit() {}
53 
54  UInt_t Chan;
55  UInt_t Tfb;
56  UInt_t Rmm;
57  UInt_t Subdet;
58  Int_t Side;
59  UInt_t Err;
60  Long64_t Tdc;
61  Long64_t TdcTrig;
62  Long64_t TdcRead;
63 
64  Int_t Adc_lo;
65  Int_t Adc_hi;
66 
68  };
69 
70  ///////////////////////////////////////////////////////////////////////
71  /// TLowLevelHit
72  /// An object for storing low level hit information (THits).
73  ///
74  class TLowLevelHit : public TObject {
75  public:
77  virtual ~TLowLevelHit() {}
78 
79  Float_t Time;
80  Float_t Charge;
81  UInt_t GeomId;
82 
83  Float_t PosX;
84  Float_t PosY;
85  Float_t PosZ;
86 
87  Int_t XLayer;
88  Int_t YLayer;
89  Int_t Bar;
90  Int_t End;
91  Float_t TimeRead;
92  Int_t Event;
93 
95  };
96 
97  protected:
98  virtual void InitializeBranches();
99  virtual bool FillTree(ND::TND280Event &);
100 
101  public:
102  /// Tree Entries
103  Int_t fEventNumber; //!
104 
105  /// TClonesArray of TLowLevelTFBDigit objects
106  TClonesArray *fLowLevelTFBDigits;
108  /// TClonesArray of TLowLevelTFBDigit objects
109  TClonesArray *fLowLevelHits;
111 
112  private:
113  int BarFromName(std::string name);
114  int LayerXFromName(std::string name);
115  int LayerYFromName(std::string name);
116 
117 };
118 #endif
EDigitType GetDigitType(const char *)
int LayerXFromName(std::string name)
TClonesArray * fLowLevelHits
TClonesArray of TLowLevelTFBDigit objects.
EHitType GetHitType(const char *)
TClonesArray * fLowLevelTFBDigits
TClonesArray of TLowLevelTFBDigit objects.
A base class for classes which specify how to set up an Analysis format output tree, and fill it.
virtual void InitializeBranches()
Initialize Branches. Don&#39;t do anything else in this function.
ClassDef(TLowLevelInfoModule::TLowLevelTFBDigit, 1)
EType GetTreeType() const
Returns the type of tree, header, truth, or recon.
virtual bool FillTree(ND::TND280Event &)
Fill all the stuff that goes in the output tree.
ClassDef(TLowLevelInfoModule::TLowLevelHit, 1)
An analysis module which carries some low level hit information.
int LayerYFromName(std::string name)
int BarFromName(std::string name)
Int_t fEventNumber
Tree Entries.
virtual Bool_t ProcessFirstEvent(ND::TND280Event &)
Is called after the first event is loaded in.
TLowLevelInfoModule(const char *name="LowLevelInfo", const char *title="Low Level Info Module")
TLowLevelHit An object for storing low level hit information (THits).
virtual Bool_t IsEnabledByDefault() const
Is the module is enabled by default.
TLowLevelTFBDigit An object for storing low level TFB digit information (TTFBDigits) ...

Package Summary
Package Name: eventAnalysis
Package Version: 7.0-49-g0ac7482
Package Manager:

Generated on Mon Mar 25 2024 14:43:59 for eventAnalysis by doxygen 1.8.5