still keep old AliCFGrid implementation in AliCFContainer's example, for the moment
[u/mrichter/AliRoot.git] / HLT / rec / AliHLTPreprocessor.h
CommitLineData
33cc944d 1//-*- Mode: C++ -*-
2// @(#) $Id$
3
4#ifndef ALI_HLT_PREPROCESSOR_H
5#define ALI_HLT_PREPROCESSOR_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 AliHLTPreprocessor.h
12 * @author Kenneth Aamodt, Sebastian Bablok
13 * @date 2007-12-06
14 * @brief Declaration of the HLT preprocessor (used by the Offline Shuttle)
15 */
16
17// see below for class documentation
18// or
19// refer to README to build package
20// or
21// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
22
23#include "AliPreprocessor.h"
24
25/**
26 * @class AliHLTPreprocessor
27 * Implementation of the HLT version for the Shuttle Preprocessor.
28 *
29 * @author Sebastian Bablok, Kenneth Aamodt
30 *
31 * @date 2007-12-05
32 */
33class AliHLTPreprocessor : public AliPreprocessor {
34 public:
35
36 /**
37 * Constructor for AliHLTPreprocessor
38 *
39 * @param shuttle pointer to the hosting shuttle
40 */
41 AliHLTPreprocessor(AliShuttleInterface* shuttle);
42
43 /**
44 * Destructor for AliHLTPreprocessor
45 */
46 virtual ~AliHLTPreprocessor();
47
48 /**
49 * Function to initilaize the Preprocessor.
50 *
51 * @param run run number
52 * @param startTime start time of data
53 * @param endTime end time of data
54 */
55 virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
56
57 /**
58 * Function to process data. Inside the preparation and storing to OCDB
59 * should be handled.
60 *
61 * @param dcsAliasMap the map containing aliases and corresponding DCS
62 * values and timestamps
63 *
64 * @return 0 on success; a value greater than 0 refers to an error
65 */
66 virtual UInt_t Process(TMap* dcsAliasMap);
67
68 /**
69 * Indicates if DCS data can be processed.
70 *
71 * @return true if DCS data can be processed, else false.
72 */
73 virtual Bool_t ProcessDCS();
74
75 /** Define for HuffmanTable number */
76 static const Int_t fgkHuffmanTablesNum; // see above
77
78 /** Define for HuffmanFileBase */
79 static const char* fgkHuffmanFileBase; // see above
80
81 /** Define for Detector used for Huffman table */
82 static const char* fgkHuffmanFileDetector; // see above
83
84 /** Define for Temperature Histogram filename */
85 static const char* fgkTempHistoFileName; // see above
86
87 /** Define for name of the HLT Preproc */
88 static const char* fgkHLTPreproc; // see above
89
90 protected:
91
92 private:
93 /**
94 * Disabled Copy constructor
95 * (parent class is disabled so derived class does the same)
96 *
97 * @param preproc would be the AliHLTPreproc object to make copy of
98 */
99 AliHLTPreprocessor(const AliHLTPreprocessor& preproc);
100
101 /**
102 * Disabled Assignment operator
103 * (parent class is disabled so derived class does the same)
104 *
105 * @param rhs the AliHLTPreproc to assign from
106 *
107 * @return reference to assinged AliHLTPreproc
108 */
109 AliHLTPreprocessor& operator=(const AliHLTPreprocessor& rhs);
110
111 /**
112 * Stores the run number
113 */
114 Int_t fRun; // see above
115
116 /**
117 * Stores the start time
118 */
119 UInt_t fStartTime; // see above
120
121 /**
122 * Stores the end time
123 */
124 UInt_t fEndTime; // see above
125
126
127 ClassDef(AliHLTPreprocessor, 2);
128
129};
130
131
132#endif
133
134