]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONPixel.h
DIPO added
[u/mrichter/AliRoot.git] / MUON / AliMUONPixel.h
1 #ifndef ALIMUONPIXEL_H
2 #define ALIMUONPIXEL_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7 // Revision of includes 07/05/2004
8
9 /// \ingroup rec
10 /// \class AliMUONPixel
11 /// \brief Pixel for MLEM method of cluster finding
12 ///
13 //  Author Alexander Zinchenko, JINR Dubna
14
15 #include <TObject.h>
16
17 class AliMUONPixel : public TObject {
18
19  public:
20
21   AliMUONPixel();
22   AliMUONPixel(Double_t xc, Double_t yc, Double_t wx, Double_t wy, Double_t charge); // constructor
23   virtual ~AliMUONPixel(); // Destructor
24
25   Double_t Charge(void) const { return fCharge; } ///< pixel charge
26   Double_t Size(Int_t ixy) const { return fSize[ixy]; } ///< pixel size
27   Double_t Coord(Int_t ixy) const { return fXY[ixy]; } ///< pixel coordinate
28   Int_t Flag(void) const { return fFlag; } ///< pixel flag
29   
30   void SetCharge(Double_t Charge) { fCharge = Charge; } ///< set charge
31   void SetSize(Int_t ixy, Double_t Size) { fSize[ixy] = Size; } ///< set size
32   void SetCoord(Int_t ixy, Double_t Coord) { fXY[ixy] = Coord; } ///< set coordinate
33   void SetFlag(Int_t flag) { fFlag = flag; } ///< set flag
34   void Shift(Int_t ixy, Double_t shift) { fXY[ixy] += shift; } ///< \todo add comment
35   void Print(const char* opt="") const;
36   /// What is necessary for sorting TObjArray's
37   Bool_t IsSortable() const { return kTRUE; }
38   Int_t Compare(const TObject* pixel) const; // "Compare" function for sorting
39
40  protected:
41
42  private:
43  
44   Double_t fCharge; //!< pixel charge
45   Double_t fSize[2]; //!< pixel size
46   Double_t fXY[2]; //!< pixel coordinates
47   Int_t fFlag; //!< pixel flag
48
49   // Functions
50
51   ClassDef(AliMUONPixel,0) // pixel for MLEM method of cluster finding
52     };
53 #endif