]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/ITS/AliHLTITSClusterFinderSSDComponent.h
- fix number of slice allocation in ESD track
[u/mrichter/AliRoot.git] / HLT / ITS / AliHLTITSClusterFinderSSDComponent.h
CommitLineData
5f2721d5 1
2#ifndef ALIHLTITSCLUSTERFINDERSSDCOMPONENT_H
3#define ALIHLTITSCLUSTERFINDERSSDCOMPONENT_H
4
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 *
8
9/** @file AliHLTITSClusterFinderSSDComponent.cxx
10 @author Gaute Øvrebekk <st05886@alf.uib.no>
11 @date
12 @brief Component to run the offline clusterfinder.
13*/
14
15#include "AliHLTProcessor.h"
16#include "AliRawReaderMemory.h"
17#include "AliITSClusterFinderV2SSD.h"
18#include "TClonesArray.h"
19#include "AliITSDetTypeRec.h"
20#include "AliITSCalibrationSSD.h"
21#include "AliITSgeom.h"
22#include "AliITSInitGeometry.h"
23
24/**
25 * @class AliHLTITSClusterFinderSSDComponent
26 * Component to run the offline clusterfinder.
27 *
28 * @ingroup alihlt_its_components
29 */
30
31class AliHLTITSClusterFinderSSDComponent : public AliHLTProcessor
32{
33 public:
34
35 /*
36 * ---------------------------------------------------------------------------------
37 * Constructor / Destructor
38 * ---------------------------------------------------------------------------------
39 */
40
41 /** constructor */
42 AliHLTITSClusterFinderSSDComponent();
43
44 /** destructor */
45 virtual ~AliHLTITSClusterFinderSSDComponent();
46
47 /*
48 * ---------------------------------------------------------------------------------
49 * Public functions to implement AliHLTComponent's interface.
50 * These functions are required for the registration process
51 * ---------------------------------------------------------------------------------
52 */
53
54 /** interface function, see @ref AliHLTComponent for description */
55 const char* GetComponentID();
56
57 /** interface function, see @ref AliHLTComponent for description */
58 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
59
60 /** interface function, see @ref AliHLTComponent for description */
61 AliHLTComponentDataType GetOutputDataType();
62
63 /** interface function, see @ref AliHLTComponent for description */
64 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
65
66 /** interface function, see @ref AliHLTComponent for description */
67 AliHLTComponent* Spawn();
68
69 protected:
70
71 /*
72 * ---------------------------------------------------------------------------------
73 * Protected functions to implement AliHLTComponent's interface.
74 * These functions provide initialization as well as the actual processing
75 * capabilities of the component.
76 * ---------------------------------------------------------------------------------
77 */
78
79 /** Initialization */
80 Int_t DoInit( int argc, const char** argv );
81
82 /** DeInitialization */
83 Int_t DoDeinit();
84
85 Int_t fNModules; // total number of modules
86
87 /** EventLoop */
88 //Int_t DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
89 // AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr
90 // ,AliHLTUInt32_t& size, AliHLTComponentBlockList& outputBlocks);
91
92 Int_t DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& /*trigData*/);
93
94 using AliHLTProcessor::DoEvent;
95
96 ///////////////////////////////////////////////////////////////////////////////////
97
98 private:
99
100 /** copy constructor prohibited */
101 AliHLTITSClusterFinderSSDComponent(const AliHLTITSClusterFinderSSDComponent&);
102 /** assignment operator prohibited */
103 AliHLTITSClusterFinderSSDComponent& operator=(const AliHLTITSClusterFinderSSDComponent&);
104
105 /*
106 * ---------------------------------------------------------------------------------
107 * Members - private
108 * ---------------------------------------------------------------------------------
109 */
110
111 /** the cluster finder object */
112 AliITSClusterFinderV2SSD* fClusterFinder; //!transient
113
114 /** the reader object for data decoding */
115 AliRawReaderMemory* fRawReader; //!transient
116
117 AliITSDetTypeRec* fDettype; //!transient
118
119 TClonesArray** fClusters; //!transient
120
121 AliITSCalibrationSSD* fcal; //!transient
122
123 AliITSgeom* fgeom; //!transient
124
125 AliITSInitGeometry* fgeomInit; //!transient
126
127 ClassDef(AliHLTITSClusterFinderSSDComponent, 0)
128
129 };
130#endif