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 */
11 * @file AliHLTPreprocessor.h
12 * @author Kenneth Aamodt, Sebastian Bablok
14 * @brief Declaration of the HLT preprocessor (used by the Offline Shuttle)
17 // see below for class documentation
19 // refer to README to build package
21 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
23 #include "AliPreprocessor.h"
26 * @class AliHLTPreprocessor
27 * Implementation of the HLT version for the Shuttle Preprocessor.
29 * @author Sebastian Bablok, Kenneth Aamodt
33 class AliHLTPreprocessor : public AliPreprocessor {
37 * Constructor for AliHLTPreprocessor
39 * @param shuttle pointer to the hosting shuttle
41 AliHLTPreprocessor(AliShuttleInterface* shuttle);
44 * Destructor for AliHLTPreprocessor
46 virtual ~AliHLTPreprocessor();
49 * Function to initilaize the Preprocessor.
51 * @param run run number
52 * @param startTime start time of data
53 * @param endTime end time of data
55 virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
58 * Function to process data. Inside the preparation and storing to OCDB
61 * @param dcsAliasMap the map containing aliases and corresponding DCS
62 * values and timestamps
64 * @return 0 on success; a value greater than 0 refers to an error
66 virtual UInt_t Process(TMap* dcsAliasMap);
69 * Indicates if DCS data can be processed.
71 * @return true if DCS data can be processed, else false.
73 virtual Bool_t ProcessDCS();
75 /** Define for HuffmanTable number */
76 static const Int_t fgkHuffmanTablesNum; // see above
78 /** Define for HuffmanFileBase */
79 static const char* fgkHuffmanFileBase; // see above
81 /** Define for Detector used for Huffman table */
82 static const char* fgkHuffmanFileDetector; // see above
84 /** Define for Temperature Histogram filename */
85 static const char* fgkTempHistoFileName; // see above
87 /** Define for name of the HLT Preproc */
88 static const char* fgkHLTPreproc; // see above
94 * Disabled Copy constructor
95 * (parent class is disabled so derived class does the same)
97 * @param preproc would be the AliHLTPreproc object to make copy of
99 AliHLTPreprocessor(const AliHLTPreprocessor& preproc);
102 * Disabled Assignment operator
103 * (parent class is disabled so derived class does the same)
105 * @param rhs the AliHLTPreproc to assign from
107 * @return reference to assinged AliHLTPreproc
109 AliHLTPreprocessor& operator=(const AliHLTPreprocessor& rhs);
112 * Stores the run number
114 Int_t fRun; // see above
117 * Stores the start time
119 UInt_t fStartTime; // see above
122 * Stores the end time
124 UInt_t fEndTime; // see above
127 ClassDef(AliHLTPreprocessor, 2);