moved HLT preprocessor to libHLTshuttle; added HLT module preprocessor framework...
[u/mrichter/AliRoot.git] / HLT / SampleLib / AliHLTSamplePreprocessor.h
1 //-*- Mode: C++ -*-
2 // @(#) $Id: AliHLTSamplePreprocessor.h 23318 2008-01-14 12:43:28Z hristov $
3
4 #ifndef ALIHLTSAMPLEPREPROCESSOR_H
5 #define ALIHLTSAMPLEPREPROCESSOR_H
6 //* This file is property of and copyright by the ALICE HLT Project        * 
7 //* ALICE Experiment at CERN, All rights reserved.                         *
8 //* See cxx source for full Copyright notice                               */
9
10 /**
11  * @file   AliHLTSamplePreprocessor.h
12  * @author Kenneth Aamodt, Sebastian Bablok
13  * @date   2007-12-06
14  * @update 2008-01-22 formerly AliHLTPreprocessor splitted into modules
15  * @brief  HLT Preprocessor plugin for the AliHLTComp library
16  */
17
18 // see below for class documentation
19 // or
20 // refer to README to build package
21 // or
22 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
23
24 #include "AliHLTModulePreprocessor.h"
25
26 /**
27  * @class AliHLTSamplePreprocessor
28  * HLT preprocessor for the libAliHLTComp module.
29  *
30  * @author Jenny Wagner, Matthias Richter
31  *
32  * @date 2008-01-22
33  */
34 class AliHLTSamplePreprocessor : public AliHLTModulePreprocessor
35 {
36  public:
37         
38   /** Constructor */
39   AliHLTSamplePreprocessor();
40
41   /** Destructor */
42   ~AliHLTSamplePreprocessor();
43
44   /**
45    * Initialize the Preprocessor.
46    *
47    * @param run run number
48    * @param startTime start time of data
49    * @param endTime end time of data
50    */
51   void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
52
53   /**
54    * Function to process data. Inside the preparation and storing to OCDB
55    * should be handled.
56    *
57    * @param dcsAliasMap the map containing aliases and corresponding DCS
58    *                    values and timestamps
59    *
60    * @return 0 on success; error code otherwise
61    */
62   UInt_t Process(TMap* dcsAliasMap);
63
64   /** Define for Temperature Histogram filename */
65   static const char* fgkTempHistoFileName;              // see above
66
67  protected:
68
69  private:
70   /** copy constructor prohibited */
71   AliHLTSamplePreprocessor(const AliHLTSamplePreprocessor& preproc);
72   /** assignment operator prohibited */
73   AliHLTSamplePreprocessor& operator=(const AliHLTSamplePreprocessor& rhs);
74
75   /**
76    * Function fetch and prepare a dummy temperature histogram from the 
77    * HLT FXS.
78    *
79    * @return 0 in case of success, else an error code
80    */
81   UInt_t GetTempHisto();
82                 
83   ClassDef(AliHLTSamplePreprocessor, 0);
84 };
85 #endif