#include <emcMixedDataObject.h>
Inherits emcDataObject.
Inheritance diagram for emcMixedDataObject:
CDO = calibrated data object (that is, GeV and ns).
This MDO is ADC counts, with the pre-post operation done, pedestals are subtracted and H/L ratio already applied.
? FIXME ?
The information contained in this object would better fit in a more FEM-based object, whatever this can be, as there is no point in grouping the channels in one big blob at this point of the calibration operation. Only at the last stage (i.e. when you can get GeV and ns, i.e. the CDO level) does it make sense really.
Anyway, for the moment this class is used and is a little bit tricky as it shares some memory space with the RDO (look, that's really a dirty implementation detail, and should not appear here, but you need it to use this class properly, which is a very good sign that this class should disappear, don't you think so?). More tricky, this sharing is done through the base class emcDataObject (!) I was probably ill when I accepted to do that...
L.A.
To be deprecated as soon as online code does not need it anylonger.
Definition at line 44 of file emcMixedDataObject.h.
Public Member Functions | |
emcMixedDataObject () | |
ctor | |
virtual | ~emcMixedDataObject () |
dtor | |
void | Get (Int_t index, Float_t &adc, Float_t &tdc) const |
Get adc,tdc using indexing in the calorimeter ITEMs space. | |
void | Get (Int_t index, Float_t &adc, Float_t &tdc, Float_t &hg, Float_t &lg) const |
Get adc,tdc,hg,lg using indexing in the calorimeter ITEMs space. | |
Float_t | GetADC (Int_t index) const |
Get adc using indexing in the calorimeter ITEMs space. | |
Float_t | GetHG (Int_t index) const |
Get high gain using indexing in the calorimeter ITEMs space. | |
Float_t | GetLG (Int_t index) const |
Get low gain using indexing in the calorimeter ITEMs space. | |
Float_t | GetTDC (Int_t index) const |
Get time using indexing in the calorimeter ITEMs space. | |
bool | IsPedestalSubtracted (void) const |
bool | IsUsingHGLG (void) const |
To know is this object have the raw High and Low Gain values or not. | |
void | SetPedestalFlag (bool value=true) |
bool | IsHLRatioReal (void) const |
void | Set (int index, float adc, float tdc) |
void | Set (int index, float adc, float tdc, float hg, float lg) |
void | SetHLRatioFlag (bool value=true) |
void | SetMaxSize (Int_t thesize) |
void | SetToZero (int index) |
TString | Status (void) |
void | UseHGLG (bool use=false) |
Decide if this object must take care of raw High and Low Gain values. | |
bool | IsZero (Int_t index) const |
Tells if channel is zero. | |
void | GetPointers (float *&ADC, float *&TDC, int *&KEY) |
void | GetPointers (float *&ADC, float *&TDC, float *&HG, float *&LG, int *&KEY) |
Protected Attributes | |
Float_t * | fADC |
adc value (pre-post)*H/L gain ratio | |
Float_t * | fTDC |
tdc value | |
Float_t * | fHG |
High gain value. | |
Float_t * | fLG |
Low gain value. | |
bool | fPedestal |
tells if pedestals data are subtracted or not | |
bool | fHLRatio |
tells if real H/L ratio data are used or not | |
bool | fOwnAllocation |
Indicates if WE are allocating the tower data arrays or not (true if reading from Root file, false in any other cases). | |
bool | fUseHGLG |
Switch to store or not high and low gain. | |
Private Member Functions | |
emcMixedDataObject (const emcMixedDataObject &obj) | |
emcMixedDataObject & | operator= (const emcMixedDataObject &obj) |
Friends | |
std::ostream & | operator<< (std::ostream &, const emcMixedDataObject &) |
|
ctor
|
|
dtor
Definition at line 30 of file emcMixedDataObject.C. |
|
|
|
Get adc,tdc,hg,lg using indexing in the calorimeter ITEMs space.
Definition at line 55 of file emcMixedDataObject.C. References fADC, fHG, fLG, fTDC, and IsUsingHGLG(). |
|
Get adc,tdc using indexing in the calorimeter ITEMs space.
Definition at line 39 of file emcMixedDataObject.C. |
|
Get adc using indexing in the calorimeter ITEMs space.
Definition at line 82 of file emcMixedDataObject.C. References fADC. |
|
Get high gain using indexing in the calorimeter ITEMs space.
Definition at line 95 of file emcMixedDataObject.C. References fHG, and IsUsingHGLG(). |
|
Get low gain using indexing in the calorimeter ITEMs space.
Definition at line 113 of file emcMixedDataObject.C. References fLG, and IsUsingHGLG(). |
|
Definition at line 140 of file emcMixedDataObject.C. References fADC, emcDataObject::fDataMap, fHG, fLG, fTDC, and IsUsingHGLG(). |
|
This very inelegant method is nevertheless a way of taking care of the pre-existing software (which is working).\ Definition at line 131 of file emcMixedDataObject.C. References fADC, emcDataObject::fDataMap, and fTDC. |
|
Get time using indexing in the calorimeter ITEMs space.
Definition at line 160 of file emcMixedDataObject.C. References fTDC. |
|
Definition at line 106 of file emcMixedDataObject.h. References fHLRatio. Referenced by Status(). |
|
Definition at line 90 of file emcMixedDataObject.h. References fPedestal. Referenced by Status(). |
|
To know is this object have the raw High and Low Gain values or not.
Definition at line 96 of file emcMixedDataObject.h. References fUseHGLG. Referenced by Get(), GetHG(), GetLG(), GetPointers(), operator<<(), SetMaxSize(), and SetToZero(). |
|
Tells if channel is zero.
Definition at line 239 of file emcMixedDataObject.C. References fADC, and emcDataObject::ValidIndex(). |
|
|
|
Definition at line 210 of file emcMixedDataObject.C. References fADC, fHG, fLG, emcDataObject::fSize, fTDC, and emcDataObject::ValidIndex(). |
|
Definition at line 194 of file emcMixedDataObject.C. References fADC, emcDataObject::fSize, fTDC, and emcDataObject::ValidIndex(). Referenced by SetToZero(). |
|
Definition at line 115 of file emcMixedDataObject.h. References fHLRatio. Referenced by emcRawDataCalibratorV2::Calibrate(), emcRawDataCalibratorV1::Calibrate(), and emcRawDataCalibrator::Calibrate(). |
|
Sets the maximum size of this object. If thesize is different from previous fMaxSize, all the arrays are deleted and then re-allocated. Definition at line 250 of file emcMixedDataObject.C. References fADC, fHG, fHLRatio, fLG, emcDataObject::fMaxSize, fPedestal, emcDataObject::fSize, fTDC, and IsUsingHGLG(). Referenced by emcRawDataCalibratorV2::Calibrate(), emcRawDataCalibratorV1::Calibrate(), and emcRawDataCalibrator::Calibrate(). |
|
Definition at line 101 of file emcMixedDataObject.h. References fPedestal. Referenced by emcRawDataCalibratorV2::Calibrate(), emcRawDataCalibratorV1::Calibrate(), and emcRawDataCalibrator::Calibrate(). |
|
Definition at line 228 of file emcMixedDataObject.C. References IsUsingHGLG(), and Set(). Referenced by emcRawDataCalibratorV2::Calibrate(), emcRawDataCalibratorV1::Calibrate(), and emcRawDataCalibrator::Calibrate(). |
|
Definition at line 173 of file emcMixedDataObject.C. References IsHLRatioReal(), and IsPedestalSubtracted(). |
|
Decide if this object must take care of raw High and Low Gain values.
Definition at line 321 of file emcMixedDataObject.C. References fHG, fLG, emcDataObject::fMaxSize, and fUseHGLG. Referenced by mEmcCalibratorModule::Config(). |
|
|
|
adc value (pre-post)*H/L gain ratio
Definition at line 144 of file emcMixedDataObject.h. Referenced by Get(), GetADC(), GetPointers(), IsZero(), operator<<(), Set(), SetMaxSize(), and ~emcMixedDataObject(). |
|
High gain value.
Definition at line 148 of file emcMixedDataObject.h. Referenced by Get(), GetHG(), GetPointers(), operator<<(), Set(), SetMaxSize(), UseHGLG(), and ~emcMixedDataObject(). |
|
tells if real H/L ratio data are used or not
Definition at line 154 of file emcMixedDataObject.h. Referenced by IsHLRatioReal(), SetHLRatioFlag(), and SetMaxSize(). |
|
Low gain value.
Definition at line 150 of file emcMixedDataObject.h. Referenced by Get(), GetLG(), GetPointers(), operator<<(), Set(), SetMaxSize(), UseHGLG(), and ~emcMixedDataObject(). |
|
Indicates if WE are allocating the tower data arrays or not (true if reading from Root file, false in any other cases).
Definition at line 158 of file emcMixedDataObject.h. |
|
tells if pedestals data are subtracted or not
Definition at line 152 of file emcMixedDataObject.h. Referenced by IsPedestalSubtracted(), SetMaxSize(), and SetPedestalFlag(). |
|
tdc value
Definition at line 146 of file emcMixedDataObject.h. Referenced by Get(), GetPointers(), GetTDC(), operator<<(), Set(), SetMaxSize(), and ~emcMixedDataObject(). |
|
Switch to store or not high and low gain.
Definition at line 161 of file emcMixedDataObject.h. Referenced by IsUsingHGLG(), and UseHGLG(). |