]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONCalibParam1I.h
Adding CVS Id
[u/mrichter/AliRoot.git] / MUON / AliMUONCalibParam1I.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice                               */
3
4 // $Id$
5
6 /// \ingroup base
7 /// \class AliMUONCalibParam1I
8 /// \brief Implementation of AliMUONVCalibParam,
9 /// handle the case of 1 integer parameter per channel.
10 ///
11 // Author Laurent Aphecetche
12
13 #ifndef ALIMUONCALIBPARAM1I_H
14 #define ALIMUONCALIBPARAM1I_H
15
16 #ifndef ALIMUONVCALIBPARAM_H
17 #  include "AliMUONVCalibParam.h"
18 #endif
19
20 class AliMUONCalibParam1I : public AliMUONVCalibParam
21 {
22 public:
23   AliMUONCalibParam1I();
24   AliMUONCalibParam1I(Int_t theSize, Int_t fillWithValue=0);
25   AliMUONCalibParam1I(const AliMUONCalibParam1I& other);
26   AliMUONCalibParam1I& operator=(const AliMUONCalibParam1I& other);
27   virtual ~AliMUONCalibParam1I();
28
29   /// The dimension of this object is 1, i.e. it's a vector.
30   virtual Int_t Dimension() const { return 1; }
31   
32   virtual void Print(Option_t* opt="") const;
33   
34   /** Set the value located at i (j must be zero).
35     * Note that the internal structure store ints, so the float is rounded
36     * prior to be stored
37     */
38   virtual void SetValueAsFloat(Int_t i, Int_t j, Float_t value);
39   
40   /// Set the value located at i (j must be zero), as an int.
41   virtual void SetValueAsInt(Int_t i, Int_t j, Int_t value);
42   
43   /// The number of values we hold.
44   virtual Int_t Size() const { return fSize; }
45
46   /// Retrieve the value located at i (j must remain zero), as a float.
47   virtual Float_t ValueAsFloat(Int_t i, Int_t j=0) const;
48   
49   /// Retrieve the value located at i (j must remain zero).
50   virtual Int_t ValueAsInt(Int_t i, Int_t j=0) const;
51
52 private:
53   /// Copy *this to destination (used by copy ctor and operator=).
54   void CopyTo(AliMUONCalibParam1I& destination) const;
55   
56 private:
57   Int_t fSize;    ///< The number of values we hold
58
59   ///  The values array 
60   Int_t* fValues; //[fSize] The values array
61   
62   ClassDef(AliMUONCalibParam1I,1) // Container for calibration parameters
63 };
64
65 #endif