MUON + CheckCompiler
[u/mrichter/AliRoot.git] / MUON / MUONmapping / AliMpConstants.h
CommitLineData
dee1d5f1 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
5f91c9e8 4// $Id$
13985652 5// $MpId: AliMpConstants.h,v 1.11 2006/05/24 13:58:07 ivana Exp $
dee1d5f1 6
7/// \ingroup basic
8/// \class AliMpConstants
9/// \brief Globally used constants definition.
10///
13985652 11/// \author David Guez, Ivana Hrivnacova; IPN Orsay
5f91c9e8 12
13#ifndef ALI_MP_CONSTANTS_H
14#define ALI_MP_CONSTANTS_H
15
16#include <TObject.h>
d08b9187 17#include "AliMpPlaneType.h"
2998a151 18
5f91c9e8 19class 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);
6e97fbb8 27 static Bool_t IsEqual(Double_t v1x, Double_t v1y,
28 Double_t v2x, Double_t v2y);
5f91c9e8 29
30 // static get methods
31 static Double_t LengthTolerance();
32 static Double_t LengthStep();
33 static Int_t StartPadIndex();
6ebccce6 34 static Int_t NofCathodes();
185ce53f 35 static Int_t NofChambers();
6061eac6 36 static Int_t NofTrackingChambers();
fa09302e 37 static Int_t NofTriggerChambers();
185ce53f 38 static Int_t NofGeomModules();
cddd101e 39 static Int_t ManuMask(AliMp::PlaneType planeType);
fa09302e 40 static Int_t NofLocalBoards();
6a906d1e 41 static Int_t TotalNofLocalBoards();
35a22829 42 static Int_t ManuNofChannels();
43 static Int_t LocalBoardNofChannels();
fa09302e 44
5f91c9e8 45 private:
f5671fc3 46 /// unused derived functions
5f91c9e8 47 virtual Bool_t IsEqual(const TObject*) const { return true; }
48
49 // static data members
829425a5 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
6ebccce6 54 static const Int_t fgkNofCathodes; ///< number of cathodes
185ce53f 55 static const Int_t fgkNofChambers; ///< number of chambers
6061eac6 56 static const Int_t fgkNofTrackingChambers; ///< number of tracking chambers
185ce53f 57 static const Int_t fgkNofGeomModules; ///< number of geometry modules
829425a5 58 static const Int_t fgkNonBendingManuMask; ///< bit to set to indicate a manu located in non-bending plane
fa09302e 59 static const Int_t fgkNofLocalBoards; ///< number of notified trigger local boards
6a906d1e 60 static const Int_t fgkTotalNofLocalBoards; ///< total number of trigger local boards
35a22829 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
5f91c9e8 65};
66
67// inline functions
68
f5671fc3 69 /// Return the length precision for tests
185ce53f 70inline Double_t AliMpConstants::LengthTolerance() { return fgkLengthTolerance;}
f5671fc3 71 /// Return the step in length used to move from a geometric border
185ce53f 72inline Double_t AliMpConstants::LengthStep() { return fgkLengthStep;}
f5671fc3 73 /// Return global pad indices start value
185ce53f 74inline Int_t AliMpConstants::StartPadIndex() { return fgkStartPadIndex;}
6ebccce6 75 /// Return number of cathodes
76inline Int_t AliMpConstants::NofCathodes() { return fgkNofCathodes;}
f5671fc3 77 /// Return number of chambers
185ce53f 78inline Int_t AliMpConstants::NofChambers() { return fgkNofChambers;}
6061eac6 79 /// Return number of tracking chambers
80inline Int_t AliMpConstants::NofTrackingChambers() { return fgkNofTrackingChambers;}
f5671fc3 81 /// Return number of geometry modules
185ce53f 82inline Int_t AliMpConstants::NofGeomModules() { return fgkNofGeomModules;}
fa09302e 83 /// Return number of trigger local boards
84inline Int_t AliMpConstants::NofLocalBoards() { return fgkNofLocalBoards;}
6a906d1e 85 /// Return total number of trigger local boards
86inline Int_t AliMpConstants::TotalNofLocalBoards() { return fgkTotalNofLocalBoards;}
35a22829 87 /// Max number of channels per manu
88inline Int_t AliMpConstants::ManuNofChannels() { return fgkManuNofChannels; }
89 /// Max number of channels per local board
90inline Int_t AliMpConstants::LocalBoardNofChannels() { return fgkLocalBoardNofChannels; }
5f91c9e8 91
92#endif //ALI_MP_CONSTANTS_H
d08b9187 93