Hall C ROOT/C++ Analyzer (hcana)
THcConfigEvtHandler.h
Go to the documentation of this file.
1 #ifndef THcConfigEvtHandler_
2 #define THcConfigEvtHandler_
3 
5 //
6 // THcConfigEvtHandler
7 // For more details see the implementation file.
8 // This handles hall C's event type 125.
9 // author Robert Michaels (rom@jlab.org)
10 //
12 
13 #include "THaEvtTypeHandler.h"
14 #include <string>
15 #include <vector>
16 #include <map>
17 
18 class THcConfigEvtHandler : public THaEvtTypeHandler {
19 
20 public:
21 
22  THcConfigEvtHandler(const char* name, const char* description);
23  virtual ~THcConfigEvtHandler();
24 
25  virtual Int_t Analyze(THaEvData *evdata);
26  virtual void AddEventType(Int_t evtype);
27  virtual void PrintConfig();
28  virtual Int_t IsPresent(Int_t crate);
29  virtual Int_t GetNSA(Int_t crate);
30  virtual Int_t GetNSB(Int_t crate);
31  virtual Int_t GetNPED(Int_t crate);
32  virtual EStatus Init( const TDatime& run_time);
33  // Float_t GetData(const std::string& tag);
34  virtual void MakeParms(Int_t roc);
35 
36 private:
37 
38  typedef struct {
39  struct FADC250 {
54  std::map<Int_t, Int_t *> thresholds;
55  } FADC250;
56  struct CAEN1190 {
61  } CAEN1190;
62  struct TI {
68  Int_t prescales[6];
69  } TI;
70  //CrateInfo : FADC250.nmodules(0),CAEN1190.present(0) {}
71  } CrateInfo_t;
72 
73  std::map<Int_t, CrateInfo_t *> CrateInfoMap;
74 
75  void DeleteCrateInfoMap();
76 
79 
80  ClassDef(THcConfigEvtHandler,0) // Hall C event type 125
81 
82 };
83 
84 #endif
virtual void AddEventType(Int_t evtype)
virtual Int_t GetNSA(Int_t crate)
THcConfigEvtHandler & operator=(const THcConfigEvtHandler &fh)
virtual EStatus Init(const TDatime &run_time)
virtual Int_t IsPresent(Int_t crate)
int Int_t
virtual void MakeParms(Int_t roc)
#define ClassDef(name, id)
THcConfigEvtHandler(const char *name, const char *description)
std::map< Int_t, CrateInfo_t * > CrateInfoMap
Analyze Hall C Configuration events. (Event type 125).
virtual Int_t GetNSB(Int_t crate)
virtual Int_t GetNPED(Int_t crate)
virtual Int_t Analyze(THaEvData *evdata)
char name[80]