HYDRA_development_version
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
hstart2calpar.h
Go to the documentation of this file.
1 #ifndef HSTART2CALPAR_H
2 #define HSTART2CALPAR_H
3 
4 #include "TObjArray.h"
5 #include "TObject.h"
6 
7 #include "hparset.h"
8 
9 class HStart2CalparCell : public TObject {
10 protected:
11  Float_t tdcSlope; // TDC slope
12  Float_t tdcOffset; // TDC offset
13  Float_t adcSlope; // ADC slope
14  Float_t adcOffset; // ADC offset
15 public:
17  clear();
18  }
20  ;
21  }
22  void clear() {
23  tdcSlope = 1.F;
24  tdcOffset = 0.F;
25  adcSlope = 1.F;
26  adcOffset = 0.F;
27  }
28  Float_t getTdcSlope(void) {
29  return tdcSlope;
30  }
31  Float_t getTdcOffset(void) {
32  return tdcOffset;
33  }
34  Float_t getAdcSlope(void) {
35  return adcSlope;
36  }
37  Float_t getAdcOffset(void) {
38  return adcOffset;
39  }
40  void getData(Float_t* data) {
41  data[0] = tdcSlope;
42  data[1] = tdcOffset;
43  data[2] = adcSlope;
44  data[3] = adcOffset;
45  }
46  void setTdcSlope(Float_t s) {
47  tdcSlope = s;
48  }
49  void setTdcOffset(Float_t o) {
50  tdcOffset = o;
51  }
52  void setAdcSlope(Float_t s) {
53  adcSlope = s;
54  }
55  void setAdcOffset(Float_t o) {
56  adcOffset = o;
57  }
58  void fill(Float_t ts, Float_t to, Float_t as, Float_t ao) {
59  tdcSlope = ts;
60  tdcOffset = to;
61  adcSlope = as;
62  adcOffset = ao;
63  }
64  void fill(Float_t* data) {
65  tdcSlope = data[0];
66  tdcOffset = data[1];
67  adcSlope = data[2];
68  adcOffset = data[3];
69  }
71  tdcSlope = r.getTdcSlope();
72  tdcOffset = r.getTdcOffset();
73  adcSlope = r.getAdcSlope();
74  adcOffset = r.getAdcOffset();
75  }
76  ClassDef(HStart2CalparCell, 1) // Chan level of the START2 calibration parameters
77 };
78 
79 
80 class HStart2CalparMod: public TObject {
81 protected:
82  TObjArray* array; // pointer array containing HStart2CalparCell objects
83 public:
84  HStart2CalparMod(Int_t n = 128);
87  return *static_cast<HStart2CalparCell*>((*array)[i]);
88  }
89  Int_t getSize() {
90  return array->GetEntries();
91  }
92  ClassDef(HStart2CalparMod, 1) // Module level of Start2 Calibration parameters
93 };
94 
95 
96 class HStart2Calpar : public HParSet {
97 protected:
98  TObjArray* array; // array of pointers of type HStart2CalparMod
99 public:
100  HStart2Calpar(const Char_t* name = "Start2Calpar",
101  const Char_t* title = "Calibration parameters for Start2",
102  const Char_t* context = "Start2CalparProduction");
103  ~HStart2Calpar();
105  return *static_cast<HStart2CalparMod*>((*array)[i]);
106  }
107  Int_t getSize() {
108  return array->GetEntries();
109  }
110  Bool_t init(HParIo* input, Int_t* set);
111  Int_t write(HParIo* output);
112  void clear();
113  void printParam();
114  void readline(const Char_t*, Int_t*);
115  void putAsciiHeader(TString&);
116  Bool_t writeline(Char_t*, Int_t, Int_t);
117 
118  Bool_t isInTable(Int_t mod,Int_t strip, Bool_t silent=kFALSE);
119  ClassDef(HStart2Calpar, 1) // Container for the START2 calibration parameters
120 };
121 
122 #endif /*!HSTART2CALPAR_H*/
HStart2CalparMod(Int_t n=128)
HStart2CalparMod & operator[](Int_t i)
void setAdcOffset(Float_t o)
Definition: hstart2calpar.h:55
Bool_t writeline(Char_t *, Int_t, Int_t)
Bool_t isInTable(Int_t mod, Int_t strip, Bool_t silent=kFALSE)
HStart2CalparCell & operator[](Int_t i)
Definition: hstart2calpar.h:86
void fill(Float_t *data)
Definition: hstart2calpar.h:64
Int_t n
void readline(const Char_t *, Int_t *)
void setAdcSlope(Float_t s)
Definition: hstart2calpar.h:52
void getData(Float_t *data)
Definition: hstart2calpar.h:40
void setTdcOffset(Float_t o)
Definition: hstart2calpar.h:49
TObjArray * array
Definition: hstart2calpar.h:98
Definition: hpario.h:11
void fill(HStart2CalparCell &r)
Definition: hstart2calpar.h:70
virtual Int_t write()
Definition: hparset.cc:119
void putAsciiHeader(TString &)
TString input
Definition: GarReader.C:5
TObjArray * array
Definition: hstart2calpar.h:82
Definition: hparset.h:9
HStart2Calpar(const Char_t *name="Start2Calpar", const Char_t *title="Calibration parameters for Start2", const Char_t *context="Start2CalparProduction")
Float_t getAdcOffset(void)
Definition: hstart2calpar.h:37
return output
void fill(Float_t ts, Float_t to, Float_t as, Float_t ao)
Definition: hstart2calpar.h:58
Float_t getTdcSlope(void)
Definition: hstart2calpar.h:28
Float_t getTdcOffset(void)
Definition: hstart2calpar.h:31
Float_t getAdcSlope(void)
Definition: hstart2calpar.h:34
void setTdcSlope(Float_t s)
Definition: hstart2calpar.h:46
virtual Bool_t init(void)
Definition: hparset.h:21