]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/global/AliHLTGlobalPreprocessor.h
- new gain calibb
[u/mrichter/AliRoot.git] / HLT / global / AliHLTGlobalPreprocessor.h
CommitLineData
a37fc0f5 1//-*- Mode: C++ -*-
2// $Id$
3
4#ifndef ALIHLTGLOBALPREPROCESSOR_H
5#define ALIHLTGLOBALPREPROCESSOR_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// @file AliHLTGlobalPreprocessor.h
11// @author Matthias Richter
12// @date 2010-08-20
13// @brief HLT Preprocessor plugin for global HLT
14//
15
16// see below for class documentation
17// or
18// refer to README to build package
19// or
20// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
21
22#include "AliHLTModulePreprocessor.h"
23
24/**
25 * @class AliHLTGlobalPreprocessor
26 * HLT preprocessor for global HLT objects
27 *
28 * <h2>Produced OCDB objects:</h2>
29 * - HLT/Calib/Streamerinfo <br>
30 * The streamer info object is produced by the ROOTSchemaEvolutionComponent
31 * See ProcessStreamerInfo() for details.
32 *
33 * @author Matthias Richter
34 */
35class AliHLTGlobalPreprocessor : public AliHLTModulePreprocessor
36{
37 public:
38
39 /** Standard Constructor */
40 AliHLTGlobalPreprocessor();
41
42 /** Destructor */
43 ~AliHLTGlobalPreprocessor();
44
45 /**
46 * Initialize the Preprocessor.
47 *
48 * @param run run number
49 * @param startTime start time of data
50 * @param endTime end time of data
51 */
52 void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
53
54 /**
55 * Function to process data. Inside the preparation and storing to OCDB
56 * should be handled.
57 *
58 * @param dcsAliasMap the map containing aliases and corresponding DCS
59 * values and timestamps
60 *
61 * @return 0 on success; error code otherwise
62 */
63 UInt_t Process(TMap* dcsAliasMap);
64
65 /** Define bit mask of the active detectors needed by this preprocessor module */
66 Int_t GetModuleNumber();
67
68 /// DCS alias 'StreamerInfo' -> Calib/StreamerInfo
69 static const char* fgkStreamerInfoAlias;
70 static const char* fgkStreamerInfoName;
71 static const char* fgkStreamerInfoType;
72
73 protected:
74
75 private:
76 /** copy constructor prohibited */
77 AliHLTGlobalPreprocessor(const AliHLTGlobalPreprocessor& preproc);
78 /** assignment operator prohibited */
79 AliHLTGlobalPreprocessor& operator=(const AliHLTGlobalPreprocessor& rhs);
80
81 int ProcessStreamerInfo(TObject* object);
82
83 ClassDef(AliHLTGlobalPreprocessor, 0);
84};
85#endif