Hall C ROOT/C++ Analyzer (hcana)
Loading...
Searching...
No Matches
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
16using namespace std;
17
19//
20// THcHitList
21//
23
24//class THaDetMap;
26
28
29public:
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
41 void CreateMissReportParms(const char *prefix) const;
42 void MissReport(const char *name) const;
44
51 TClonesArray* fRawHitList; // List of raw hits
52 TClass* fRawHitClass; // Class of raw hit object to use
53
55
56protected:
57
58 struct RefIndexMap { // Mapping for one reference channel
59 RefIndexMap() = default;
61 Bool_t hashit{false};
67 };
68 std::vector<RefIndexMap> fRefIndexMaps;
69 std::vector<UInt_t> fRefIdxDefined;
70
74
80
83
84 Decoder::THaCrateMap* fMap; /* The Crate map */
88 std::map<UInt_t, Int_t> fTrigTimeShiftMap;
89 std::map<UInt_t, Decoder::Fadc250Module*> fFADCSlotMap;
90
91 ClassDef(THcHitList,0); // List of raw hits sorted by plane, counter
92};
93#endif
int Int_t
unsigned int UInt_t
bool Bool_t
const Bool_t kFALSE
const Bool_t kTRUE
Analyze Hall C Configuration events. (Event type 125).
Builds a Hall C ENGx1INE style list of raw hits from raw data.
Definition THcHitList.h:27
virtual Int_t DecodeToHitList(const THaEvData &evdata, Bool_t suppress=kFALSE)
Populate the hitlist from the raw event data.
TClonesArray * fRawHitList
Definition THcHitList.h:51
Int_t fNSB
Definition THcHitList.h:78
virtual ~THcHitList()
UInt_t fNSignals
Definition THcHitList.h:72
Int_t fTICrate
Definition THcHitList.h:86
Int_t fTISlot
Definition THcHitList.h:85
void CreateMissReportParms(const char *prefix) const
THaDetMap * fdMap
Definition THcHitList.h:54
Bool_t fDisableSlipCorrection
Definition THcHitList.h:87
std::vector< RefIndexMap > fRefIndexMaps
Definition THcHitList.h:68
std::vector< UInt_t > fRefIdxDefined
Definition THcHitList.h:69
TClonesArray * GetHitList() const
Definition THcHitList.h:40
Int_t fTDC_RefTimeCut
Definition THcHitList.h:47
Int_t fNSA
Definition THcHitList.h:77
Bool_t fADC_RefTimeBest
Definition THcHitList.h:50
Int_t fNPED
Definition THcHitList.h:79
std::map< UInt_t, Int_t > fTrigTimeShiftMap
Definition THcHitList.h:88
std::map< UInt_t, Decoder::Fadc250Module * > fFADCSlotMap
Definition THcHitList.h:89
Int_t fNADCRef_miss
Definition THcHitList.h:82
void InitHitList(THaDetMap *detmap, const char *hitclass, Int_t maxhits, Int_t tdcref_cut=0, Int_t adcref_cut=0)
Save the electronics module to detector mapping and initialize a hit array of hits of class hitclass.
THcConfigEvtHandler * fPSE125
Definition THcHitList.h:75
UInt_t fNRawHits
Definition THcHitList.h:45
Bool_t fTDC_RefTimeBest
Definition THcHitList.h:49
void DisableSlipCorrection()
Definition THcHitList.h:43
Int_t fNTDCRef_miss
Definition THcHitList.h:81
Decoder::THaCrateMap * fMap
Definition THcHitList.h:84
Bool_t fHaveFADCInfo
Definition THcHitList.h:76
Int_t fNRefIndex
Definition THcHitList.h:71
TClass * fRawHitClass
Definition THcHitList.h:52
Int_t fNMaxRawHits
Definition THcHitList.h:46
void MissReport(const char *name) const
Int_t fADC_RefTimeCut
Definition THcHitList.h:48
ClassDef(THcHitList, 0)
THcRawHit::ESignalType * fSignalTypes
Definition THcHitList.h:73
STL namespace.