1 #ifndef ALI_MUON_ST1_ELECTRONIC_ELEMENT_H
2 #define ALI_MUON_ST1_ELECTRONIC_ELEMENT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 // Authors: David Guez, Ivana Hrivnacova, Marion MacCormick; IPN Orsay
10 // Class AliMUONSt1ElectronicElement
11 // ---------------------------------
12 // Describes a set of pads either by defining
13 // a range of indices, or
14 // a range of (centimeters) positions or
15 // a range of electronic channel numbers or
16 // a range of MANU numbers or, finally,
17 // a range of gassiplex/MANAS numbers, in a given range of MANU addresses
21 class AliMUONSt1ElectronicElement : public TObject
24 enum TDescription {kNone, kIJ, kXY, kMGC, kMG, kM};
27 AliMUONSt1ElectronicElement();
28 AliMUONSt1ElectronicElement(TDescription descr);
29 virtual ~AliMUONSt1ElectronicElement();
32 Bool_t Contains(const MPad& pad) const;
33 void SetRange(Int_t numVar,Int_t i1,Int_t i2);
34 void SetRange(Int_t numVar,Double_t x1,Double_t x2);
35 Bool_t IsInRange(Int_t numVar,Int_t i) const;
36 Bool_t IsInRange(Int_t numVar,Double_t x) const;
39 typedef union {Int_t i; Double_t x;} TData;
41 TDescription fDescription; // how the pad range is described
42 TData fRanges[2][2]; // range of the 2 variables
44 ClassDef(AliMUONSt1ElectronicElement,1) //range of electronic elements
46 #endif //ALI_MUON_ST1_ELECTRONIC_ELEMENT_H