3 #ifndef ALIHLTGLOBALFLATESDCONVERTERCOMPONENT_H
4 #define ALIHLTGLOBALFLATESDCONVERTERCOMPONENT_H
5 //* This file is property of and copyright by the ALICE HLT Project *
6 //* ALICE Experiment at CERN, All rights reserved. *
7 //* See cxx source for full Copyright notice *
9 // @file AliHLTGlobalFlatEsdConverterComponent.h
10 // @author Matthias Richter
12 // @brief Global ESD converter component.
15 #include "AliHLTProcessor.h"
16 #include "AliHLTComponentBenchmark.h"
21 * @class AliHLTGlobalFlatEsdConverterComponent
22 * Global collector for information designated for the HLT ESD.
24 * componentid: \b GlobalEsdConverter <br>
25 * componentlibrary: \b libAliHLTGlobal.so <br>
27 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
29 * write ESD directly to output (::kAliHLTDataTypeESDObject)
30 * this has been made the default behavior in Sep 2008.
32 * write ESD directly to TTree and to output (::kAliHLTDataTypeESDTree)
33 * \li -skipobject=name1,name2,... <br>
34 * comma separated list of ESD object names to be skipped, default is
35 * AliESDZDC,AliESDFMD,Cascades,Kinks,AliRawDataErrorLogs,AliESDACORDE
36 * leave blank to disable the option
38 * @ingroup alihlt_tpc_components
40 class AliHLTGlobalFlatEsdConverterComponent : public AliHLTProcessor
43 /** standard constructor */
44 AliHLTGlobalFlatEsdConverterComponent();
46 virtual ~AliHLTGlobalFlatEsdConverterComponent();
48 // interface methods of base class
49 const char* GetComponentID() {return "GlobalFlatEsdConverter";};
50 void GetInputDataTypes(AliHLTComponentDataTypeList& list);
51 AliHLTComponentDataType GetOutputDataType();
52 void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
53 AliHLTComponent* Spawn() {return new AliHLTGlobalFlatEsdConverterComponent;}
56 // interface methods of base class
57 int DoInit(int argc, const char** argv);
59 int DoEvent( const AliHLTComponentEventData& evtData,
60 const AliHLTComponentBlockData* blocks,
61 AliHLTComponentTriggerData& trigData,
62 AliHLTUInt8_t* outputPtr,
64 AliHLTComponentBlockDataList& outputBlocks );
66 using AliHLTProcessor::DoEvent;
70 /** copy constructor prohibited */
71 AliHLTGlobalFlatEsdConverterComponent(const AliHLTGlobalFlatEsdConverterComponent&);
72 /** assignment operator prohibited */
73 AliHLTGlobalFlatEsdConverterComponent& operator=(const AliHLTGlobalFlatEsdConverterComponent&);
76 * (Re)Configure from the CDB
77 * Loads the following objects:
78 * - HLT/ConfigHLT/SolenoidBz
80 int Reconfigure(const char* cdbEntry, const char* chainId);
83 * Configure the component.
84 * Parse a string for the configuration arguments and set the component
87 int Configure(const char* arguments);
90 int fVerbosity; //!transient
94 static const Int_t fkNPartition = 36*6; // number of patches in TPC
96 AliHLTComponentBenchmark fBenchmark; // benchmark
98 Bool_t fProduceFriend; // should it produce the flat ESD friend
100 ClassDef(AliHLTGlobalFlatEsdConverterComponent, 0)