1 #ifndef ALIHLTPREDICTIONPROCESSORMTR_H
2 #define ALIHLTPREDICTIONPROCESSORMTR_H
3 /* This file is property of and copyright by the ALICE HLT Project *
4 * ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// @file AliHLTPredictionProcessorMTR.h
11 /// @author Artur Szostak <artursz@iafrica.com>
13 /// @brief Declaration of the muon trigger prediction processor.
16 #include "AliHLTPredictionProcessorInterface.h"
19 * This is the prediction processor for the muon trigger detector.
20 * It is required as part of the Pendolino interface so that data fetched from
21 * DCS can be transformed and extrapolated into a format suitable for the HCDB.
23 * At the moment this class does not really do anything, but will fill the
24 * HCDB with data in the future.
27 * http://wiki.kip.uni-heidelberg.de/ti/HLT/index.php/Pendolino-PredictionProcessor-Interface
28 * for more details about the Pendolino and preprocessor interfaces.
30 class AliHLTPredictionProcessorMTR : public AliHLTPredictionProcessorInterface
35 * The class constructor for the preprocessor.
36 * @param detector The detector name, which must be "MTR".
37 * @param pendolino A valid pointer to the pendolino instance.
39 AliHLTPredictionProcessorMTR(const char* detector, AliHLTPendolino* pendolino);
41 virtual ~AliHLTPredictionProcessorMTR();
43 // The following methods are inherited from AliHLTPredictionProcessorInterface.
46 * This function is called by the Pendolino before the fetched DCS data
47 * is handed in for (prediction) processing.
49 * @param doPrediction If true then preprocessed data will be extrapolated
50 * to the current time. Otherwise no extrapolation will be
51 * performed if false. The default is to perform extrapolations.
53 * @return Currently always returns 0 for success.
55 virtual UInt_t makePrediction(Bool_t doPrediction = true);
58 * Performs initialisation of the preprocessor.
59 * At the moment just basic sanity checks are performed.
61 * @param run The current run number.
62 * @param startTime The start time (earliest timestamp) of the data.
63 * @param endTime The end time (latest timestamp) of the data.
65 virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
68 * Process the DCS values.
69 * At the moment nothing is done here.
71 * @param dcsAliasMap The map containing aliases and corresponding DCS
72 * values and timestamps
74 * @return At the moment 0 is always returned for success.
76 virtual UInt_t Process(TMap* dcsAliasMap);
79 * Indicates that the DCS data shall be processed.
80 * NOTE: should always return true, since it is used as prediction
81 * processor, which will only process DCS data
83 * @return Always returns the value kTRUE.
85 virtual Bool_t ProcessDCS() { return kTRUE; };
89 // Do not allow copying of this class.
90 AliHLTPredictionProcessorMTR(const AliHLTPredictionProcessorMTR& /*obj*/);
91 AliHLTPredictionProcessorMTR& operator = (const AliHLTPredictionProcessorMTR& /*obj*/);
93 Bool_t fPredict; //! Flag indicating if the processed values should be extrapolated to current time.
95 ClassDef(AliHLTPredictionProcessorMTR, 0); // The prediction processor for the muon trigger detector.
98 #endif // ALIHLTPREDICTIONPROCESSORMTR_H