AliRoot Core  v5-06-30 (35d6c57)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMpDCSNamer.h
Go to the documentation of this file.
1 #ifndef ALIMPDCSNAMER_H
2 #define ALIMPDCSNAMER_H
3 
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6 
7 // $Id$
8 
13 // Author Laurent Aphecetche and Diego Stocco, Subatech
14 
15 #ifndef ROOT_TObject
16 # include "TObject.h"
17 #endif
18 
19 class TObjArray;
20 
21 class AliMpDCSNamer : public TObject
22 {
23 public:
24  AliMpDCSNamer();
25  AliMpDCSNamer(const char* detName);
26 
27  virtual ~AliMpDCSNamer();
28 
29  Bool_t SetDetector(const char* detName);
30 
31  TString DCSNameFromAlias(const char* dcsAlias) const;
32 
33  TString DCSAliasFromName(const char* dcsName) const;
34 
35  TString DCSAliasName(Int_t detElemId, Int_t sector=0, Int_t dcsMeasure=0) const;
36 
37  TString DCSSwitchAliasName(Int_t detElemId, Int_t pcbNumber) const;
38 
39  Int_t DCS2DE(Int_t chamberId, Int_t side, Int_t dcsNumber) const;
40 
41  Int_t DetElemId2DCS(Int_t detElemId, Int_t& side, Int_t& chId) const;
42 
43  Int_t DCSIndexFromDCSAlias(const char* dcsAlias) const;
44 
45  Int_t DetElemIdFromDCSAlias(const char* dcsAlias) const;
46 
47  Int_t DCSvariableFromDCSAlias(const char* dcsAlias) const;
48 
49  Int_t ManuId2Index(Int_t detElemId, Int_t manuId) const;
50 
52  Int_t ManuId2PCBIndex(Int_t detElemId, Int_t manuId) const;
53 
55  Int_t ManuId2Sector(Int_t detElemId, Int_t manuId) const;
56 
57  Int_t NumberOfPCBs(Int_t detElemId) const;
58 
59  TObjArray* GenerateAliases() const;
60  TObjArray* CompactAliases() const;
61  void AliasesAsLdif(const char* ldiffile) const;
62 
63  // Below this value we consider tracking HV is off
64  static Float_t TrackerHVOFF() { return 30.0; }
65 
66  enum
67  {
71  };
72 
73  enum
74  {
77  };
78 
79 
80 private:
82  AliMpDCSNamer(const AliMpDCSNamer& right);
85 
86  Bool_t CheckConsistency(Int_t detElemId) const;
87 
88  static const char* fgkDCSChannelSt345Pattern[];
89  static const char* fgkDCSChannelSt12Pattern[];
90  static const char* fgkDCSQuadrantPattern[];
91  static const char* fgkDCSChamberPattern[];
92 
93  static const char* fgkDCSSwitchSt345Pattern;
94  static const char* fgkDCSSideTrackerName[];
95 
96  static const char* fgkDCSChannelTriggerPatternRead[];
97  static const char* fgkDCSChannelTriggerPattern[];
98  static const char* fgkDCSSideTriggerName[];
99  static const char* fgkDCSMeasureName[];
100 
101  static const char* fgkDetectorName[];
102 
103  Int_t fDetector;
104 
105  ClassDef(AliMpDCSNamer,0) // Utility class for coding/decoding DCS aliases
106 };
107 
108 #endif
static const char * fgkDCSChannelSt12Pattern[]
DCS Tracker Channel name template.
Definition: AliMpDCSNamer.h:89
Int_t ManuId2PCBIndex(Int_t detElemId, Int_t manuId) const
Returns the index of PCB (within a St345 slat) for a given manu number.
void AliasesAsLdif(const char *ldiffile) const
#define TObjArray
static const char * fgkDCSChamberPattern[]
DCS Tracker chamber name template.
Definition: AliMpDCSNamer.h:91
static Float_t TrackerHVOFF()
Definition: AliMpDCSNamer.h:64
Int_t ManuId2Sector(Int_t detElemId, Int_t manuId) const
Return the HV-sector number (within a St12 quadrant) for a given manu number.
static const char * fgkDCSQuadrantPattern[]
DCS Tracker quadrant name template.
Definition: AliMpDCSNamer.h:90
Collection of methods usefull to DCS handling for MUON TRK and TRG.
Definition: AliMpDCSNamer.h:21
Int_t NumberOfPCBs(Int_t detElemId) const
TObjArray * GenerateAliases() const
static const char * fgkDCSSideTrackerName[]
DCS Tracker Name of the side written in DCS.
Definition: AliMpDCSNamer.h:94
Int_t DetElemId2DCS(Int_t detElemId, Int_t &side, Int_t &chId) const
static const char * fgkDCSChannelSt345Pattern[]
DCS Tracker Channel name template.
Definition: AliMpDCSNamer.h:88
TString DCSNameFromAlias(const char *dcsAlias) const
static const char * fgkDCSChannelTriggerPattern[]
DCS Trigger Channel name template for output.
Definition: AliMpDCSNamer.h:97
Bool_t CheckConsistency(Int_t detElemId) const
Int_t ManuId2Index(Int_t detElemId, Int_t manuId) const
TString DCSAliasFromName(const char *dcsName) const
Int_t DCSIndexFromDCSAlias(const char *dcsAlias) const
static const char * fgkDCSChannelTriggerPatternRead[]
DCS Trigger Channel name template for input.
Definition: AliMpDCSNamer.h:96
AliMpDCSNamer & operator=(const AliMpDCSNamer &right)
Not implemented.
Bool_t SetDetector(const char *detName)
Int_t DCSvariableFromDCSAlias(const char *dcsAlias) const
Int_t DCS2DE(Int_t chamberId, Int_t side, Int_t dcsNumber) const
static const char * fgkDCSSwitchSt345Pattern
DCS Tracker Switch name template.
Definition: AliMpDCSNamer.h:93
TObjArray * CompactAliases() const
TString DCSSwitchAliasName(Int_t detElemId, Int_t pcbNumber) const
static const char * fgkDCSSideTriggerName[]
DCS Trigger Name of the side written in DCS.
Definition: AliMpDCSNamer.h:98
Namer for trigger.
Definition: AliMpDCSNamer.h:76
Namer for tracker.
Definition: AliMpDCSNamer.h:75
static const char * fgkDetectorName[]
Name of detector (Tracker or Trigger)
static const char * fgkDCSMeasureName[]
DCS Trigger Name of the measure (HV or current) written in DCS.
Definition: AliMpDCSNamer.h:99
Int_t DetElemIdFromDCSAlias(const char *dcsAlias) const
TString DCSAliasName(Int_t detElemId, Int_t sector=0, Int_t dcsMeasure=0) const
High Voltage.
Definition: AliMpDCSNamer.h:68
Int_t fDetector
Detector type (either tracker or trigger)
virtual ~AliMpDCSNamer()
Number of measured quantities.
Definition: AliMpDCSNamer.h:70