![]() |
AliRoot Core
3dc7879 (3dc7879)
|
Implementation of AliMUONVCalibParam for tuples of double. More...
#include <AliMUONCalibParamND.h>
Public Member Functions | |
AliMUONCalibParamND () | |
AliMUONCalibParamND (Int_t dimension, Int_t theSize, Int_t id0, Int_t id1, Double_t fillWithValue=0) | |
AliMUONCalibParamND (const AliMUONCalibParamND &other) | |
AliMUONCalibParamND & | operator= (const AliMUONCalibParamND &other) |
virtual | ~AliMUONCalibParamND () |
virtual TObject * | Clone (const char *="") const |
Own clone methods (as the default TObject::Clone turned out to be pretty slow !) More... | |
virtual Int_t | Dimension () const |
Return dimension. More... | |
virtual void | Print (Option_t *opt="") const |
virtual void | SetValueAsDouble (Int_t i, Int_t j, Double_t value) |
virtual void | SetValueAsDoubleFast (Int_t i, Int_t j, Double_t value) |
Same as above but w/o bound checking. More... | |
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. More... | |
virtual void | SetValueAsFloatFast (Int_t i, Int_t j, Float_t value) |
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. More... | |
virtual void | SetValueAsIntFast (Int_t i, Int_t j, Int_t value) |
Same as above but w/o bound checkings. More... | |
virtual Int_t | Size () const |
Return size - the number of double tuples we hold. More... | |
virtual Float_t | ValueAsFloat (Int_t i, Int_t j=0) const |
virtual Float_t | ValueAsFloatFast (Int_t i, Int_t j=0) const |
Same as above but without bound checking. More... | |
virtual Double_t | ValueAsDouble (Int_t i, Int_t j=0) const |
virtual Double_t | ValueAsDoubleFast (Int_t i, Int_t j=0) const |
virtual Int_t | ValueAsInt (Int_t i, Int_t j=0) const |
virtual Int_t | ValueAsIntFast (Int_t i, Int_t j=0) const |
Same as above but w/o bound checking. More... | |
virtual Bool_t | IsDoublePrecision () const |
Advertise that we can store double precision values. More... | |
![]() | |
AliMUONVCalibParam () | |
AliMUONVCalibParam (Int_t id0, Int_t id1) | |
virtual | ~AliMUONVCalibParam () |
virtual const char * | GetName () const |
virtual Bool_t | IsSortable () const |
Advertise that we can be sorted in TCollections. More... | |
virtual Int_t | ID0 () const |
First id of this object. More... | |
virtual Int_t | ID1 () const |
Second id of this object (might not be required) More... | |
virtual Int_t | Compare (const TObject *object) const |
method for sorting pedestal values ordered by ID0 and ID1 More... | |
virtual Bool_t | IsPacked () const |
whether or not the value we store are packed, e.g. as v = a*cste + b More... | |
virtual Bool_t | UnpackValue (Int_t, Int_t &, Int_t &) const |
Unpack a value into a couple (a,b). Returns false if IsPacked()==kFALSE. More... | |
virtual Bool_t | PackValues (Int_t, Int_t, Int_t &) const |
Pack (a,b) as a single int. Returns false if IsPacked()==kFALSE. More... | |
Private Member Functions | |
void | CopyTo (AliMUONCalibParamND &destination) const |
Int_t | Index (Int_t i, Int_t j) const |
Int_t | IndexFast (Int_t i, Int_t j) const |
Private Attributes | |
Int_t | fDimension |
dimension of this object More... | |
Int_t | fSize |
The number of double tuples we hold. More... | |
Int_t | fN |
The total number of floats we hold (fDimension*fSize) More... | |
Double_t * | fValues |
The values array. More... | |
Additional Inherited Members | |
![]() | |
static Float_t | InvalidFloatValue () |
Return 1E38 as invalid float value. More... | |
static UInt_t | BuildUniqueID (Int_t id0, Int_t id1) |
static void | DecodeUniqueID (UInt_t uniqueID, Int_t &id0, Int_t &id1) |
![]() | |
static Int_t | ID0 (UInt_t uniqueID) |
static Int_t | ID1 (UInt_t uniqueID) |
Implementation of AliMUONVCalibParam for tuples of double.
Handle the case of N floating point (double precision) parameters per channel.
Definition at line 19 of file AliMUONCalibParamND.h.
AliMUONCalibParamND::AliMUONCalibParamND | ( | ) |
AliMUONCalibParamND::AliMUONCalibParamND | ( | Int_t | dimension, |
Int_t | theSize, | ||
Int_t | id0, | ||
Int_t | id1, | ||
Double_t | fillWithValue = 0 |
||
) |
Normal constructor, where theSize specifies the number of channels handled by this object, and fillWithValue the default value assigned to each channel.
Definition at line 52 of file AliMUONCalibParamND.cxx.
AliMUONCalibParamND::AliMUONCalibParamND | ( | const AliMUONCalibParamND & | other | ) |
Copy constructor.
Definition at line 77 of file AliMUONCalibParamND.cxx.
|
virtual |
Destructor
Definition at line 100 of file AliMUONCalibParamND.cxx.
|
inlinevirtual |
Own clone methods (as the default TObject::Clone turned out to be pretty slow !)
Definition at line 30 of file AliMUONCalibParamND.h.
|
private |
Copy *this to destination
Definition at line 109 of file AliMUONCalibParamND.cxx.
Referenced by AliMUONCalibParamND(), IsDoublePrecision(), and operator=().
|
inlinevirtual |
Return dimension.
Implements AliMUONVCalibParam.
Definition at line 33 of file AliMUONCalibParamND.h.
Referenced by Index(), Print(), SetValueAsDouble(), and ValueAsDouble().
|
private |
Compute the 1D index of the internal storage from the pair (i,j) Returns -1 if the (i,j) pair is invalid
Definition at line 132 of file AliMUONCalibParamND.cxx.
Referenced by IsDoublePrecision(), SetValueAsDouble(), and ValueAsDouble().
|
private |
Compute the 1D index of the internal storage from the pair (i,j)
Definition at line 146 of file AliMUONCalibParamND.cxx.
Referenced by Index(), IsDoublePrecision(), SetValueAsDoubleFast(), and ValueAsDoubleFast().
|
inlinevirtual |
Advertise that we can store double precision values.
Reimplemented from AliMUONVCalibParam.
Definition at line 55 of file AliMUONCalibParamND.h.
AliMUONCalibParamND & AliMUONCalibParamND::operator= | ( | const AliMUONCalibParamND & | other | ) |
Assignment operator
Definition at line 91 of file AliMUONCalibParamND.cxx.
|
virtual |
Output this object to stdout. If opt=="full", then all channels are printed, if opt=="mean#", only the mean and sigma value are printed for j-th dimension otherwise only the general characteristics are printed.
Definition at line 155 of file AliMUONCalibParamND.cxx.
Referenced by Dimension().
|
virtual |
Set one value, for channel i, dimension j. Consider value is a double. Only ok to use if IsDoublePrecision() is kTRUE.
Set one value as a double, after checking that the indices are correct.
By default, this one does not exist
Reimplemented from AliMUONVCalibParam.
Definition at line 204 of file AliMUONCalibParamND.cxx.
Referenced by Dimension(), and SetValueAsFloat().
|
virtual |
Same as above but w/o bound checking.
Set one value as a double, w/o checking that the indices are correct.
By default, this one does not exist
Reimplemented from AliMUONVCalibParam.
Definition at line 223 of file AliMUONCalibParamND.cxx.
Referenced by Dimension(), and SetValueAsFloatFast().
|
virtual |
Set one value, for channel i, dimension j. Consider value is a float.
Set one value as a float, after checking that the indices are correct.
Implements AliMUONVCalibParam.
Definition at line 232 of file AliMUONCalibParamND.cxx.
Referenced by Dimension(), and SetValueAsInt().
|
virtual |
Set one value, for channel i, dimension j. Consider value is a float. Assume (i,j) are valid indices, i.e. do not check them.
Set one value as a float, after checking that the indices are correct.
Implements AliMUONVCalibParam.
Definition at line 240 of file AliMUONCalibParamND.cxx.
Referenced by Dimension(), and SetValueAsIntFast().
|
virtual |
Set one value, for channel i, dimension j. Consider value is an integer.
Set one value as an int.
Implements AliMUONVCalibParam.
Definition at line 248 of file AliMUONCalibParamND.cxx.
Referenced by Dimension().
|
virtual |
Same as above but w/o bound checkings.
Set one value as an int.
Implements AliMUONVCalibParam.
Definition at line 257 of file AliMUONCalibParamND.cxx.
Referenced by Dimension().
|
inlinevirtual |
Return size - the number of double tuples we hold.
Implements AliMUONVCalibParam.
Definition at line 45 of file AliMUONCalibParamND.h.
Referenced by Index(), IndexFast(), Print(), SetValueAsDouble(), and ValueAsDouble().
|
virtual |
Retrieve the value for a given (channel,dim) as a double. Only ok if IsDoublePrecision() is kTRUE. (i,j) are checked to within boundaries
Return the value as a double (which it is), after checking indices.
By default, this one does not exist
Reimplemented from AliMUONVCalibParam.
Definition at line 266 of file AliMUONCalibParamND.cxx.
Referenced by Print(), Size(), and ValueAsFloat().
|
virtual |
Retrieve the value for a given (channel,dim) as a double. Only ok if IsDoublePrecision() is kTRUE. Fast means there's no bound checking on (i,j)
Return the value as a double (which it is), w/o checking indices.
By default, this one does not exist
Reimplemented from AliMUONVCalibParam.
Definition at line 286 of file AliMUONCalibParamND.cxx.
Referenced by Size(), and ValueAsFloatFast().
|
virtual |
Retrieve the value for a given (channel,dim) as a float, with bound checking on (i,j).
Return the value as a float
Implements AliMUONVCalibParam.
Definition at line 295 of file AliMUONCalibParamND.cxx.
Referenced by Size(), and ValueAsInt().
|
virtual |
Same as above but without bound checking.
Return the value as a float
Implements AliMUONVCalibParam.
Definition at line 303 of file AliMUONCalibParamND.cxx.
Referenced by Size(), and ValueAsIntFast().
|
virtual |
Retrieve the value for a given (channel,dim) as an integer. With bound checking.
Return the value as an int, by rounding the internal float value.
Implements AliMUONVCalibParam.
Definition at line 311 of file AliMUONCalibParamND.cxx.
Referenced by Size().
|
virtual |
Same as above but w/o bound checking.
Return the value as an int, by rounding the internal float value.
Implements AliMUONVCalibParam.
Definition at line 321 of file AliMUONCalibParamND.cxx.
Referenced by Size().
|
private |
dimension of this object
Definition at line 63 of file AliMUONCalibParamND.h.
Referenced by CopyTo(), and Dimension().
|
private |
The total number of floats we hold (fDimension*fSize)
Definition at line 65 of file AliMUONCalibParamND.h.
Referenced by AliMUONCalibParamND(), and CopyTo().
|
private |
The number of double tuples we hold.
Definition at line 64 of file AliMUONCalibParamND.h.
|
private |
The values array.
Definition at line 68 of file AliMUONCalibParamND.h.
Referenced by AliMUONCalibParamND(), CopyTo(), SetValueAsDouble(), SetValueAsDoubleFast(), ValueAsDouble(), ValueAsDoubleFast(), and ~AliMUONCalibParamND().