]>
Commit | Line | Data |
---|---|---|
95259bbb | 1 | #ifndef ALIHLTTRDCALIBRATIONCOMPONENT_H |
2 | #define ALIHLTTRDCALIBRATIONCOMPONENT_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /** @file AliHLTTRDCalibrationComponent.h | |
7 | @author Timm Steinbeck, Matthias Richter | |
8 | @date | |
9 | @brief Declaration of a TRDCalibration component. */ | |
10 | ||
11 | ||
12 | #include "AliHLTCalibrationProcessor.h" | |
13 | class AliCDBManager; | |
9aea5deb | 14 | class AliTRDCalibraFillHisto; |
95259bbb | 15 | |
16 | /** | |
17 | * @class AliHLTTRDCalibrationComponent | |
18 | * @brief A TRDCalibration HLT processing component. | |
19 | * | |
95259bbb | 20 | * - @ref InitCalibration (optional) |
21 | * - @ref ScanArgument (optional) | |
22 | * - @ref DeinitCalibration (optional) | |
23 | * - @ref ProcessCalibration | |
24 | * - @ref ShipDataToFXS | |
25 | * - @ref GetComponentID | |
26 | * - @ref GetInputDataTypes | |
27 | * - @ref GetOutputDataType | |
28 | * - @ref GetOutputDataSize | |
29 | * - @ref Spawn | |
30 | * @ingroup alihlt_tutorial | |
31 | */ | |
32 | class AliHLTTRDCalibrationComponent : public AliHLTCalibrationProcessor | |
33 | { | |
34 | public: | |
35 | AliHLTTRDCalibrationComponent(); | |
36 | virtual ~AliHLTTRDCalibrationComponent(); | |
37 | ||
38 | // Public functions to implement AliHLTComponent's interface. | |
39 | // These functions are required for the registration process | |
40 | ||
41 | const char* GetComponentID(); | |
42 | void GetInputDataTypes( vector<AliHLTComponent_DataType>& list); | |
43 | AliHLTComponent_DataType GetOutputDataType(); | |
44 | virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier ); | |
45 | AliHLTComponent* Spawn(); | |
46 | ||
47 | protected: | |
48 | ||
49 | // Protected functions to implement AliHLTComponent's interface. | |
50 | // These functions provide initialization as well as the actual processing | |
51 | // capabilities of the component. | |
9aea5deb | 52 | |
53 | AliTRDCalibraFillHisto *fTRDCalibraFillHisto; | |
54 | ||
95259bbb | 55 | virtual Int_t InitCalibration(); |
56 | virtual Int_t ScanArgument(int argc, const char** argv); | |
57 | virtual Int_t DeinitCalibration(); | |
d679dd6c | 58 | virtual Int_t ProcessCalibration(const AliHLTComponent_EventData& evtData, |
59 | const AliHLTComponent_BlockData* blocks, | |
60 | AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, | |
61 | AliHLTUInt32_t& size, | |
62 | vector<AliHLTComponent_BlockData>& outputBlocks); | |
63 | /* virtual Int_t ProcessCalibration( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData); */ | |
dc2e6604 | 64 | // virtual Int_t ShipDataToFXS( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData); |
d679dd6c | 65 | |
d76bc02a | 66 | using AliHLTCalibrationProcessor::ProcessCalibration; |
dc2e6604 | 67 | // using AliHLTCalibrationProcessor::ShipDataToFXS; |
d679dd6c | 68 | |
95259bbb | 69 | private: |
82da4652 | 70 | /** copy constructor prohibited */ |
71 | AliHLTTRDCalibrationComponent(const AliHLTTRDCalibrationComponent&); | |
72 | /** assignment operator prohibited */ | |
73 | AliHLTTRDCalibrationComponent& operator=(const AliHLTTRDCalibrationComponent&); | |
d679dd6c | 74 | TObjArray* FormOutput(); |
dc2e6604 | 75 | |
95259bbb | 76 | // The size of the output data produced, as a percentage of the input data's size. |
dc2e6604 | 77 | // Can be greater than 100 (%) |
95259bbb | 78 | unsigned fOutputPercentage; // Output volume in percentage of the input |
79 | string fStrorageDBpath; // Default path for OCDB | |
80 | AliCDBManager *fCDB; //! Pointer to OCDB | |
81 | ||
82 | ClassDef(AliHLTTRDCalibrationComponent, 0) | |
83 | ||
84 | }; | |
85 | #endif |