StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
daq_stgc.h
1 #ifndef _DAQ_STGC_H_
2 #define _DAQ_STGC_H_
3 
4 
5 #include <DAQ_READER/daq_det.h>
6 
7 struct stgc_vmm_t {
8  u_char feb_vmm ;
9  u_char ch ;
10  u_short adc ;
11  u_short bcid ;
12  short bcid_delta ;
13  short tb ; // from the trigger
14 } ;
15 
16 class daqReader;
17 
18 class daq_stgc : public daq_det {
19 private:
20  class daq_dta *handle_raw(int sec, int rdo) ;
21  class daq_dta *handle_vmmraw(int sec) ;
22  class daq_dta *handle_altro(int sec, int rdo) ;
23  class daq_dta *handle_ped(int sec) ;
24  class daq_dta *handle_vmm(int sec) ;
25 
26  // direct maps to file content:
27  class daq_dta *raw ;
28  class daq_dta *altro ;
29  class daq_dta *vmm ;
30  class daq_dta *vmmraw ;
31 
32  static const int MAX_SEC = 7 ;
33  static const int MAX_RDO = 6 ;
34 
35  static const char *help_string ;
36 
37 protected:
38 
39 public:
40  daq_stgc(daqReader *rts_caller=0) ;
41  ~daq_stgc() ;
42 
43 
44  class daq_dta *get(const char *bank="*", int c1=-1, int c2=-1, int c3=-1, void *p1=0, void *p2=0) ;
45 
46  // these functions perform on the raw DDL buffer data i.e. per RDO
47  int get_token(char *buff, int buff_bytes) ;
48  int get_l2(char *buff, int buff_bytes, struct daq_trg_word *trg, int prompt=0) ;
49 
50  // trivial stuff below...
51  virtual const char *GetCVS() const { // Offline
52  static const char cvs[]="Tag $Name: $Id: built " __DATE__ " " __TIME__ ; return cvs;
53  }
54 
55  void help() const ;
56 
57  int xing_min ;
58  int xing_max ;
59 
60  class stgc_data_c *stgc_d ;
61 
62 private:
63  int get_l2_vmm(char *buff, int buff_bytes, struct daq_trg_word *trg, int prompt=0) ;
64 } ;
65 
66 
67 #endif // _DAQ_STGC_H_