Hall C ROOT/C++ Analyzer (hcana)
THcHitList.h
Go to the documentation of this file.
1 #ifndef ROOT_THcHitList
2 #define ROOT_THcHitList
3 
4 #include "THcRawHit.h"
5 #include "THaDetMap.h"
6 #include "THaEvData.h"
7 #include "TClonesArray.h"
8 #include "TObject.h"
9 #include "Decoder.h"
10 #include "THaCrateMap.h"
11 #include "Fadc250Module.h"
12 
13 #include <iomanip>
14 #include <map>
15 
16 using namespace std;
17 
19 //
20 // THcHitList
21 //
23 
24 //class THaDetMap;
26 
27 class THcHitList {
28 
29 public:
30 
31  virtual ~THcHitList();
32 
33  THcHitList();
34 
35  virtual Int_t DecodeToHitList( const THaEvData& evdata, Bool_t suppress=kFALSE );
36  void InitHitList(THaDetMap* detmap,
37  const char *hitclass, Int_t maxhits,
38  Int_t tdcref_cut=0, Int_t adcref_cut=0);
39 
40  TClonesArray* GetHitList() const {return fRawHitList; }
41  void CreateMissReportParms(const char *prefix);
42  void MissReport(const char *name);
43  void DisableSlipCorrection() {fDisableSlipCorrection = kTRUE;}
44 
51  TClonesArray* fRawHitList; // List of raw hits
52  TClass* fRawHitClass; // Class of raw hit object to use
53 
54  THaDetMap* fdMap;
55 
56 protected:
57 
58  struct RefIndexMap { // Mapping for one reference channel
66  };
67  std::vector<RefIndexMap> fRefIndexMaps;
68  // Should this be a sparse list instead in case user
69  // picks ridiculously large refindexes?
70 
74 
80 
83 
84  Decoder::THaCrateMap* fMap; /* The Crate map */
88  std::map<Int_t, Int_t> fTrigTimeShiftMap;
89  std::map<Int_t, Decoder::Fadc250Module*> fFADCSlotMap;
90 
91  ClassDef(THcHitList,0); // List of raw hits sorted by plane, counter
92 };
93 #endif
Bool_t fTDC_RefTimeBest
Definition: THcHitList.h:49
Bool_t fHaveFADCInfo
Definition: THcHitList.h:76
Int_t fNSB
Definition: THcHitList.h:78
Builds a Hall C ENGINE style list of raw hits from raw data.
Definition: THcHitList.h:27
UInt_t fNSignals
Definition: THcHitList.h:72
int Int_t
bool Bool_t
STL namespace.
Int_t fNADCRef_miss
Definition: THcHitList.h:82
TClonesArray * fRawHitList
Definition: THcHitList.h:51
Int_t fTDC_RefTimeCut
Definition: THcHitList.h:47
Int_t fNPED
Definition: THcHitList.h:79
#define ClassDef(name, id)
std::vector< RefIndexMap > fRefIndexMaps
Definition: THcHitList.h:67
TClonesArray * GetHitList() const
Definition: THcHitList.h:40
Int_t fTICrate
Definition: THcHitList.h:86
THcConfigEvtHandler * fPSE125
Definition: THcHitList.h:75
Int_t fNTDCRef_miss
Definition: THcHitList.h:81
Int_t fTISlot
Definition: THcHitList.h:85
TClass * fRawHitClass
Definition: THcHitList.h:52
Int_t fNSA
Definition: THcHitList.h:77
unsigned int UInt_t
Analyze Hall C Configuration events. (Event type 125).
const Bool_t kFALSE
void DisableSlipCorrection()
Definition: THcHitList.h:43
double Double_t
Bool_t fADC_RefTimeBest
Definition: THcHitList.h:50
std::map< Int_t, Int_t > fTrigTimeShiftMap
Definition: THcHitList.h:88
Decoder::THaCrateMap * fMap
Definition: THcHitList.h:84
UInt_t fNRawHits
Definition: THcHitList.h:45
THcRawHit::ESignalType * fSignalTypes
Definition: THcHitList.h:73
THaDetMap * fdMap
Definition: THcHitList.h:54
Int_t fNRefIndex
Definition: THcHitList.h:71
const Bool_t kTRUE
Int_t fADC_RefTimeCut
Definition: THcHitList.h:48
Double_t fDisableSlipCorrection
Definition: THcHitList.h:87
std::map< Int_t, Decoder::Fadc250Module * > fFADCSlotMap
Definition: THcHitList.h:89
Int_t fNMaxRawHits
Definition: THcHitList.h:46