New module TRIGGER (Chiara, Annalisa)
[u/mrichter/AliRoot.git] / TRIGGER / AliTRIPreprocessor.h
1 #ifndef ALI_TRI_PREPROCESSOR_H
2 #define ALI_TRI_PREPROCESSOR_H
3
4 class TMap;
5 class AliShuttleInterface;
6
7 #include "AliPreprocessor.h"
8
9 // Preprocessor for triggering detectors
10 // Every Triggering detector should implement his own ProcessDETTriggerData 
11 // function which will be called according to the TriggerDetectorMask 
12 // found in the DAQ logbook_trigger_clusters table
13
14 class AliTRIPreprocessor : public AliPreprocessor
15 {
16   public:
17     enum { kNDetectorsMap = 31 }; // number of entries in detectors_map as in /date/db/detCodes.h. Adding empty strings when there's an "empty" index
18
19     AliTRIPreprocessor(AliShuttleInterface* shuttle);
20     virtual ~AliTRIPreprocessor();
21     
22     Short_t ProcessSPDTriggerData();
23     Short_t ProcessTOFTriggerData();
24
25   protected:
26     virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
27     virtual UInt_t Process(TMap* /*dcsAliasMap*/);
28     virtual Bool_t ProcessDCS();
29
30   private:
31
32     static const char* fgkDetectorsMapName[kNDetectorsMap];  // names of detectors/systems in the DETECTORS_MAP in /date/db/detCodes.h
33
34     AliShuttleInterface *fShuttle;
35
36     ClassDef(AliTRIPreprocessor, 0);
37 };
38
39 #endif