HYDRA_development_version
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
hpiontrackercalpar.h
Go to the documentation of this file.
1 #ifndef HPIONTRACKERCALPAR_H
2 #define HPIONTRACKERCALPAR_H
3 
4 #include "TObject.h"
5 #include "TObjArray.h"
6 #include "hparset.h"
7 
8 class HPionTrackerCalParCell : public TObject {
9 protected:
10  Float_t tdcSlope; // TDC slope
11  Float_t tdcOffset; // TDC offset
12  Float_t adcSlope; // ADC slope
13  Float_t adcOffset; // ADC offset
14 public:
17  void clear();
18  Float_t getTdcSlope(void) {return tdcSlope;}
19  Float_t getTdcOffset(void) {return tdcOffset;}
20  Float_t getAdcSlope(void) {return adcSlope;}
21  Float_t getAdcOffset(void) {return adcOffset;}
22  void getData(Float_t* data) {
23  data[0] = tdcSlope;
24  data[1] = tdcOffset;
25  data[2] = adcSlope;
26  data[3] = adcOffset;
27  }
28  void setTdcSlope(Float_t s) {tdcSlope = s;}
29  void setTdcOffset(Float_t o) {tdcOffset = o;}
30  void setAdcSlope(Float_t s) {adcSlope = s;}
31  void setAdcOffset(Float_t o) {adcOffset = o;}
32  void fill(Float_t, Float_t, Float_t, Float_t);
33  void fill(Float_t*);
35  ClassDef(HPionTrackerCalParCell, 1) // Chan level of the PionTracker calibration parameters
36 };
37 
38 
39 class HPionTrackerCalParMod: public TObject {
40 protected:
41  TObjArray* array; // pointer array containing HPionTrackerCalParCell objects
42 public:
43  HPionTrackerCalParMod(Int_t n = 128);
46  return *static_cast<HPionTrackerCalParCell*>((*array)[i]);
47  }
48  Int_t getSize() {return array->GetEntries();}
49  ClassDef(HPionTrackerCalParMod, 1) // Module level of PionTracker Calibration parameters
50 };
51 
52 
53 class HPionTrackerCalPar : public HParSet {
54 protected:
55  TObjArray* array; // array of pointers of type HPionTrackerCalParMod
56 public:
57  HPionTrackerCalPar(const Char_t* name = "PionTrackerCalPar",
58  const Char_t* title = "Calibration parameters of the PionTracker",
59  const Char_t* context = "PionTrackerCalParProduction");
61 
63  return *static_cast<HPionTrackerCalParMod*>((*array)[i]);
64  }
65 
66  Int_t getSize() {return array->GetEntries();}
67  Bool_t init(HParIo* input, Int_t* set);
68  Int_t write(HParIo* output);
69  void clear();
70  void printParams();
71  void readline(const Char_t*, Int_t*);
72  void putAsciiHeader(TString&);
73  void write(fstream&);
74  ClassDef(HPionTrackerCalPar, 1) // Container for the calibration parameters of the PionTracker
75 };
76 
77 #endif /*!HPIONTRACKERCALPAR_H*/
void fill(Float_t, Float_t, Float_t, Float_t)
HPionTrackerCalParCell & operator[](Int_t i)
void setAdcSlope(Float_t s)
Int_t n
HPionTrackerCalParMod & operator[](Int_t i)
Definition: hpario.h:11
virtual Int_t write()
Definition: hparset.cc:119
TString input
Definition: GarReader.C:5
void setTdcSlope(Float_t s)
HPionTrackerCalParMod(Int_t n=128)
Definition: hparset.h:9
void getData(Float_t *data)
void readline(const Char_t *, Int_t *)
void setTdcOffset(Float_t o)
return output
void putAsciiHeader(TString &)
HPionTrackerCalPar(const Char_t *name="PionTrackerCalPar", const Char_t *title="Calibration parameters of the PionTracker", const Char_t *context="PionTrackerCalParProduction")
void setAdcOffset(Float_t o)
virtual Bool_t init(void)
Definition: hparset.h:21