1 //* This file is property of and copyright by the ALICE HLT Project *
2 //* ALICE Experiment at CERN, All rights reserved. *
3 //* See cxx source for full Copyright notice *
5 /** @file AliHLTGlobalTrackMatcherComponent.h
6 @author Sergey Gorbunov
7 @brief Component for monitor V0 physics
12 #ifndef ALIHLTGLOBALTRACKMATCHERCOMPONENT_H
13 #define ALIHLTGLOBALTRACKMATCHERCOMPONENT_H
14 #include "AliHLTComponentBenchmark.h"
16 class AliHLTProcessor;
17 class AliHLTGlobalTrackMatcher;
18 class AliHLTCaloClusterReader;
21 * @class AliHLTTPCV0HistoComponent
22 * Component for monitor V0 physics
24 class AliHLTGlobalTrackMatcherComponent : public AliHLTProcessor
27 /** default constructor */
28 AliHLTGlobalTrackMatcherComponent();
30 virtual ~AliHLTGlobalTrackMatcherComponent();
32 // Public functions to implement AliHLTComponent's interface.
33 // These functions are required for the registration process
35 /** interface function, see AliHLTComponent for description */
36 const char* GetComponentID();
37 /** interface function, see AliHLTComponent for description */
38 void GetInputDataTypes(AliHLTComponentDataTypeList& list);
39 /** interface function, see AliHLTComponent for description */
40 AliHLTComponentDataType GetOutputDataType();
41 /** interface function, see AliHLTComponent for description */
42 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
43 /** interface function, see AliHLTComponent for description */
44 AliHLTComponent* Spawn();
46 ///Inherited from AliHLTComponent: Get list of OCDB objects
47 void GetOCDBObjectDescription( TMap* const targetMap); //Methods
51 // Protected functions to implement AliHLTComponent's interface.
52 // These functions provide initialization as well as the actual processing
53 // capabilities of the component.
55 /** interface function, see AliHLTComponent for description */
56 int DoInit( int argc, const char** argv );
57 /** interface function, see AliHLTComponent for description */
59 /** interface function, see AliHLTComponent for description */
61 //FOR METHOD extrapolation:
62 /// inherited from AliHLTComponent: handle re-configuration event
63 int Reconfigure(const char* cdbEntry, const char* chainId);
65 /// inherited from AliHLTComponent, scan one argument and
67 int ScanConfigurationArgument(int argc, const char** argv);
70 /// the default configuration entry for this component
71 const char* fOCDBEntry; // Method for TrackMatcher
73 int DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& trigData );
75 //int Reconfigure(const char* cdbEntry, const char* chainId);
77 using AliHLTProcessor::DoEvent;
79 Int_t fMethod; //TString for method choice for extrapolation
82 /** copy constructor prohibited */
83 AliHLTGlobalTrackMatcherComponent(const AliHLTGlobalTrackMatcherComponent&);
84 /** assignment operator prohibited */
85 AliHLTGlobalTrackMatcherComponent& operator=(const AliHLTGlobalTrackMatcherComponent&);
87 * Configure the component.
88 * Parse a string for the configuration arguments and set the component
91 // int Configure(const char* arguments);
94 AliHLTGlobalTrackMatcher * fTrackMatcher; //Instance of the track matcher class
96 Int_t fNEvents; //Number of events processed
98 Double_t fBz; //Magnetic field of event
100 AliHLTCaloClusterReader * fClusterReader; //Instance of helper class to read calorimeter structs
102 TObjArray * fTrackArray;
104 ClassDef(AliHLTGlobalTrackMatcherComponent, 0);