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 */
9 /// \class AliMUONTriggerElectronics
10 /// \brief Manager class for muon trigger electronics
12 /// Client of trigger board classes
14 /// \author Rachid Guernane (LPCCFd)
24 class AliMUONTriggerCrate;
25 class AliMUONCalibrationData;
26 class AliMUONGlobalTriggerBoard;
27 class AliMUONTriggerCrateStore;
28 class AliMUONVTriggerStore;
29 class AliMUONVDigitStore;
31 class AliMUONTriggerElectronics : public TObject
34 AliMUONTriggerElectronics(AliMUONCalibrationData* calibData=0);
36 virtual ~AliMUONTriggerElectronics();
38 virtual void Factory(AliMUONCalibrationData* calibData);
39 void LoadMasks(AliMUONCalibrationData* calibData);
41 virtual void Feed(UShort_t pattern[2][4]);
42 virtual void Feed(const AliMUONVDigitStore& digitStore);
45 virtual void Scan(Option_t *option);
47 virtual void LocalResponse();
48 virtual void RegionalResponse();
49 virtual void GlobalResponse();
51 virtual void DumpOS();
53 virtual void Digits2Trigger(const AliMUONVDigitStore& digitStore,
54 AliMUONVTriggerStore& triggerStore);
57 /// Return Crate array
58 AliMUONTriggerCrateStore* GetCrateStore() {return fCrates;}
62 AliMUONTriggerElectronics(const AliMUONTriggerElectronics& right);
64 AliMUONTriggerElectronics& operator = (const AliMUONTriggerElectronics& right);
66 /// set copy card array
70 TList* fCopyXInput[2]; ///< list of copy X input from local to local board
71 TList* fCopyYInput[2]; ///< list of copy Y input from local to local board
72 AliMUONTriggerCrateStore *fCrates; ///< Crate array
73 AliMUONGlobalTriggerBoard *fGlobalTriggerBoard; ///< Global trigger board
75 ClassDef(AliMUONTriggerElectronics,4) //Manager class for muon trigger electronics