]>
Commit | Line | Data |
---|---|---|
18ada816 | 1 | //-*- Mode: C++ -*- |
ec6160d5 | 2 | // $Id$ |
3 | #ifndef ALIHLTGLOBALTRACKMERGERCOMPONENT_H | |
4 | #define ALIHLTGLOBALTRACKMERGERCOMPONENT_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 * | |
8 | ||
9 | /** @file AliHLTGlobalTrackMergerComponent.h | |
10 | @author Jacek Otwinowski | |
11 | @date | |
12 | @brief HLT global track merger component. | |
13 | */ | |
14 | ||
18ada816 | 15 | #include "AliHLTGlobalEsdConverterComponent.h" |
ec6160d5 | 16 | |
ec6160d5 | 17 | class AliHLTGlobalTrackMerger; |
18 | ||
19 | /** | |
20 | * @class AliHLTGlobalTrackMergerComponent | |
21 | * The global track merger component | |
22 | * | |
23 | * @ingroup alihlt_global_components | |
24 | * @author Jacek.Otwinowski@gsi.de | |
25 | */ | |
18ada816 | 26 | class AliHLTGlobalTrackMergerComponent : public AliHLTGlobalEsdConverterComponent |
ec6160d5 | 27 | { |
28 | public: | |
29 | /** standard constructor */ | |
30 | AliHLTGlobalTrackMergerComponent(); | |
31 | /** standard destructor */ | |
32 | virtual ~AliHLTGlobalTrackMergerComponent(); | |
33 | ||
34 | // Public functions to implement AliHLTComponent's interface. | |
35 | // These functions are required for the registration process | |
36 | ||
37 | /** @see component interface AliHLTComponent::GetComponentID */ | |
38 | const char* GetComponentID(); | |
39 | ||
40 | /** @see component interface AliHLTComponent::GetInputDataTypes */ | |
41 | void GetInputDataTypes(AliHLTComponentDataTypeList& list); | |
42 | ||
43 | /** @see component interface AliHLTComponent::GetOutputDataType */ | |
18ada816 | 44 | // AliHLTComponentDataType GetOutputDataType(); |
ec6160d5 | 45 | |
46 | /** @see component interface AliHLTComponent::GetOutputDataSize */ | |
18ada816 | 47 | // virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier ); |
ec6160d5 | 48 | |
49 | /** @see component interface AliHLTComponent::Spawn */ | |
50 | AliHLTComponent* Spawn(); | |
51 | ||
52 | protected: | |
53 | ||
54 | /** | |
55 | * Set the parameters | |
56 | */ | |
a9f060e5 | 57 | //void SetMergerParameters(Double_t maxy=2.0,Double_t maxz=3.0, |
58 | // Double_t maxsnp=0.1,Double_t maxtgl=0.05, Double_t signed1Pt=0.003); | |
59 | void SetMergerParameters(Double_t maxy=1.e10,Double_t maxz=1.e10, | |
60 | Double_t maxsnp=1.e10,Double_t maxtgl=1.e10, Double_t signed1Pt=0.05); | |
ec6160d5 | 61 | |
62 | // Protected functions to implement AliHLTComponent's interface. | |
63 | // These functions provide initialization as well as the actual processing | |
64 | // capabilities of the component. | |
65 | ||
66 | ||
67 | /** @see component interface AliHLTComponent::DoInit */ | |
68 | int DoInit( int argc, const char** argv ); | |
69 | ||
70 | /** @see component interface AliHLTComponent::DoDeinit */ | |
71 | int DoDeinit(); | |
72 | ||
73 | /** @see component interface @ref AliHLTProcessor::DoEvent */ | |
18ada816 | 74 | int DoEvent( const AliHLTComponentEventData& evtData, |
75 | AliHLTComponentTriggerData& trigData); | |
ec6160d5 | 76 | |
18ada816 | 77 | using AliHLTProcessor::DoEvent; |
ec6160d5 | 78 | |
79 | private: | |
80 | /** copy constructor prohibited */ | |
81 | AliHLTGlobalTrackMergerComponent(const AliHLTGlobalTrackMergerComponent&); | |
82 | /** assignment operator prohibited */ | |
83 | AliHLTGlobalTrackMergerComponent& operator=(const AliHLTGlobalTrackMergerComponent&); | |
84 | ||
85 | AliHLTGlobalTrackMerger *fGlobalTrackMerger; //! global track merger | |
ec6160d5 | 86 | |
87 | ClassDef(AliHLTGlobalTrackMergerComponent, 0) | |
88 | ||
89 | }; | |
90 | #endif |