]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/ZDC/AliHLTZDCESDRecoComponent.h
delete the temporary tree of clusters instead of Reset().
[u/mrichter/AliRoot.git] / HLT / ZDC / AliHLTZDCESDRecoComponent.h
CommitLineData
9e239e96 1//-*- Mode: C++ -*-
2// $Id: AliHLTZDCESDRecoComponent $
3
4#ifndef ALIHLTZDCESDRECOCOMPONENT_H
5#define ALIHLTZDCESDRECOCOMPONENT_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 AliHLTZDCESDRecoComponent.h
12 @author Chiara Oppedisano <Chiara.Oppedisano@to.infn.it>
13 @brief ZDC reconstruction component
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#include "AliESDEvent.h"
24
25class AliZDCReconstructor;
26class AliRawReaderMemory;
27
28
29/**
30 * @class AliHLTZDCESDRecoComponent
31 * Reconstruction of ZDC data
32 *
33 * <h2>General properties:</h2>
34 *
35 * Component ID: \b ZDCESDReco <br>
36 * Library: \b libAliHLTZDC.so <br>
37 * Input Data Types: @ref kAliHLTDataTypeDDLRaw <br>
38 * Output Data Types: @ref kAliHLTDataTypeESDContent|kAliHLTDataOriginZDC <br>
39 *
40 * <h2>Mandatory arguments:</h2>
41 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
42 *
43 * <h2>Optional arguments:</h2>
44 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
45 *
46 * <h2>Configuration:</h2>
47 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
48 *
49 * <h2>Default CDB entries:</h2>
50 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
51 *
52 * <tt>HLT/ConfigZDC/ZDCESDReco</tt>
53 * \li -TObjString object holding a string with the configuration parameters
54 * currently empty
55 *
56 * <tt>GRP/GRP/Data</tt>
57 * \li -GRP object - run information
58 *
59 *
60 * <h2>Performance:</h2>
61 *
62 * <h2>Memory consumption:</h2>
63 *
64 * <h2>Input size:</h2>
65 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
66 *
67 * \li pp: xx Byte
68 *
69 * <h2>Output size:</h2>
70 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
71 *
72 * \li pp: Average : xx kByte
73 *
74 * <h2>Macros Tests</h2>
75 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
76 *
77 * <tt>macros/makeConfigurationObjectZDCReconstruction.C</tt>
78 * \li - Create configuration TObjString
79 *
80 * <tt>macros/HLTZDCTest.C</tt>
81 * \li - Test macro for ZDC test in off-line environment
82 *
83 * <tt>macros/runZDCTest.sh</tt>
84 * \li - Run Test macro HLTZDCTest.C
85 *
86 * @ingroup alihlt_zdc
87 */
88class AliHLTZDCESDRecoComponent : public AliHLTProcessor
89{
90 public:
91
92 /** constructor */
93 AliHLTZDCESDRecoComponent();
94 /** destructor */
95 virtual ~AliHLTZDCESDRecoComponent();
96
97 /** interface function, see @ref AliHLTComponent for description */
98 const char* GetComponentID();
99 /** interface function, see @ref AliHLTComponent for description */
100 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
101 /** interface function, see @ref AliHLTComponent for description */
102 AliHLTComponentDataType GetOutputDataType();
103 /** interface function, see @ref AliHLTComponent for description */
104 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
105 /** interface function, see @ref AliHLTComponent for description */
106 AliHLTComponent* Spawn();
107
108
109 protected:
110 /** interface function, see @ref AliHLTComponent for description */
111 int DoInit( int argc, const char** argv );
112 /** interface function, see @ref AliHLTComponent for description */
113 int DoDeinit();
114 /** interface function, see @ref AliHLTComponent for description */
115 int DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
116 /** interface function, see @ref AliHLTComponent for description */
117 int ScanConfigurationArgument(int argc, const char** argv);
118 /** interface function, see @ref AliHLTComponent for description */
119 int Reconfigure(const char* cdbEntry, const char* chainId);
120 /** interface function, see @ref AliHLTComponent for description */
121 int ReadPreprocessorValues(const char* modules);
122
123 using AliHLTProcessor::DoEvent;
124
125
126 private:
127 /** copy constructor prohibited */
128 AliHLTZDCESDRecoComponent(const AliHLTZDCESDRecoComponent&);
129 /** assignment operator prohibited */
130 AliHLTZDCESDRecoComponent& operator=(const AliHLTZDCESDRecoComponent&);
131
9e239e96 132 /** rawreader instance */
133 AliRawReaderMemory *fRawReader; //! transient
134
135 /** ZDC reconstructor instance */
136 AliZDCReconstructor *fReconstructor; //! ZDC reconstructor
137
138 ClassDef(AliHLTZDCESDRecoComponent, 0)
139
140};
141
142#endif