18 #if !defined(__CINT__) || defined(__MAKECINT__) 38 #include <TObjArray.h> 61 for (Int_t i = 15; i >= 0; i--) {
62 mask = (Int_t)TMath::Power(2,i);
63 printf(
"%1d",(s & mask) >> i);
74 for (Int_t i = 5; i >= 0; i--) {
75 mask = (Int_t)TMath::Power(2,i);
76 printf(
"%1d",(s & mask) >> i);
95 while ( ( cr = static_cast<AliMUONTriggerCrate*>(nextCrates->Next()) ) ) {
106 UShort_t regLocResp[16];
for (Int_t j=0; j<16; j++) regLocResp[j] = 0;
108 for (Int_t j = 1; j < boards->GetEntries(); j++) {
110 TObject *o = boards->At(j);
117 printf(
"...Board nr = %2d : ",++nrBoard);
118 printf(
"%3d %s in slot %2d of crate %s \n",board->
GetNumber(),board->GetName(),j,cr->GetName());
123 if (
debug)
printf(
"......Response = %x \n",response);
126 loLpt = response & 3;
127 loHpt = (response & 12) >> 2;
131 regLocResp[j-1] = response;
136 UShort_t rmask= crateConfig->
GetMask();
149 fGlobalTriggerBoard->
Reset();
152 printf(
"No valid trigger crate configuration in CDB\n");
156 for (Int_t i = 0; i < 4; i++) {
158 fGlobalTriggerBoard->
Mask(i,gmask);
163 UShort_t regional[16];
171 for (Int_t iSide = 0; iSide < 2; iSide++)
173 for (Int_t iReg = 0; iReg < 8; iReg++)
175 cr = fCrates->
Crate(iSide, iReg);
188 fGlobalTriggerBoard->
Scan(
"");
189 printf(
"Global trigger response = ");
230 Int_t circ, loLpt, loHpt, lutLpt[2], lutHpt[2];
231 TArrayS xPattern[235];
232 TArrayS yPattern[235];
234 for (Int_t ievent = 0; ievent < nEvents; ++ievent) {
236 for (Int_t i = 0; i < 234; i++) {
242 while ( (localTrig = static_cast<AliMUONLocalTrigger*>( nextLocal() )) ) {
244 if (localTrig->
IsNull())
continue;
248 loLpt = localTrig->
LoLpt();
249 loHpt = localTrig->
LoHpt();
251 lutLpt[0] = loLpt & 1;
252 lutLpt[1] = (loLpt & 2) >> 1;
253 lutHpt[0] = loHpt & 1;
254 lutHpt[1] = (loHpt & 2) >> 1;
257 static_cast<int>(lutLpt[1]<<1) +
258 static_cast<int>(lutHpt[0]<<2) +
259 static_cast<int>(lutHpt[1]<<3);
265 printf(
"Event %4d circ %3d loLpt %1d loHpt %1d resp %3d\n",ievent,circ,loLpt,loHpt,
locResp[circ]);
271 printf(
"............ for event %5d \n",ievent);
272 for (Int_t ic = 1; ic <= 234; ic++) {
274 UShort_t response =
locResp[ic];
275 loLpt = response & 3;
276 loHpt = (response & 12) >> 2;
277 printf(
"............ in circuit %3d loLpt %1d loHpt %1d resp %3d\n",ic,loLpt,loHpt,response);
void GetYPattern(TArrayS &array) const
return Y pattern array
void PrintGloBin(UShort_t s)
printf("Chi2/npoints = %f\n", TMath::Sqrt(chi2/npoints))
void ReadFromFile(AliMUONCalibrationData *calibData)
The class defines the configuration of global crate.
The class defines the configuration of trigger crate.
virtual TIterator * CreateLocalIterator() const =0
Create iterator on local trigger.
AliMUONRegionalTriggerConfig * RegionalTriggerConfig() const
Get the config for regional trigger.
UInt_t GetGlobalMask(Int_t index) const
Get mask for the global input.
virtual void Scan(Option_t *option) const
scan response of regional boards
An easy to use interface to MUON data.
void GetXPattern(TArrayS &array) const
return X pattern array
Int_t LoLpt() const
Return Low pt.
static Bool_t LoadDDLStore(Bool_t warn=false)
Int_t NumberOfCrates() const
AliMUONTriggerCrateStore * fCrates
void Mask(UShort_t mask)
set local boards enable
Regional trigger - real HW algorithm is implemented.
virtual void SetLocalResponse(UShort_t val[16])
Set Local trigger inputs.
Int_t LoHpt() const
Return High p.
TIterator * CreateCrateIterator() const
A container for AliMUONTriggerCrate objects.
Base class of a trigger information store.
virtual void Response()
virtual method for derivated classes
void PrintPattBin(Short_t s)
Int_t NumberOfEvents() const
Trigger board base class.
Reconstructed Local Trigger object.
AliMUONVTriggerStore * TriggerStore(Int_t event, const char *treeLetter="R")
Implementation of local trigger board objects.
AliMUONTriggerCrateConfig * FindTriggerCrate(TString crateName, Bool_t warn=true) const
AliMUONGlobalCrateConfig * GlobalTriggerCrateConfig() const
Get the configuration for the global trigger board.
virtual UShort_t GetResponse() const
Return response.
TIterator * cratesIterator
virtual void Reset()
Reset regional board responses.
void MUONReCalcGlobalTrigger(const char *input)
virtual Int_t GetNumber() const
Return Board number.
AliMUONRegionalTriggerConfig * regionalConfig
virtual void Response()
virtual method for derivated classes
void SetDefaultStorage(const char *dbString)
AliMUONCalibrationData * calibData
Single entry point to access MUON calibration data.
virtual void Reset()
virtual method for derivated classes
virtual TObjArray * Boards()
Return pointer to board objects.
virtual void SetRegionalResponse(UShort_t resp[16])
Set regional board responses.
static AliCDBManager * Instance(TMap *entryCache=NULL, Int_t run=-1)
AliMUONTriggerCrate * Crate(const char *crateName) const
Bool_t ReCalcGlobalTrigger(TIter *nextCrates)
Int_t LoCircuit() const
Return Circuit number.
The class defines the properties of regional trigger crate.
AliMUONGlobalTriggerBoard * fGlobalTriggerBoard
AliMUONGlobalCrateConfig * globalConfig
UShort_t GetMask() const
Return mask.
void Mask(Int_t index, UInt_t mask)
Set mask for global input (from regional boards)