Hall C ROOT/C++ Analyzer (hcana)
THcHelicityReader.h
Go to the documentation of this file.
1 #ifndef Podd_THcHelicityReader_h_
2 #define Podd_THcHelicityReader_h_
3 
5 //
6 // THcHelicityReader
7 //
8 // Routines for decoding QWEAK helicity hardware
9 //
11 
12 #include "Rtypes.h"
13 
14 class THaEvData;
15 class TDatime;
16 class TH1F;
17 
19 
20 public:
22  virtual ~THcHelicityReader();
23 
24  struct ROCinfo {
25  Int_t roc; // ROC to read out
26  Int_t slot; // Headers to search for (0 = ignore)
27  Int_t index; // Index into buffer
28  };
29 
30 protected:
31 
32  // Used by ReadDatabase
33  enum EROC { kHel = 0, kHelm, kMPS, kQrt, kTime, kCount };
34  Int_t SetROCinfo( EROC which, Int_t roc, Int_t slot, Int_t index );
35 
36  virtual void Clear( Option_t* opt="" );
37  virtual Int_t ReadData( const THaEvData& evdata );
38  Int_t ReadDatabase( const char* dbfilename, const char* prefix,
39  const TDatime& date, int debug_flag = 0 );
40  void Begin();
41  void End();
42 
46 
47  // Reported Helicity status for the event
52 
53  Int_t fADCThreshold; // Threshold for On/Off of helicity signals
54 
56 
57  Int_t fQWEAKDebug; // Debug level
58  Bool_t fHaveROCs; // Required ROCs are defined
59  Bool_t fNegGate; // Invert polarity of gate, TO DO implement this functionality
60  static const Int_t NHISTR = 12;
61  // TH1F* fHistoR[12]; // Histograms
62 
63 private:
64 
65  ClassDef(THcHelicityReader,0) // Helper class for reading QWEAK helicity data
66 
67 };
68 
69 #endif
70 
virtual void Clear(Option_t *opt="")
const char Option_t
Int_t ReadDatabase(const char *dbfilename, const char *prefix, const TDatime &date, int debug_flag=0)
static const Int_t NHISTR
int Int_t
bool Bool_t
virtual Int_t ReadData(const THaEvData &evdata)
#define ClassDef(name, id)
Int_t SetROCinfo(EROC which, Int_t roc, Int_t slot, Int_t index)
ROCinfo fROCinfo[kCount]
unsigned int UInt_t
unsigned long long ULong64_t
Extract helicity information from FADC250 modules.