1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
7 /// \class AliMUONCalibParamNF
8 /// \brief Implementation of AliMUONVCalibParam for tuples of floats
10 // Author Laurent Aphecetche
12 #ifndef ALIMUONCALIBPARAMNF_H
13 #define ALIMUONCALIBPARAMNF_H
15 #ifndef ALIMUONVCALIBPARAM_H
16 # include "AliMUONVCalibParam.h"
19 class AliMUONCalibParamNF : public AliMUONVCalibParam
22 AliMUONCalibParamNF();
23 AliMUONCalibParamNF(Int_t dimension, Int_t theSize, Int_t id0, Int_t id1, Float_t fillWithValue=0);
24 AliMUONCalibParamNF(const AliMUONCalibParamNF& other);
25 AliMUONCalibParamNF& operator=(const AliMUONCalibParamNF& other);
27 virtual ~AliMUONCalibParamNF();
29 /// Own clone methods (as the default TObject::Clone turned out to be pretty slow !)
30 virtual TObject* Clone(const char* = "") const { return new AliMUONCalibParamNF(*this); }
33 virtual Int_t Dimension() const { return fDimension; }
35 virtual void Print(Option_t* opt="") const;
37 virtual void SetValueAsFloat(Int_t i, Int_t j, Float_t value);
38 virtual void SetValueAsFloatFast(Int_t i, Int_t j, Float_t value);
39 virtual void SetValueAsInt(Int_t i, Int_t j, Int_t value);
40 virtual void SetValueAsIntFast(Int_t i, Int_t j, Int_t value);
42 /// Return size - the number of float pair we hold
43 virtual Int_t Size() const { return fSize; }
45 virtual Float_t ValueAsFloat(Int_t i, Int_t j=0) const;
47 virtual Float_t ValueAsFloatFast(Int_t i, Int_t j=0) const;
49 virtual Int_t ValueAsInt(Int_t i, Int_t j=0) const;
51 virtual Int_t ValueAsIntFast(Int_t i, Int_t j=0) const;
54 void CopyTo(AliMUONCalibParamNF& destination) const;
55 Int_t Index(Int_t i, Int_t j) const;
56 Int_t IndexFast(Int_t i, Int_t j) const;
59 Int_t fDimension; ///< dimension of this object
60 Int_t fSize; ///< The number of float pair we hold
61 Int_t fN; ///< The total number of floats we hold (fDimension*fSize)
64 Float_t* fValues; //[fN] The values array
66 ClassDef(AliMUONCalibParamNF,3) // Container for calibration parameters