]>
Commit | Line | Data |
---|---|---|
33a4976d | 1 | // -*- Mode: C++ -*- |
2 | // $Id$ | |
3 | ||
4 | #ifndef ALIHLTTPCCALIBSEEDMAKERCOMPONENT_H | |
5 | #define ALIHLTTPCCALIBSEEDMAKERCOMPONENT_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 AliHLTTPCCalibSeedMakerComponent.h | |
12 | @author Kalliopi Kanaki | |
13 | @date 2009-07-08 | |
14 | @brief A component to create TPC seeds from HLT clusters/tracks | |
15 | */ | |
16 | ||
17 | #include "AliHLTProcessor.h" | |
18 | ||
19 | //forward declarations | |
20 | class AliHLTTPCSpacePointData; | |
472dbf06 | 21 | class AliTPCParam; |
3d144ee9 | 22 | //class TClonesArray; |
1a5a7a38 | 23 | class TObjArray; |
3d144ee9 | 24 | class AliTPCclusterMI; |
25 | class TH2F; | |
33a4976d | 26 | |
27 | /** | |
28 | * @class AliHLTTPCCalibSeedMakerComponent | |
29 | * | |
30 | * | |
31 | * @ingroup alihlt_tpc_components | |
32 | */ | |
33 | ||
34 | class AliHLTTPCCalibSeedMakerComponent : public AliHLTProcessor { | |
35 | ||
36 | public: | |
37 | ||
38 | /** standard constructor */ | |
39 | AliHLTTPCCalibSeedMakerComponent(); | |
40 | /** destructor */ | |
41 | virtual ~AliHLTTPCCalibSeedMakerComponent(); | |
42 | ||
43 | // Public functions to implement AliHLTComponent's interface. | |
44 | // These functions are required for the registration process | |
45 | ||
46 | /** interface function, see AliHLTComponent for description */ | |
47 | const char* GetComponentID(); | |
48 | /** interface function, see AliHLTComponent for description */ | |
49 | void GetInputDataTypes( vector<AliHLTComponentDataType>& list); | |
50 | /** interface function, see AliHLTComponent for description */ | |
51 | AliHLTComponentDataType GetOutputDataType(); | |
52 | /** interface function, see AliHLTComponent for description */ | |
53 | int GetOutputDataTypes(AliHLTComponentDataTypeList& tgtList); | |
54 | /** interface function, see AliHLTComponent for description */ | |
55 | virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier ); | |
56 | /** interface function, see AliHLTComponent for description */ | |
57 | AliHLTComponent* Spawn(); | |
58 | /** function for acting on the saving and cleaning histograms, after they are filled */ | |
59 | ||
60 | protected: | |
61 | ||
62 | // Protected functions to implement AliHLTComponent's interface. | |
63 | // These functions provide initialization as well as the actual processing capabilities of the component. | |
64 | ||
65 | int DoInit( int argc, const char** argv ); | |
66 | int DoDeinit(); | |
67 | int DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData ); | |
68 | ||
69 | using AliHLTProcessor::DoEvent; | |
70 | ||
71 | private: | |
72 | ||
73 | /** copy constructor prohibited */ | |
74 | AliHLTTPCCalibSeedMakerComponent(const AliHLTTPCCalibSeedMakerComponent&); | |
75 | ||
76 | /** assignment operator prohibited */ | |
77 | AliHLTTPCCalibSeedMakerComponent& operator=(const AliHLTTPCCalibSeedMakerComponent&); | |
472dbf06 | 78 | AliTPCParam *fTPCGeomParam; //!transient |
33a4976d | 79 | |
3d144ee9 | 80 | //AliHLTTPCSpacePointData *fClustersArray[36][6]; //! transient |
81 | //UInt_t fNSpacePoints[36][6]; //! transient | |
82 | //TClonesArray *fSeedArray; // array of AliTPCseed objects | |
83 | //TObjArray *seedArray; // array of AliTPCseed arrays | |
1a5a7a38 | 84 | TObjArray *fSeedArray; |
3d144ee9 | 85 | |
86 | static const Int_t fkNPartition = 36*6; // number of patches in TPC | |
87 | AliTPCclusterMI *fPartitionClusters[fkNPartition]; //! arrays of cluster data for each TPC partition | |
88 | Int_t fNPartitionClusters[fkNPartition]; //! number of clusters for each TPC partition | |
89 | ||
90 | TH2F *fdEdx; // energy loss vs. momentum | |
91 | ||
1a5a7a38 | 92 | ClassDef(AliHLTTPCCalibSeedMakerComponent, 6) |
33a4976d | 93 | }; |
94 | ||
95 | #endif |