AliRoot Core  3dc7879 (3dc7879)
AliMUONGlobalCrateConfig.h
Go to the documentation of this file.
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice */
3 
4 // $Id$
5 
11 
12 #ifndef ALI_MUON_GLOBAL_CRATE_CONFIG_H
13 #define ALI_MUON_GLOBAL_CRATE_CONFIG_H
14 
15 #include <TNamed.h>
16 #include <TString.h>
17 
18 class AliMUONGlobalCrateConfig : public TNamed {
19 
20  public:
22  virtual ~AliMUONGlobalCrateConfig();
23 
24  // methods
25  Int_t ReadData(const TString& fileName = "");
26 
27  // global crate enable
29  void SetGlobalCrateEnable(UInt_t enable) {fGlobalCrateEnable = enable;}
31  UInt_t GetGlobalCrateEnable() const {return fGlobalCrateEnable;}
32 
33  // Jtag
35  ULong_t GetJtagVmeAddr() const {return fJtagVmeAddr;}
37  void SetJtagVmeAddr(ULong_t addr) {fJtagVmeAddr = addr;}
38 
40  UInt_t GetJtagClockDiv() const {return fJtagClockDiv;}
42  void SetJtagClockDiv(UInt_t clk) {fJtagClockDiv = clk;}
43 
45  UInt_t GetJtagRxPhase() const {return fJtagRxPhase;}
47  void SetJtagRxPhase(UInt_t rx) {fJtagRxPhase = rx;}
48 
50  UInt_t GetJtagRdDelay() const {return fJtagRdDelay;}
52  void SetJtagRdDelay(UInt_t rd) {fJtagRdDelay = rd;}
53 
55  Bool_t GetEnableJtag(Int_t index) const;
57  void SetEnableJtag(UChar_t en) {fEnableJtag = en;}
59  UChar_t GetEnableJtag() const {return fEnableJtag;}
61  void SetEnableFirstDarc(UChar_t en) {fEnableFirstDarc = en;}
63  UChar_t GetEnableFirstDarc() const {return fEnableFirstDarc;}
65  Bool_t GetEnableFirstDarc(Int_t index) const;
67  void SetEnableSecondDarc(UChar_t en) {fEnableSecondDarc = en;}
69  UChar_t GetEnableSecondDarc() const {return fEnableSecondDarc;}
71  Bool_t GetEnableSecondDarc(Int_t index) const;
72 
74  TString GetJtagCrateName(Int_t jtagLine, Int_t index) const;
76  void SetJtagCrateName(Int_t index, TString name);
77 
78  // first Darc Board
80  ULong_t GetFirstDarcVmeAddr() const {return fFirstDarcVmeAddr;}
82  void SetFirstDarcVmeAddr(ULong_t addr) {fFirstDarcVmeAddr = addr;}
83 
85  Int_t GetFirstDarcType() const {return fFirstDarcType;}
87  void SetFirstDarcType(Int_t type) {fFirstDarcType = type;}
88 
90  UChar_t GetFirstDarcDisable() const {return fFirstDarcDisable;}
92  Bool_t GetFirstDarcDisable(Int_t iCrate) const {return !((fFirstDarcDisable >> iCrate) & 0x1);}
94  void SetFirstDarcDisable(UChar_t en) {fFirstDarcDisable = en;}
95 
97  UInt_t GetFirstDarcL0Delay() const {return fFirstDarcL0Delay;}
99  void SetFirstDarcL0Delay(UInt_t delay) {fFirstDarcL0Delay = delay;}
100 
104  void SetFirstDarcL1TimeOut(UInt_t time) {fFirstDarcL1TimeOut = time;}
105 
107  UInt_t GetFirstDarcGlobalL0() const {return fFirstDarcGlobalL0;}
109  void SetFirstDarcGlobalL0(UInt_t time) {fFirstDarcGlobalL0 = time;}
110 
112  UInt_t GetFirstDarcConfig() const {return fFirstDarcConfig;}
114  void SetFirstDarcConfig(UInt_t conf) {fFirstDarcConfig = conf;}
115 
117  TString GetFirstDarcCrateName(Int_t index) const;
119  void SetFirstDarcCrateName(Int_t index, TString name);
120 
121  // second Darc Board
123  ULong_t GetSecondDarcVmeAddr() const {return fSecondDarcVmeAddr;}
125  void SetSecondDarcVmeAddr(ULong_t addr) {fSecondDarcVmeAddr = addr;}
126 
128  Int_t GetSecondDarcType() const {return fSecondDarcType;}
130  void SetSecondDarcType(Int_t type) {fSecondDarcType = type;}
131 
133  UChar_t GetSecondDarcDisable() const {return fSecondDarcDisable;}
135  Bool_t GetSecondDarcDisable(Int_t iCrate) const {return !((fSecondDarcDisable >> iCrate) & 0x1);}
137  void SetSecondDarcDisable(UChar_t en) {fSecondDarcDisable = en;}
138 
140  UInt_t GetSecondDarcL0Delay() const {return fSecondDarcL0Delay;}
142  void SetSecondDarcL0Delay(UInt_t delay) {fSecondDarcL0Delay = delay;}
146  void SetSecondDarcL1TimeOut(UInt_t time) {fSecondDarcL1TimeOut = time;}
147 
151  void SetSecondDarcGlobalL0(UInt_t time) {fSecondDarcGlobalL0 = time;}
152 
154  UInt_t GetSecondDarcConfig() const {return fSecondDarcConfig;}
156  void SetSecondDarcConfig(UInt_t conf) {fSecondDarcConfig = conf;}
157 
159  TString GetSecondDarcCrateName(Int_t index) const;
161  void SetSecondDarcCrateName(Int_t index, TString name);
162 
163  // global board
165  ULong_t GetGlobalVmeAddr() const {return fGlobalVmeAddr;}
167  void SetGlobalVmeAddr(ULong_t addr) {fGlobalVmeAddr = addr;}
168 
170  UInt_t GetGlobalRegister(Int_t index) const;
172  void SetGlobalRegister(Int_t index, UInt_t reg);
176  void SetGlobalMask(Int_t index, UInt_t mask);
178  UInt_t GetGlobalMask(Int_t index) const;
180  Bool_t GetMasksOn() const;
181 
182  // fet board
184  ULong_t GetFetVmeAddr() const {return fFetVmeAddr;}
186  void SetFetVmeAddr(ULong_t addr) {fFetVmeAddr = addr;}
187 
189  UInt_t GetFetRegister(Int_t index) const;
191  void SetFetRegister(Int_t index, UInt_t reg);
193  UInt_t* GetFetRegister() {return fFetRegisters;}
194 
195  //static members
197  const Char_t* GetJtagName() const {return fgkJtagName;}
199  const Char_t* GetFirstDarcName() const {return fgkFirstDarcName;}
201  const Char_t* GetSecondDarcName() const {return fgkSecondDarcName;}
203  const Char_t* GetGlobalName() const {return fgkGlobalName;}
205  const Char_t* GetFetName() const {return fgkFetName;}
206 
210  Int_t GetFetNofRegisters() const {return fgkFetNofRegisters;}
212  Int_t GetJtagNofLines() const {return fgkJtagNofLines;}
214  Int_t GetDarcNofLines() const {return fgkDarcNofLines;}
215 
216  private:
221 
222  // data members
224  ULong_t fJtagVmeAddr;
225  UInt_t fJtagClockDiv;
226  UInt_t fJtagRxPhase;
227  UInt_t fJtagRdDelay;
228  UChar_t fEnableJtag;
229  TString fJtagCrateName[16];
230  TString fFirstDarcCrateName[8];
231  TString fSecondDarcCrateName[8];
232 
240 
248 
249  ULong_t fGlobalVmeAddr;
250  UInt_t fGlobalRegisters[13];
251 
252  ULong_t fFetVmeAddr;
253  UInt_t fFetRegisters[7];
254 
257 
258  static const Char_t* fgkJtagName;
259  static const Char_t* fgkFirstDarcName;
260  static const Char_t* fgkSecondDarcName;
261  static const Char_t* fgkGlobalName;
262  static const Char_t* fgkFetName;
263 
264  static const Int_t fgkGlobalNofRegisters;
265  static const Int_t fgkFetNofRegisters;
266  static const Int_t fgkJtagNofLines;
267  static const Int_t fgkDarcNofLines;
268 
269  ClassDef(AliMUONGlobalCrateConfig,4)
270 };
271 
272 #endif
273 
274 
275 
276 
277 
278 
279 
280 
281 
282 
283 
284 
285 
286 
void SetEnableJtag(UChar_t en)
Set Jtag enable word.
void SetJtagVmeAddr(ULong_t addr)
Set Jtag board VME address.
UChar_t GetFirstDarcDisable() const
Get disable word for First Darc board.
void SetFirstDarcDisable(UChar_t en)
Set disable word for First Darc board.
void SetFirstDarcType(Int_t type)
Get type for First Darc board.
TString GetJtagCrateName(Int_t jtagLine, Int_t index) const
Get Jtag Crate names.
TString GetSecondDarcCrateName(Int_t index) const
Get Second Darc Crate names.
The class defines the configuration of global crate.
static const Char_t * fgkFetName
FET Board name.
UInt_t fJtagRdDelay
Read delay for JTag.
ULong_t fSecondDarcVmeAddr
Second Darc Board VME Address.
ULong_t GetSecondDarcVmeAddr() const
Get Second Darc board VME address.
void SetSecondDarcGlobalL0(UInt_t time)
set global L0 delay for Second Darc board
UInt_t GetJtagClockDiv() const
Get Jtag board Clock Divider.
UInt_t GetGlobalMask(Int_t index) const
Get mask for the global input.
void SetEnableFirstDarc(UChar_t en)
Set First Darc enable word.
Int_t GetSecondDarcType() const
Get type for Second Darc board.
UChar_t GetSecondDarcDisable() const
Get disable word for Second Darc board.
UInt_t GetJtagRxPhase() const
Get Jtag board Rx Phase.
const Char_t * GetFetName() const
Get Global Name identifier.
void SetFirstDarcVmeAddr(ULong_t addr)
Get First Darc board VME address.
ULong_t GetJtagVmeAddr() const
Get Jtag board VME address.
void SetJtagClockDiv(UInt_t clk)
Set Jtag board Clock Divider.
void SetSecondDarcConfig(UInt_t conf)
set configuration for Second Darc board
static const Int_t fgkFetNofRegisters
Number of registers for Fet.
UInt_t fSecondDarcGlobalL0
Global L0 delay for this board.
UChar_t fFirstDarcDisable
disable the readout of the 8 crates connected to this board
Int_t GetJtagNofLines() const
Get number of JTag lines.
UChar_t fEnableSecondDarc
Enable mask for Second Darc lines.
void SetSecondDarcType(Int_t type)
Set type for Second Darc board.
UInt_t GetGlobalCrateEnable() const
Get global crate enbale.
TString fSecondDarcCrateName[8]
Crate name for the Second Darc lines.
void SetFetRegister(Int_t index, UInt_t reg)
Set register for FET.
Bool_t GetFirstDarcDisable(Int_t iCrate) const
Get disable per regional crate for First Darc board.
Int_t GetFirstDarcType() const
Get type for First Darc board.
ULong_t fFirstDarcVmeAddr
First Darc Board VME Address.
UInt_t GetSecondDarcConfig() const
Get configuration for Second Darc board.
void SetFirstDarcL0Delay(UInt_t delay)
Set L0 Delay for First Darc board.
UInt_t GetJtagRdDelay() const
Get Jtag board Read out Delay.
void SetSecondDarcL1TimeOut(UInt_t time)
Set L1 Time Out for Second Darc board.
Bool_t GetSecondDarcDisable(Int_t iCrate) const
Get disable per regional crate for Second Darc board.
void SetSecondDarcL0Delay(UInt_t delay)
Set L0 Delay for Second Darc board.
ULong_t GetGlobalVmeAddr() const
Get Global board VME address.
UInt_t fFirstDarcL1TimeOut
L1 time out for this board.
TString fileName(const char *dir, int runNumber, const char *da, int i, const char *type)
static const Char_t * fgkFirstDarcName
First DARC board name.
Int_t GetDarcNofLines() const
Get number of Darc Crate lines.
ULong_t fJtagVmeAddr
JTag VME address.
Int_t GetFetNofRegisters() const
Get number of registers for FET.
void SetJtagRdDelay(UInt_t rd)
Set Jtag board Read out Delay.
void SetFirstDarcCrateName(Int_t index, TString name)
Set First Darc Crate names.
UInt_t fJtagClockDiv
Clock Divider number for JTag.
TString fFirstDarcCrateName[8]
Crate name for the First Darc lines.
static const Char_t * fgkSecondDarcName
Second DARC board name.
static const Char_t * fgkGlobalName
Global Board name.
UInt_t fFirstDarcConfig
Trigger configuration this board.
void SetFirstDarcGlobalL0(UInt_t time)
set global L0 delay for First Darc board
UChar_t GetEnableFirstDarc() const
Get First Darc enable word.
UInt_t fJtagRxPhase
Rx phase number for JTag.
UInt_t GetSecondDarcL1TimeOut() const
Get L1 Time Out for Second Darc board.
ULong_t fFetVmeAddr
Fet Board VME Address.
UInt_t GetFirstDarcL1TimeOut() const
Get L1 Time Out for First Darc board.
UInt_t fGlobalRegisters[13]
Global registers.
void SetFirstDarcL1TimeOut(UInt_t time)
Set L1 Time Out for First Darc board.
void SetGlobalVmeAddr(ULong_t addr)
Set Global board VME address.
UInt_t GetFirstDarcL0Delay() const
Get L0 Delay for First Darc board.
Bool_t GetMasksOn() const
Indicates if global masks are active on global inputs.
ULong_t fGlobalVmeAddr
Global Board VME Address.
Int_t fFirstDarcType
Type of the first Darc Board.
void SetFetVmeAddr(ULong_t addr)
Set FET board VME address.
const Char_t * GetSecondDarcName() const
Get Second Darc Name identifier.
static const Int_t fgkJtagNofLines
Number of lines for Jtag.
ULong_t GetFirstDarcVmeAddr() const
Get First Darc board VME address.
UInt_t fFirstDarcL0Delay
L0 delay for this board.
static const Int_t fgkDarcNofLines
Number of lines for Darc Crate.
void SetFirstDarcConfig(UInt_t conf)
set configuration for First Darc board
void SetSecondDarcDisable(UChar_t en)
Set disable word for Second Darc board.
UInt_t fSecondDarcL0Delay
L0 delay for this board.
void SetSecondDarcCrateName(Int_t index, TString name)
Set Second Darc Crate names.
UInt_t GetFirstDarcConfig() const
Get configuration for First Darc board.
static const Int_t fgkGlobalNofRegisters
Number of registers for Global Board.
const Char_t * GetFirstDarcName() const
Get First Darc Name identifier.
void SetJtagCrateName(Int_t index, TString name)
Set Jtag Crate names.
UInt_t fFetRegisters[7]
Fet registers.
UInt_t fGlobalCrateEnable
Global Crate Enable.
UInt_t fFirstDarcGlobalL0
L0 global l0 delay this board.
const Char_t * GetJtagName() const
Get Jtag Name identifier.
void SetEnableSecondDarc(UChar_t en)
Set Second Darc enable word.
UChar_t fSecondDarcDisable
disable the readout of the 8 crates connected to this board
UChar_t GetEnableJtag() const
Get Jtag enable word.
UInt_t GetSecondDarcL0Delay() const
Get L0 Delay for Second Darc board.
UInt_t fSecondDarcL1TimeOut
L1 time out for this board.
Int_t GetGlobalNofRegisters() const
Get number of registers for Global.
TString GetFirstDarcCrateName(Int_t index) const
Get First Darc Crate names.
const Char_t * GetGlobalName() const
Get Global Name identifier.
UInt_t * GetFetRegister()
Set register word for FET.
UChar_t fEnableFirstDarc
Enable mask for First Darc lines.
TString fJtagCrateName[16]
Crate name for the Jtag lines.
void SetJtagRxPhase(UInt_t rx)
Set Jtag board Rx Phase.
void SetGlobalCrateEnable(UInt_t enable)
set global crate enbale
AliMUONGlobalCrateConfig & operator=(const AliMUONGlobalCrateConfig &rhs)
Not implemented.
static const Char_t * fgkJtagName
JTag Board name.
void SetSecondDarcVmeAddr(ULong_t addr)
Set Second Darc board VME address.
UChar_t GetEnableSecondDarc() const
Get Second Darc enable word.
UInt_t fSecondDarcConfig
Trigger configuration this board.
Int_t ReadData(const TString &fileName="")
void SetGlobalMask(Int_t index, UInt_t mask)
Set mask for the global input.
UInt_t GetFirstDarcGlobalL0() const
Get global L0 delay for First Darc board.
UChar_t fEnableJtag
Enable mask for JTag lines.
UInt_t * GetGlobalRegister()
Get register word for Global.
void SetGlobalRegister(Int_t index, UInt_t reg)
Set register for Global.
UInt_t GetSecondDarcGlobalL0() const
Get global L0 delay for Second Darc board.
ULong_t GetFetVmeAddr() const
Get FET board VME address.
Int_t fSecondDarcType
Type of the first Darc Board.