12 #ifndef ALIMUONCALIBPARAMNI_H
13 #define ALIMUONCALIBPARAMNI_H
15 #ifndef ALIMUONVCALIBPARAM_H
23 AliMUONCalibParamNI(Int_t dimension, Int_t theSize, Int_t id0, Int_t id1, Int_t fillWithValue=0, Int_t packingValue=0);
35 virtual void Print(Option_t* opt=
"")
const;
47 virtual Int_t
ValueAsInt(Int_t i, Int_t j=0)
const;
50 virtual Bool_t
UnpackValue(Int_t value, Int_t& a, Int_t& b)
const;
52 virtual Bool_t
PackValues(Int_t a, Int_t b, Int_t& packedValue)
const;
58 Int_t
Index(Int_t i, Int_t j)
const;
Int_t IndexFast(Int_t i, Int_t j) const
virtual void SetValueAsFloatFast(Int_t i, Int_t j, Float_t value)
virtual Float_t ValueAsFloat(Int_t i, Int_t j=0) const
Int_t fDimension
dimension of this object
Container of calibration values for a given number of channels.
virtual Int_t Size() const
Return size - the number of float pair we hold.
Implementation of AliMUONVCalibParam for tuples of ints.
virtual Int_t ValueAsIntFast(Int_t i, Int_t j=0) const
Same as above but w/o bound checking.
virtual Float_t ValueAsFloatFast(Int_t i, Int_t j=0) const
Same as above but without bound checking.
Int_t * fValues
The values array.
virtual void SetValueAsInt(Int_t i, Int_t j, Int_t value)
Set one value, for channel i, dimension j. Consider value is an integer.
virtual void Print(Option_t *opt="") const
virtual Bool_t UnpackValue(Int_t value, Int_t &a, Int_t &b) const
Unpack a value into a couple (a,b). Returns false if IsPacked()==kFALSE.
virtual Bool_t IsPacked() const
whether or not the value we store are packed, e.g. as v = a*cste + b
virtual Int_t ValueAsInt(Int_t i, Int_t j=0) const
virtual ~AliMUONCalibParamNI()
Int_t Index(Int_t i, Int_t j) const
void CopyTo(AliMUONCalibParamNI &destination) const
virtual Bool_t PackValues(Int_t a, Int_t b, Int_t &packedValue) const
Pack (a,b) as a single int. Returns false if IsPacked()==kFALSE.
Int_t fPackingFactor
packing factor, i.e. value = a*fPackingFactor + b
Int_t fSize
The number of float pair we hold.
virtual Int_t Dimension() const
Return dimension.
virtual void SetValueAsIntFast(Int_t i, Int_t j, Int_t value)
Same as above but w/o bound checkings.
virtual void SetValueAsFloat(Int_t i, Int_t j, Float_t value)
Set one value, for channel i, dimension j. Consider value is a float.
Int_t fN
The total number of floats we hold (fDimension*fSize)
AliMUONCalibParamNI & operator=(const AliMUONCalibParamNI &other)
virtual TObject * Clone(const char *="") const
Own clone methods (as the default TObject::Clone turned out to be pretty slow !)