]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/BASE/AliHLTProcessor.h
Major update required to handle old and new AliHLTEventDDL structures within HLT...
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTProcessor.h
index d8c8f32dd483bc82dca174c28ea157e7422b83fb..3b6b23c9e7c3254c081668f642abe1f08ddb9ebc 100644 (file)
@@ -43,11 +43,6 @@ class AliHLTProcessor : public AliHLTComponent {
   /** standard destructor */
   virtual ~AliHLTProcessor();
 
-  /* depricated */
-  int Init( AliHLTComponentEnvironment* environ, void* environParam, int argc, const char** argv );
-  /* depricated */
-  int Deinit();
-
   /**
    * Event processing function.
    * The method is called by the framework to process one event. After 
@@ -59,7 +54,7 @@ class AliHLTProcessor : public AliHLTComponent {
                    AliHLTComponentTriggerData& trigData,
                    AliHLTUInt8_t* outputPtr, 
                    AliHLTUInt32_t& size,
-                   vector<AliHLTComponentBlockData>& outputBlocks,
+                   AliHLTComponentBlockDataList& outputBlocks,
                    AliHLTComponentEventDoneData*& edd );
 
   // Information member functions for registration.
@@ -70,7 +65,7 @@ class AliHLTProcessor : public AliHLTComponent {
    */
   TComponentType GetComponentType() { return AliHLTComponent::kProcessor;}
 
- private:
+ protected:
   /**
    * The low-level data processing method for the component.
    * This is the custom processing method and can be overloaded by 
@@ -90,7 +85,7 @@ class AliHLTProcessor : public AliHLTComponent {
                       AliHLTComponentTriggerData& trigData,
                       AliHLTUInt8_t* outputPtr, 
                       AliHLTUInt32_t& size,
-                      vector<AliHLTComponentBlockData>& outputBlocks );
+                      AliHLTComponentBlockDataList& outputBlocks );
 
   /**
    * The high-level data processing method.
@@ -102,6 +97,23 @@ class AliHLTProcessor : public AliHLTComponent {
    */
   virtual int DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
 
-  ClassDef(AliHLTProcessor, 1)
+  // collection of debug counters
+  struct AliHLTProcessorCounters {
+    AliHLTProcessorCounters() : fReadoutFilter(0), fMonitoringFilter(0), fMonitoringEvent(0), fMismatch(0) {}
+    int fReadoutFilter;    // counter for the EDD readout filter
+    int fMonitoringFilter; // counter for the EDD monitoring filter
+    int fMonitoringEvent;  // counter for the EDD monitoring event
+    int fMismatch;         // counter for EDD format mismatch
+  };
+
+private:
+  /// copy contructor prohibited
+  AliHLTProcessor(const AliHLTProcessor&);
+  /// assignment operator prohibited
+  AliHLTProcessor& operator=(const AliHLTProcessor&);
+
+  AliHLTProcessorCounters* fpDebugCounters; // optional debugging counters
+
+  ClassDef(AliHLTProcessor, 2)
 };
 #endif