Additional protection and warning message.
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerElectronics.h
CommitLineData
516d3280 1#ifndef ALIMUONTRIGGERELECTRONICS_H
2#define ALIMUONTRIGGERELECTRONICS_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8//*-- Author: Rachid Guernane (LPCCFd)
9
10#ifndef ROOT_TTask
11# include "TTask.h"
12#endif
13
14#ifndef ROOT_TArrayI
15# include "TArrayI.h"
16#endif
17
18#ifndef ROOT_TString
19# include "TString.h"
20#endif
21
22class AliMUONTriggerCrate;
23class AliMUONData;
24class AliMUONGlobalTriggerBoard;
25class TClonesArray;
26
27class AliMUONTriggerElectronics : public TTask
28{
29 public:
30 AliMUONTriggerElectronics(AliMUONData* Data = 0);
31 virtual ~AliMUONTriggerElectronics();
32
33 virtual void Exec(Option_t*);
34
35// CRATE CONFIG FROM ASCII FILE
36 virtual void SetDataSource(TString SourceFile = "$ALICE_ROOT/MUON/data/CRATE.TXT")
37 {fSourceFileName = SourceFile;}
38
39 virtual void Factory();
40 virtual void AddCrate(char *name);
41
42 virtual AliMUONTriggerCrate* Crate(char *name);
43
44 virtual void Feed();
45 virtual void Feed(UShort_t pattern[2][4]);
8af755f4 46 virtual void FeedM();
516d3280 47
48 virtual void BoardName(Int_t ix, Int_t iy, char *name);
49
50 virtual void Reset();
51
52 virtual void Scan(Option_t *option);
53
54 virtual void LocalResponse();
55 virtual void RegionalResponse();
56 virtual void GlobalResponse();
57
58 virtual void BuildName(Int_t icirc, char name[20]);
59
60 virtual void DumpOS();
61
62 virtual void Digits2Trigger();
63 virtual void Trigger();
64 virtual void ClearDigitNumbers();
65 virtual void DigitFiredCircuit(Int_t circuit, Int_t cathode, Int_t chamber, Int_t digit);
66
67// virtual AliMUONData* GetMUONData() {return fMUONData;}
68
69 private:
70 TString fSourceFileName;
71 TClonesArray *fCrates;
72 AliMUONGlobalTriggerBoard *fGlobalTriggerBoard;
73 Int_t fNCrates;
74 static const Int_t fgkNCrates;
75 UShort_t fLocal[16][16]; // 16 crates of 16 LB
76 UShort_t fRegional[16];
77 UShort_t fGlobal;
78 AliMUONData *fMUONData; //! Data container for MUON subsystem
79 TArrayI fDigitNumbers[234]; //! The digit number that fired a circuit.
8af755f4 80 char **fCrateMap;
81 Int_t fBoardMap[234];
516d3280 82
83 ClassDef(AliMUONTriggerElectronics,1)
84};
85#endif