]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/MUONmapping/AliMpConstants.h
Fixes for object target dependencies
[u/mrichter/AliRoot.git] / MUON / MUONmapping / AliMpConstants.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 // $MpId: AliMpConstants.h,v 1.11 2006/05/24 13:58:07 ivana Exp $
6
7 /// \ingroup basic
8 /// \class AliMpConstants
9 /// \brief Globally used constants definition.
10 ///
11 /// \author David Guez, Ivana Hrivnacova; IPN Orsay
12
13 #ifndef ALI_MP_CONSTANTS_H
14 #define ALI_MP_CONSTANTS_H
15
16 #include <TObject.h>
17 #include "AliMpPlaneType.h"
18
19 class AliMpConstants : public TObject
20 {
21  public:
22   AliMpConstants();
23   virtual ~AliMpConstants();
24
25   // static compare methods
26   static Bool_t  IsEqual(Double_t length1, Double_t length2);
27   static Bool_t  IsEqual(Double_t v1x, Double_t v1y, 
28                          Double_t v2x, Double_t v2y);
29
30   // static get methods
31   static Double_t LengthTolerance();
32   static Double_t LengthStep();
33   static Int_t    StartPadIndex();
34   static Int_t    NofCathodes();
35   static Int_t    NofChambers();
36   static Int_t    NofTrackingChambers();
37   static Int_t    NofTriggerChambers();
38   static Int_t    NofGeomModules();
39   static Int_t    ManuMask(AliMp::PlaneType planeType);
40   static Int_t    NofLocalBoards();
41   static Int_t    TotalNofLocalBoards();
42   static Int_t    ManuNofChannels();
43   static Int_t    LocalBoardNofChannels();
44
45  private:
46                   /// unused derived functions
47   virtual Bool_t  IsEqual(const TObject*) const { return true; }
48  
49   // static data members
50   static const Double_t  fgkLengthTolerance;///< the length precision for tests
51   static const Double_t  fgkLengthStep;     ///< \brief the step in length used to move from
52                                             /// a geometric border inside (pad, motif)
53   static const Int_t     fgkStartPadIndex;  ///< global pad indices start value
54   static const Int_t     fgkNofCathodes;    ///< number of cathodes
55   static const Int_t     fgkNofChambers;    ///< number of chambers
56   static const Int_t     fgkNofTrackingChambers; ///< number of tracking chambers
57   static const Int_t     fgkNofGeomModules; ///< number of geometry modules
58   static const Int_t     fgkNonBendingManuMask; ///< bit to set to indicate a manu located in non-bending plane
59   static const Int_t     fgkNofLocalBoards;  ///< number of notified trigger local boards 
60   static const Int_t     fgkTotalNofLocalBoards; ///< total number of trigger local boards
61   static const Int_t     fgkManuNofChannels; ///< max number of channels per manu
62   static const Int_t     fgkLocalBoardNofChannels; ///< max number of channels per local trigger board
63   
64   ClassDef(AliMpConstants,6) //Class for globally used constants definition
65 };
66
67 // inline functions
68
69                 /// Return the length precision for tests
70 inline Double_t AliMpConstants::LengthTolerance() { return fgkLengthTolerance;}
71                 /// Return the step in length used to move from a geometric border
72 inline Double_t AliMpConstants::LengthStep()      { return fgkLengthStep;}
73                 /// Return global pad indices start value
74 inline Int_t    AliMpConstants::StartPadIndex()   { return fgkStartPadIndex;}
75                 /// Return number of cathodes
76 inline Int_t    AliMpConstants::NofCathodes()     { return fgkNofCathodes;}
77                 /// Return number of chambers
78 inline Int_t    AliMpConstants::NofChambers()     { return fgkNofChambers;}
79                 /// Return number of tracking chambers
80 inline Int_t    AliMpConstants::NofTrackingChambers() { return fgkNofTrackingChambers;}
81                 /// Return number of geometry modules
82 inline Int_t    AliMpConstants::NofGeomModules()  { return fgkNofGeomModules;}
83                 /// Return number of trigger local boards
84 inline Int_t    AliMpConstants::NofLocalBoards()  { return fgkNofLocalBoards;}
85                /// Return total number of trigger local boards
86 inline Int_t    AliMpConstants::TotalNofLocalBoards()  { return fgkTotalNofLocalBoards;}
87                 /// Max number of channels per manu
88 inline Int_t    AliMpConstants::ManuNofChannels() { return fgkManuNofChannels; }
89                 /// Max number of channels per local board
90 inline Int_t    AliMpConstants::LocalBoardNofChannels() { return fgkLocalBoardNofChannels; }
91
92 #endif //ALI_MP_CONSTANTS_H
93