1 #ifndef ALIHLTMUONTRACKERCALIBRATIONCOMPONENT_H
2 #define ALIHLTMUONTRACKERCALIBRATIONCOMPONENT_H
3 /* This file is property of and copyright by the ALICE HLT Project *
4 * ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// @file AliHLTMUONTrackerCalibratorComponent.h
11 /// @author Artur Szostak <artursz@iafrica.com>
13 /// @brief The calibration component for the muon tracking stations.
16 #include "AliHLTCalibrationProcessor.h"
21 * @class AliHLTMUONTrackerCalibratorComponent
23 * This class addapts the code found in MUON/MUONTRKda.cxx
25 class AliHLTMUONTrackerCalibratorComponent : public AliHLTCalibrationProcessor
29 AliHLTMUONTrackerCalibratorComponent();
30 virtual ~AliHLTMUONTrackerCalibratorComponent();
32 // Public functions to implement AliHLTComponent's interface.
33 // These functions are required for the registration process
35 virtual const char* GetComponentID();
36 virtual void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
37 virtual AliHLTComponentDataType GetOutputDataType();
38 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
39 virtual AliHLTComponent* Spawn();
43 using AliHLTCalibrationProcessor::ProcessCalibration;
44 using AliHLTCalibrationProcessor::ShipDataToFXS;
46 // Protected functions to implement AliHLTCalibrationProcessor's interface.
47 // These functions provide initialization as well as the actual processing
48 // capabilities of the component.
50 virtual Int_t InitCalibration();
51 virtual Int_t DeinitCalibration();
52 virtual Int_t ScanArgument(int argc, const char** argv);
53 virtual Int_t ProcessCalibration(const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
54 virtual Int_t ShipDataToFXS(const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
58 // Do not allow copying of this class.
59 AliHLTMUONTrackerCalibratorComponent(const AliHLTMUONTrackerCalibratorComponent& /*obj*/);
60 AliHLTMUONTrackerCalibratorComponent& operator = (const AliHLTMUONTrackerCalibratorComponent& /*obj*/);
62 TFitter* fFitter; //! Fitter used for gain calibration.
63 Int_t fSkipEvents; //! Number of events to skip initially.
64 Int_t fMaxEvents; //! Maximum number of events to process.
66 TString fFlatOutputFile; //! Flat file name.
67 TString fCrocusOutputFile; //! Crocus command file name.
68 TString fCrocusConfigFile; //! Crocus config file name.
70 Int_t fInjCharge; //! Injection charge.
71 Double_t fNoSigma; //! Number of sigmas.
72 Int_t fThreshold; //! Threshold.
74 ClassDef(AliHLTMUONTrackerCalibratorComponent, 0); // The online calibration processing component for the muon trigger.
78 #endif // ALIHLTMUONTRACKERCALIBRATIONCOMPONENT_H