]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONCalibParamNI.h
Fixed a bug in the Digit reader, moved clusterfinder to initialize from OCDB, Added...
[u/mrichter/AliRoot.git] / MUON / AliMUONCalibParamNI.h
index 8f0b69edd6cbb24cf45a9b8b38c62572f0929839..e46a89cba83c5c3463f8a4406033faac5e6d55ce 100644 (file)
@@ -20,25 +20,32 @@ class AliMUONCalibParamNI : public AliMUONVCalibParam
 {
 public:
   AliMUONCalibParamNI();
-  AliMUONCalibParamNI(Int_t dimension, Int_t theSize, Int_t fillWithValue=0, Int_t packingValue=0);
+  AliMUONCalibParamNI(Int_t dimension, Int_t theSize, Int_t id0, Int_t id1, Int_t fillWithValue=0, Int_t packingValue=0);
   AliMUONCalibParamNI(const AliMUONCalibParamNI& other);
   AliMUONCalibParamNI& operator=(const AliMUONCalibParamNI& other);
   
   virtual ~AliMUONCalibParamNI();
 
+  /// Own clone methods (as the default TObject::Clone turned out to be pretty slow !)
+  virtual TObject* Clone(const char* = "") const { return new AliMUONCalibParamNI(*this); }
+  
   /// Return dimension
   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);
   
   /// Return size - the number of float pair we hold
   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;
      
   virtual Bool_t UnpackValue(Int_t value, Int_t& a, Int_t& b) const;
   
@@ -49,6 +56,7 @@ public:
 private:
   void CopyTo(AliMUONCalibParamNI& 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; ///< dimension of this object
@@ -59,7 +67,7 @@ private:
   /// The values array
   Int_t* fValues; //[fN] The values array
   
-  ClassDef(AliMUONCalibParamNI,1) // Container for calibration parameters
+  ClassDef(AliMUONCalibParamNI,3) // Container for calibration parameters
 };
 
 #endif