source: trunk/MagicSoft/Mars/msimcamera/MSimTrigger.h@ 9256

Last change on this file since 9256 was 9256, checked in by tbretz, 16 years ago
*** empty log message ***
File size: 1.6 KB
Line 
1#ifndef MARS_MSimTrigger
2#define MARS_MSimTrigger
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8#ifndef MARS_MLut
9#include "MLut.h"
10#endif
11
12class MParList;
13class MParameterD;
14class MAnalogChannels;
15class MRawEvtHeader;
16class MRawRunHeader;
17
18class MSimTrigger : public MTask
19{
20private:
21 MAnalogChannels *fCamera; //! The analog input channels
22 MParameterD *fPulsePos; //! The intended pulse positon
23 MParameterD *fTrigger; //! The trigger position w.r.t. the analog channels
24 MRawRunHeader *fRunHeader; //! The run header storing infos about the digitization
25 MRawEvtHeader *fEvtHeader; //! The event header storing the trigger information
26
27 MLut fRouteAC; // Combinination map for the AC channels
28 MLut fCoincidenceMap; // channels for which digital coincidence is checked
29
30 TString fNameRouteAC; // Name for the AC routing
31 TString fNameCoincidenceMap; // Name for the coincidence mape
32
33 Float_t fDiscriminatorThreshold; // Discriminator threshold
34
35 // MSimTrigger
36 TObjArray *CalcCoincidence(const TObjArray &arr1, const TObjArray &arr2, Float_t gate=0) const;
37
38 // MTask
39 Int_t PreProcess(MParList *pList);
40 Int_t Process();
41
42public:
43 MSimTrigger(const char *name=NULL, const char *title=NULL);
44
45 void SetNameRouteAC(const char *name) { fNameRouteAC=name; }
46 void SetNameCoincidenceMap(const char *name) { fNameCoincidenceMap=name; }
47
48 void SetDiscriminatorThreshold(Float_t th) { fDiscriminatorThreshold=th; }
49
50 ClassDef(MSimTrigger, 0) // Task to simulate trigger electronics
51};
52
53#endif
Note: See TracBrowser for help on using the repository browser.