- {
- public:
- AliHLTTRDTrackerV1Component();
- virtual ~AliHLTTRDTrackerV1Component();
-
- // Public functions to implement AliHLTComponent's interface.
- // These functions are required for the registration process
-
- const char* GetComponentID();
- void GetInputDataTypes( vector<AliHLTComponent_DataType>& list);
- AliHLTComponent_DataType GetOutputDataType();
- virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
- AliHLTComponent* Spawn();
+{
+protected:
+
+ class AliHLTTRDESDEvent : public AliESDEvent
+ {
+ // Here we use our own slim version of AliESDEvent
+ // by overwriting AliESDEvent::CreateStdContent
+ public:
+ void CreateStdContent();
+
+ // streamer function is prohibited, class for internal use only
+ void Streamer(TBuffer &R__b);
+ };
+
+public:
+ AliHLTTRDTrackerV1Component();
+ virtual ~AliHLTTRDTrackerV1Component();
+
+ // Public functions to implement AliHLTComponent's interface.
+ // These functions are required for the registration process
+
+ const char* GetComponentID();
+ void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
+ AliHLTComponentDataType GetOutputDataType();
+ int GetOutputDataTypes(AliHLTComponentDataTypeList& tgtList);
+ virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
+ AliHLTComponent* Spawn();
+ void GetOCDBObjectDescription(TMap* const targetMap);
+
+protected:
+ // Protected functions to implement AliHLTComponent's interface.
+ // These functions provide initialization as well as the actual processing
+ // capabilities of the component.
+
+ int DoInit( int argc, const char** argv );
+ int DoDeinit();
+ int DoEvent( const AliHLTComponentEventData& evtData,
+ const AliHLTComponentBlockData* blocks,
+ AliHLTComponent_TriggerData& /*trigData*/,
+ AliHLTUInt8_t* outputPtr,
+ AliHLTUInt32_t& size,
+ vector<AliHLTComponent_BlockData>& outputBlocks );
+ int Reconfigure(const char* cdbEntry, const char* chainId);
+ int ReadPreprocessorValues(const char* modules);
+
+ using AliHLTProcessor::DoEvent;
+
+ int Configure(const char* arguments);
+ virtual int SetParams();
+
+protected:
+ /** copy constructor prohibited */
+ AliHLTTRDTrackerV1Component(const AliHLTTRDTrackerV1Component&);
+ /** assignment operator prohibited */
+ AliHLTTRDTrackerV1Component& operator=(const AliHLTTRDTrackerV1Component&);
+
+ // The size of the output data produced, as a percentage of the input data's size.
+ // Can be greater than 100 (%)
+ unsigned fOutputPercentage; // Output volume in percentage of the input