]>
Commit | Line | Data |
---|---|---|
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 | /// \ingroup sim | |
9 | /// \class AliMUONTriggerElectronics | |
10 | /// \brief Manager class for muon trigger electronics | |
11 | /// | |
12 | /// Client of trigger board classes | |
13 | /// | |
14 | /// \author Rachid Guernane (LPCCFd) | |
15 | ||
16 | #ifndef ROOT_TObject | |
17 | # include "TObject.h" | |
18 | #endif | |
19 | ||
20 | #ifndef ROOT_TString | |
21 | # include "TString.h" | |
22 | #endif | |
23 | ||
24 | class AliMUONTriggerCrate; | |
25 | class AliMUONCalibrationData; | |
26 | class AliMUONGlobalTriggerBoard; | |
27 | class AliMUONTriggerCrateStore; | |
28 | class AliMUONVTriggerStore; | |
29 | class AliMUONVDigitStore; | |
30 | ||
31 | class AliMUONTriggerElectronics : public TObject | |
32 | { | |
33 | public: | |
34 | AliMUONTriggerElectronics(AliMUONCalibrationData* calibData=0); | |
35 | ||
36 | virtual ~AliMUONTriggerElectronics(); | |
37 | ||
38 | virtual void Factory(AliMUONCalibrationData* calibData); | |
39 | void LoadMasks(AliMUONCalibrationData* calibData); | |
40 | ||
41 | virtual void Feed(UShort_t pattern[2][4]); | |
42 | virtual void Feed(const AliMUONVDigitStore& digitStore); | |
43 | virtual void Feed(const AliMUONVTriggerStore& triggerStore); | |
44 | virtual void Reset(); | |
45 | ||
46 | virtual void Scan(const Option_t *option); | |
47 | ||
48 | virtual void LocalResponse(); | |
49 | virtual void RegionalResponse(); | |
50 | virtual void GlobalResponse(); | |
51 | ||
52 | virtual void DumpOS(); | |
53 | ||
54 | virtual void Digits2Trigger(const AliMUONVDigitStore& digitStore, | |
55 | AliMUONVTriggerStore& triggerStore); | |
56 | ||
57 | virtual Bool_t ModifiedLocalResponse(Int_t loCircuit, | |
58 | Bool_t& bendingPlaneResp, | |
59 | Bool_t& nonBendingPlaneResp, | |
60 | Bool_t isCoinc44 = kFALSE, | |
61 | Int_t removeChamber = -1); | |
62 | ||
63 | virtual void ResponseRemovingChambers(AliMUONVTriggerStore& triggerStore); | |
64 | ||
65 | /// Return Crate array | |
66 | AliMUONTriggerCrateStore* GetCrateStore() {return fCrates;} | |
67 | ||
68 | private: | |
69 | /// Not implemented | |
70 | AliMUONTriggerElectronics(const AliMUONTriggerElectronics& right); | |
71 | /// Not implemented | |
72 | AliMUONTriggerElectronics& operator = (const AliMUONTriggerElectronics& right); | |
73 | ||
74 | void FeedCopyNeighbours(); | |
75 | ||
76 | /// set copy card array | |
77 | void SetCopyInput(); | |
78 | ||
79 | private: | |
80 | TList* fCopyXInput[2]; ///< list of copy X input from local to local board | |
81 | TList* fCopyYInput[2]; ///< list of copy Y input from local to local board | |
82 | AliMUONTriggerCrateStore *fCrates; ///< Crate array | |
83 | AliMUONGlobalTriggerBoard *fGlobalTriggerBoard; ///< Global trigger board | |
84 | ||
85 | ClassDef(AliMUONTriggerElectronics,4) //Manager class for muon trigger electronics | |
86 | }; | |
87 | #endif |