]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONVCalibParam.h
Updated list of MUON libraries
[u/mrichter/AliRoot.git] / MUON / AliMUONVCalibParam.h
index fd72232e590831b6d7af8f025f77db80919ea39b..1aeeabffc8168936c21c3aaf9ce34b5e7ad0dcfd 100644 (file)
@@ -3,7 +3,7 @@
 
 // $Id$
 
-/// \ingroup base
+/// \ingroup calib
 /// \class AliMUONVCalibParam
 /// \brief Container of calibration values for a given number of channels.
 /// 
@@ -22,6 +22,9 @@ public:
   AliMUONVCalibParam();
   virtual ~AliMUONVCalibParam();
 
+  /// whether or not the value we store are packed, e.g. as v = a*cste + b
+  virtual Bool_t IsPacked() const { return kFALSE; }
+  
   /// j indices in following methods are valid from 0 to Dimension()-1.
   virtual Int_t Dimension() const = 0;
   
@@ -37,9 +40,16 @@ public:
   /// Retrieve the value for a given (channel,dim) as a float.
   virtual Float_t ValueAsFloat(Int_t i, Int_t j=0) const = 0;
   
-    /// Retrieve the value for a given (channel,dim) as an integer.
+  /// Retrieve the value for a given (channel,dim) as an integer.
   virtual Int_t ValueAsInt(Int_t i, Int_t j=0) const = 0;
 
+  /// Unpack a value into a couple (a,b). Returns false if IsPacked()==kFALSE
+  virtual Bool_t UnpackValue(Int_t /*value*/, Int_t& /*a*/, Int_t& /*b*/) const { return kFALSE; }
+  
+  /// Pack (a,b) as a single int. Returns false if IsPacked()==kFALSE
+  virtual Bool_t PackValues(Int_t /*a*/, Int_t /*b*/, Int_t& /*packedValue*/) const { return kFALSE; }
+  
+  /// Return 1E38 as invalid float value
   static Float_t InvalidFloatValue() { return 1E38; }
   
   ClassDef(AliMUONVCalibParam,0) //