#ifndef ALIMUONCALIBPARAMNF_H
#define ALIMUONCALIBPARAMNF_H
#ifndef ALIMUONVCALIBPARAM_H
# include "AliMUONVCalibParam.h"
#endif
class AliMUONCalibParamNF : public AliMUONVCalibParam
{
public:
AliMUONCalibParamNF();
AliMUONCalibParamNF(Int_t dimension, Int_t theSize, Int_t id0, Int_t id1, Float_t fillWithValue=0);
AliMUONCalibParamNF(const AliMUONCalibParamNF& other);
AliMUONCalibParamNF& operator=(const AliMUONCalibParamNF& other);
virtual ~AliMUONCalibParamNF();
virtual TObject* Clone(const char* = "") const { return new AliMUONCalibParamNF(*this); }
virtual Int_t Dimension() const { return fDimension; }
virtual void Print(Option_t* opt="") const;
virtual void SetValueAsFloat(Int_t i, Int_t j, Float_t value);
virtual void SetValueAsFloatFast(Int_t i, Int_t j, Float_t value);
virtual void SetValueAsInt(Int_t i, Int_t j, Int_t value);
virtual void SetValueAsIntFast(Int_t i, Int_t j, Int_t value);
virtual Int_t Size() const { return fSize; }
virtual Float_t ValueAsFloat(Int_t i, Int_t j=0) const;
virtual Float_t ValueAsFloatFast(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;
private:
void CopyTo(AliMUONCalibParamNF& destination) const;
Int_t Index(Int_t i, Int_t j) const;
Int_t IndexFast(Int_t i, Int_t j) const;
private:
Int_t fDimension;
Int_t fSize;
Int_t fN;
Float_t* fValues;
ClassDef(AliMUONCalibParamNF,3)
};
#endif