*/
int Init(AliHLTConfiguration* pConf, AliHLTComponentHandler* pCH);
+ /**
+ * Create the component.
+ * @param pConf configuration descritption
+ * @param pCH component handler
+ * @return component instance
+ */
+ virtual int CreateComponent(AliHLTConfiguration* pConf, AliHLTComponentHandler* pCH, AliHLTComponent*& pComponent) const;
+
/**
* De-Initialize the task.
* Final cleanup after the run. The @ref AliHLTComponent::Deinit method of
* processing, the data blocks are released. <br>
* The @ref StartRun method must be called before.
*/
- int ProcessTask(Int_t eventNo);
+ int ProcessTask(Int_t eventNo, AliHLTUInt32_t eventType=gkAliEventTypeData);
/**
* Determine the number of matching data block between the component and the
/** prohibited assignment operator */
AliHLTTask& operator=(const AliHLTTask&);
+ /**
+ * Custom initialization for child tasks.
+ */
+ virtual int CustomInit(AliHLTComponentHandler* pCH);
+
+ /**
+ * Custom clean up for child tasks.
+ */
+ virtual int CustomCleanup();
+
+ protected:
/** the configuration descriptor (external pointer) */
AliHLTConfiguration* fpConfiguration; //! transient
/** the component described by this task (created and deleted internally) */
AliHLTComponent* fpComponent; //! transient
/** the data buffer for the component processing */
AliHLTDataBuffer* fpDataBuffer; //! transient
+
+ private:
/** the list of targets (tasks which depend upon the current one) */
TList fListTargets; // see above
/** the list of sources (tasks upon which the current one depends) */