1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
7 /// \class AliMUONCalibParam1I
8 /// \brief Implementation of AliMUONVCalibParam.
10 /// Handle the case of 1 integer parameter per channel.
12 /// \author Laurent Aphecetche
14 #ifndef ALIMUONCALIBPARAM1I_H
15 #define ALIMUONCALIBPARAM1I_H
17 #ifndef ALIMUONVCALIBPARAM_H
18 # include "AliMUONVCalibParam.h"
21 class AliMUONCalibParam1I : public AliMUONVCalibParam
24 AliMUONCalibParam1I();
25 AliMUONCalibParam1I(Int_t theSize, Int_t fillWithValue=0);
26 AliMUONCalibParam1I(const AliMUONCalibParam1I& other);
27 AliMUONCalibParam1I& operator=(const AliMUONCalibParam1I& other);
28 virtual ~AliMUONCalibParam1I();
30 /// The dimension of this object is 1, i.e. it's a vector.
31 virtual Int_t Dimension() const { return 1; }
33 virtual void Print(Option_t* opt="") const;
35 /** Set the value located at i (j must be zero).
36 * Note that the internal structure store ints, so the float is rounded
39 virtual void SetValueAsFloat(Int_t i, Int_t j, Float_t value);
41 /// Set the value located at i (j must be zero), as an int.
42 virtual void SetValueAsInt(Int_t i, Int_t j, Int_t value);
44 /// The number of values we hold.
45 virtual Int_t Size() const { return fSize; }
47 /// Retrieve the value located at i (j must remain zero), as a float.
48 virtual Float_t ValueAsFloat(Int_t i, Int_t j=0) const;
50 /// Retrieve the value located at i (j must remain zero).
51 virtual Int_t ValueAsInt(Int_t i, Int_t j=0) const;
54 /// Copy *this to destination (used by copy ctor and operator=).
55 void CopyTo(AliMUONCalibParam1I& destination) const;
58 Int_t fSize; // The number of values we hold
59 Int_t* fValues; //[fSize]
61 ClassDef(AliMUONCalibParam1I,1) // Container for calibration parameters