]>
Commit | Line | Data |
---|---|---|
eb84342b | 1 | //-*- Mode: C++ -*- |
2 | // $Id: AliHLTGlobalEsdToFlatConverterComponent $ | |
3 | ||
4 | #ifndef ALIHLTESDTOFLATCONVERTERCOMPONENT_H | |
5 | #define ALIHLTESDTOFLATCONVERTERCOMPONENT_H | |
6 | ||
7 | /* This file is property of and copyright by the ALICE HLT Project * | |
8 | * ALICE Experiment at CERN, All rights reserved. * | |
9 | * See cxx source for full Copyright notice */ | |
10 | ||
11 | /** @file AliHLTGlobalEsdToFlatConverterComponent.h | |
12 | @author Steffen Weber <s.weber@gsi.de> | |
13 | @brief Component to convert ESD objects to flatESD objects | |
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 "AliHLTProcessor.h" | |
23 | ||
24 | class TH1F; | |
25 | class TList; | |
26 | ||
27 | class AliESDVZERO; | |
28 | class AliESDtrackCuts; | |
29 | class AliHLTCTPData; | |
30 | class AliHLTMultiplicityCorrelations; | |
31 | class AliHLTGlobalTriggerDecision; | |
32 | class AliHLTTestInputHandler; | |
33 | ||
34 | class AliHLTGlobalEsdToFlatConverterComponent : public AliHLTProcessor { | |
35 | public: | |
36 | ||
37 | /* | |
38 | * --------------------------------------------------------------------------------- | |
39 | * Constructor / Destructor | |
40 | * --------------------------------------------------------------------------------- | |
41 | */ | |
42 | ||
43 | /** constructor */ | |
44 | AliHLTGlobalEsdToFlatConverterComponent(); | |
45 | ||
46 | /** destructor */ | |
47 | virtual ~AliHLTGlobalEsdToFlatConverterComponent(); | |
48 | ||
49 | /* | |
50 | * --------------------------------------------------------------------------------- | |
51 | * Public functions to implement AliHLTComponent's interface. | |
52 | * These functions are required for the registration process | |
53 | * --------------------------------------------------------------------------------- | |
54 | */ | |
55 | ||
56 | /** interface function, see @ref AliHLTComponent for description */ | |
57 | const Char_t* GetComponentID(); | |
58 | ||
59 | /** interface function, see @ref AliHLTComponent for description */ | |
60 | void GetInputDataTypes( vector<AliHLTComponentDataType>& list); | |
61 | ||
62 | /** interface function, see @ref AliHLTComponent for description */ | |
63 | AliHLTComponentDataType GetOutputDataType(); | |
64 | ||
65 | /** interface function, see @ref AliHLTComponent for description */ | |
a88a189e | 66 | int GetOutputDataTypes(AliHLTComponentDataTypeList& tgtList); |
67 | ||
68 | /** interface function, see @ref AliHLTComponent for description */ | |
eb84342b | 69 | void GetOutputDataSize( ULong_t& constBase, Double_t& inputMultiplier ); |
70 | ||
71 | /** interface function, see @ref AliHLTComponent for description */ | |
e2346810 | 72 | // void GetOCDBObjectDescription( TMap* const targetMap); |
eb84342b | 73 | |
74 | /** interface function, see @ref AliHLTComponent for description */ | |
75 | AliHLTComponent* Spawn(); | |
76 | ||
77 | protected: | |
78 | ||
79 | /* | |
80 | * --------------------------------------------------------------------------------- | |
81 | * Protected functions to implement AliHLTComponent's interface. | |
82 | * These functions provide initialization as well as the actual processing | |
83 | * capabilities of the component. | |
84 | * --------------------------------------------------------------------------------- | |
85 | */ | |
86 | ||
87 | // AliHLTComponent interface functions | |
88 | ||
89 | /** interface function, see @ref AliHLTComponent for description */ | |
90 | Int_t DoInit( Int_t /*argc*/, const Char_t** /*argv*/ ); | |
91 | ||
92 | /** interface function, see @ref AliHLTComponent for description */ | |
93 | Int_t DoDeinit(); | |
94 | ||
95 | /** interface function, see @ref AliHLTComponent for description */ | |
96 | int DoEvent( const AliHLTComponentEventData& evtData, | |
97 | const AliHLTComponentBlockData* blocks, | |
98 | AliHLTComponentTriggerData& trigData, | |
99 | AliHLTUInt8_t* outputPtr, | |
100 | AliHLTUInt32_t& size, | |
101 | AliHLTComponentBlockDataList& outputBlocks); | |
102 | ||
103 | using AliHLTProcessor::DoEvent; | |
104 | ||
105 | ||
106 | /** | |
107 | * Configure the component. | |
108 | * Parse a string for the configuration arguments and set the component | |
109 | * properties. | |
110 | */ | |
111 | int Configure(const char* arguments); | |
112 | ||
113 | /** interface function, see @ref AliHLTComponent for description */ | |
114 | Int_t Reconfigure(const Char_t* cdbEntry, const Char_t* chainId); | |
115 | ||
116 | /** interface function, see @ref AliHLTComponent for description */ | |
117 | Int_t ReadPreprocessorValues(const Char_t* modules); | |
118 | ||
119 | /////////////////////////////////////////////////////////////////////////////////// | |
120 | ||
121 | private: | |
122 | ||
123 | /* | |
124 | * --------------------------------------------------------------------------------- | |
125 | * Private functions to implement AliHLTComponent's interface. | |
126 | * These functions provide initialization as well as the actual processing | |
127 | * capabilities of the component. | |
128 | * --------------------------------------------------------------------------------- | |
129 | */ | |
130 | ||
131 | /** copy constructor prohibited */ | |
132 | AliHLTGlobalEsdToFlatConverterComponent(const AliHLTGlobalEsdToFlatConverterComponent&); | |
133 | ||
134 | /** assignment operator prohibited */ | |
135 | AliHLTGlobalEsdToFlatConverterComponent& operator=(const AliHLTGlobalEsdToFlatConverterComponent&); | |
136 | ||
137 | ||
138 | /* | |
139 | * --------------------------------------------------------------------------------- | |
140 | * Helper | |
141 | * --------------------------------------------------------------------------------- | |
142 | */ | |
143 | ||
144 | /* | |
145 | * --------------------------------------------------------------------------------- | |
146 | * Members - private | |
147 | * --------------------------------------------------------------------------------- | |
148 | */ | |
149 | ||
150 | /** UID for merging */ | |
151 | ||
152 | ClassDef(AliHLTGlobalEsdToFlatConverterComponent, 0) | |
153 | }; | |
154 | #endif |