#include "AliHLTCalibrationProcessor.h"
class AliTPCcalibTime;
-class AliExternalTrackParam;
+class AliTPCcalibCalib;
class AliESDEvent;
+class AliESDtrack;
+class AliESDfriend;
class TObjArray;
+class AliTPCclusterMI;
/**
* @class AliHLTTPCCalibTimeComponent
*
- * Interface of the offline algorithm (AliTPCcalibTime) for correcting the
+ * Interface of the offline algorithm (AliTPCcalibTime) for estimating the
* drift velocity for changes of p and T as a function of
* time.
*
/** destructor */
virtual ~AliHLTTPCCalibTimeComponent();
+ /** the name of the component registered in macros and configurations */
const char* GetComponentID();
- void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
+
+ /** the data types the component subscribes to in memory */
+ void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
+
+ /** the data type the component produces */
AliHLTComponentDataType GetOutputDataType();
+
+ /** the size of the output data buffer */
virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
AliHLTComponent* Spawn();
// These functions provide initialization as well as the actual processing
// capabilities of the component.
- /** Initialize the calibration component. */
+ /** Initialize the calibration component */
Int_t InitCalibration();
- /** Scan commandline arguments of the calibration component. */
- Int_t ScanArgument( Int_t argc, const char** argv );
+ /** Scan commandline arguments of the calibration component */
+ Int_t ScanConfigurationArgument( Int_t argc, const char** argv );
- /** DeInitialize the calibration component. */
+ /** Clean up memory at the end of the run */
Int_t DeinitCalibration();
- /** Process the data in the calibration component. */
+ /** Process the data in the calibration component, called once per event */
Int_t ProcessCalibration( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData );
+
+ /** inherited from AliHLTComponent: handle re-configuration event */
+ int Reconfigure(const char* cdbEntry, const char* chainId);
- /** Ship the data to the FXS at end of run or eventmodulo. */
+ /** Ship the data to the FXS at end of run or event modulo (the first by default, the latter to be implemented if necessary). */
Int_t ShipDataToFXS( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData );
private:
+
/** copy constructor prohibited */
AliHLTTPCCalibTimeComponent(const AliHLTTPCCalibTimeComponent&);
+
/** assignment operator prohibited */
AliHLTTPCCalibTimeComponent& operator=(const AliHLTTPCCalibTimeComponent&);
- AliTPCcalibTime *fCalibTime; //!transient
- AliESDEvent *fESDEvent; //!transient
- TObjArray *fSeedArray; //!transient
+ AliTPCcalibTime *fCalibTime; //!transient
+ AliTPCcalibCalib *fCal; //!transient
+ AliESDEvent *fESDevent; //!transient
+ AliESDtrack *fESDtrack; //!transient
+ AliESDfriend *fESDfriend; //!transient
+ TObjArray *fSeedArray; //!transient
+ AliHLTUInt32_t fOutputSize;// output size
- AliHLTUInt8_t fMinPartition; // see above
- AliHLTUInt8_t fMaxPartition; // see above
- AliHLTUInt8_t fMinSlice; // see above
- AliHLTUInt8_t fMaxSlice; // see above
- AliHLTUInt32_t fSpecification; // see above
+ static const Int_t fkNPartition = 36*6; // number of partitions in TPC
+ AliTPCclusterMI *fPartitionClusters[fkNPartition]; //! arrays of cluster data for each TPC partition
+ Int_t fNPartitionClusters[fkNPartition]; //! number of clusters for each TPC partition
- /** Analyze calibration data before shipping to FXS */
- Bool_t fEnableAnalysis; // see above
+ /** the default configuration entry for this component */
+ static const char* fgkOCDBEntry; //!transient
- ClassDef(AliHLTTPCCalibTimeComponent, 0)
+ ClassDef(AliHLTTPCCalibTimeComponent, 5)
};
#endif