Hall C ROOT/C++ Analyzer (hcana)
Loading...
Searching...
No Matches
THcTrigDet.h
Go to the documentation of this file.
1#ifndef ROOT_THcTrigDet
2#define ROOT_THcTrigDet
3
4#include <string>
5#include <vector>
6
7#include "THaDetector.h"
8#include "THcHitList.h"
9
10class TDatime;
11
12class THaApparatus;
13class THaEvData;
14
15
16class THcTrigDet : public THaDetector, public THcHitList {
17 public:
19 const char* name, const char* description="",
20 THaApparatus* app=NULL
21 );
23
24 virtual EStatus Init(const TDatime& date);
25
26 virtual void Clear(Option_t* opt="");
27 Int_t Decode(const THaEvData& evData);
28
29 virtual void SetSpectName( const char* name);
30 virtual void AddEvtType(int evtype);
31 virtual void SetEvtType(int evtype);
32 virtual Bool_t IsIgnoreType(Int_t evtype) const;
33 virtual Bool_t HaveIgnoreList() const;
34 Int_t End(THaRunBase* run);
35 //Funtions to get TDCtime for cointime module
36 Double_t Get_CT_Trigtime(Int_t ii) { return (fTrigId[ii]==-1 ? 0. : fTdcTime[fTrigId[ii]]) ;}
37
38 // SJDK 12/04/21 - New Getter for RF time info
39 // Function to get RFTDC time for RF module
40 Double_t Get_RF_TrigTime(Int_t ii) { return (fRFId[ii]==-1 ? 0. : fTdcTime[fRFId[ii]]) ;}
41
42 protected:
43 void Setup(const char* name, const char* description);
44 virtual Int_t ReadDatabase(const TDatime& date);
45 virtual Int_t DefineVariables(EMode mode=kDefine);
46
47 std::string fKwPrefix;
48
52 Int_t fRFId[2]; // SJDK 12/04/21 - New RF ID for getter above
53
57
64
65 std::vector<std::string> fAdcNames;
66 std::vector<std::string> fTdcNames;
67 std::vector<std::string> fTrigNames;
68 std::vector<std::string> fRFNames;
69
70 static const int fMaxAdcChannels = 200;
71 static const int fMaxTdcChannels = 200;
72
76 vector<Double_t> fVecTdcTime[fMaxTdcChannels];
77
80
85
90
95
100
105
106 std::vector<Double_t> fSampWaveform;
107
112
114 std::vector<Int_t> eventtypes;
116
117 private:
118 THcTrigDet();
120};
121
122
123#endif // ROOT_THcTrigDet
int Int_t
bool Bool_t
double Double_t
const char Option_t
Builds a Hall C ENGx1INE style list of raw hits from raw data.
Definition THcHitList.h:27
A mock detector to hold trigger related data.
Definition THcTrigDet.h:16
Bool_t * fPresentP
Definition THcTrigDet.h:115
ClassDef(THcTrigDet, 0)
Double_t fAdcTdcOffset
Definition THcTrigDet.h:54
Int_t fTdcTimeRaw[fMaxTdcChannels]
Definition THcTrigDet.h:73
Int_t fRFId[2]
Definition THcTrigDet.h:52
vector< Int_t > fVecTdcTimeRaw[fMaxTdcChannels]
Definition THcTrigDet.h:75
Int_t fAdcSampMultiplicity[fMaxAdcChannels]
Definition THcTrigDet.h:110
Int_t fAdcMultiplicity[fMaxAdcChannels]
Definition THcTrigDet.h:109
Int_t fAdcSampPulseIntRaw[fMaxAdcChannels]
Definition THcTrigDet.h:97
Double_t fAdcSampPed[fMaxAdcChannels]
Definition THcTrigDet.h:101
Int_t fNumAdc
Definition THcTrigDet.h:49
Double_t fAdcSampPulseTime[fMaxAdcChannels]
Definition THcTrigDet.h:104
Int_t fUseSampWaveform
Definition THcTrigDet.h:59
Double_t fAdcPulseInt[fMaxAdcChannels]
Definition THcTrigDet.h:92
Double_t fAdcPulseTime[fMaxAdcChannels]
Definition THcTrigDet.h:94
Int_t fAdcPedRaw[fMaxAdcChannels]
Definition THcTrigDet.h:86
Double_t fTdcOffset
Definition THcTrigDet.h:55
Double_t * fAdcTimeWindowMin
Definition THcTrigDet.h:81
static const int fMaxTdcChannels
Definition THcTrigDet.h:71
Int_t fTdcMultiplicity[fMaxTdcChannels]
Definition THcTrigDet.h:108
Int_t fTrigId[4]
Definition THcTrigDet.h:51
virtual void SetSpectName(const char *name)
Double_t Get_CT_Trigtime(Int_t ii)
Definition THcTrigDet.h:36
std::vector< std::string > fTrigNames
Definition THcTrigDet.h:67
std::vector< Int_t > eventtypes
Definition THcTrigDet.h:114
Int_t Decode(const THaEvData &evData)
Decodes and processes events.
Double_t Get_RF_TrigTime(Int_t ii)
Definition THcTrigDet.h:40
virtual void Clear(Option_t *opt="")
Clears variables before next event.
Int_t fSampNSA
Definition THcTrigDet.h:61
std::vector< std::string > fRFNames
Definition THcTrigDet.h:68
TString fSpectName
Definition THcTrigDet.h:113
Int_t fSampNSAT
Definition THcTrigDet.h:62
Double_t * fTdcTimeWindowMin
Definition THcTrigDet.h:83
Int_t fNumTdc
Definition THcTrigDet.h:50
Int_t fAdcPulseIntRaw[fMaxAdcChannels]
Definition THcTrigDet.h:87
std::string fKwPrefix
Definition THcTrigDet.h:47
Double_t fTdcTime[fMaxTdcChannels]
Definition THcTrigDet.h:74
Int_t fAdcSampPulseAmpRaw[fMaxAdcChannels]
Definition THcTrigDet.h:98
Int_t fAdcSampPulseTimeRaw[fMaxAdcChannels]
Definition THcTrigDet.h:99
virtual Int_t ReadDatabase(const TDatime &date)
static const int fMaxAdcChannels
Definition THcTrigDet.h:70
Double_t fAdcPed[fMaxAdcChannels]
Definition THcTrigDet.h:91
Double_t fAdcSampPulseAmp[fMaxAdcChannels]
Definition THcTrigDet.h:103
virtual Bool_t IsIgnoreType(Int_t evtype) const
Int_t fSampNSB
Definition THcTrigDet.h:63
virtual void SetEvtType(int evtype)
std::vector< std::string > fAdcNames
Definition THcTrigDet.h:65
virtual Int_t DefineVariables(EMode mode=kDefine)
Int_t fTDC_RefTimeCut
Definition THcTrigDet.h:78
virtual void AddEvtType(int evtype)
Double_t fSampThreshold
Definition THcTrigDet.h:60
Double_t fTdcChanperNS
Definition THcTrigDet.h:56
std::vector< std::string > fTdcNames
Definition THcTrigDet.h:66
Int_t End(THaRunBase *run)
vector< Double_t > fVecTdcTime[fMaxTdcChannels]
Definition THcTrigDet.h:76
Int_t fAdcSampPedRaw[fMaxAdcChannels]
Definition THcTrigDet.h:96
Int_t fOutputSampWaveform
Definition THcTrigDet.h:58
Double_t fAdcSampPulseInt[fMaxAdcChannels]
Definition THcTrigDet.h:102
~THcTrigDet()
A destructor.
Double_t fAdcPulseAmp[fMaxAdcChannels]
Definition THcTrigDet.h:93
Double_t * fTdcTimeWindowMax
Definition THcTrigDet.h:84
std::vector< Double_t > fSampWaveform
Definition THcTrigDet.h:106
Int_t fAdcPulseAmpRaw[fMaxAdcChannels]
Definition THcTrigDet.h:88
virtual Bool_t HaveIgnoreList() const
Double_t fTdcRefTime
Definition THcTrigDet.h:111
Int_t fADC_RefTimeCut
Definition THcTrigDet.h:79
Int_t fAdcPulseTimeRaw[fMaxAdcChannels]
Definition THcTrigDet.h:89
Double_t * fAdcTimeWindowMax
Definition THcTrigDet.h:82