LCOV - code coverage report
Current view: top level - HLT/BASE - AliHLTOUTTask.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 1 100.0 %
Date: 2016-06-14 17:26:59 Functions: 1 11 9.1 %

          Line data    Source code
       1             : //-*- Mode: C++ -*-
       2             : // $Id$
       3             : #ifndef ALIHLTOUTTASK_H
       4             : #define ALIHLTOUTTASK_H
       5             : //* This file is property of and copyright by the ALICE HLT Project        * 
       6             : //* ALICE Experiment at CERN, All rights reserved.                         *
       7             : //* See cxx source for full Copyright notice                               *
       8             : 
       9             : /** @file   AliHLTOUTTask.h
      10             :     @author Matthias Richter
      11             :     @date   
      12             :     @brief  A special HLTOUT sibling working as a data sink in chains
      13             : */
      14             : 
      15             : #include "AliHLTOUT.h"
      16             : #include "AliHLTDumpTask.h"
      17             : 
      18             : /**
      19             :  * @class AliHLTOUTTask
      20             :  * A special HLTOUT sibling implementing AliHLTDataSink functionality in
      21             :  * order to be run at the end of a reconstruction chain and generation of
      22             :  * an HLTOUT sub-collection.
      23             :  * 
      24             :  * The constructor takes the chains as a blank separated list of chain ids.
      25             :  *
      26             :  * @ingroup alihlt_system
      27             :  */
      28             : class AliHLTOUTTask : public AliHLTOUT, public AliHLTDumpTask {
      29             :  public:
      30             :   /** constructor */
      31             :   AliHLTOUTTask(const char* chains);
      32             :   /** standard destructor */
      33             :   virtual ~AliHLTOUTTask();
      34             : 
      35             :  protected:
      36             : 
      37             :  private:
      38             :   /** standard constructor prohibited */
      39             :   AliHLTOUTTask();
      40             :   /** copy constructor prohibited */
      41             :   AliHLTOUTTask(const AliHLTOUTTask&);
      42             :   /** assignment operator prohibited */
      43             :   AliHLTOUTTask& operator=(const AliHLTOUTTask&);
      44             : 
      45             :   /**
      46             :    * Generate the index of the HLTOUT data.
      47             :    * Must be implemented by the child classes.
      48             :    */
      49             :   int GenerateIndex();
      50             : 
      51             :   /**
      52             :    * Cleanup and reset the data input.
      53             :    */
      54             :   int ResetInput();
      55             : 
      56             :   /**
      57             :    * Get the data buffer
      58             :    * @param [in] index    index of the block
      59             :    * @param [out] pBuffer buffer of the selected data block
      60             :    * @param [out] size    size of the selected data block
      61             :    */
      62             :   int GetDataBuffer(AliHLTUInt32_t index, const AliHLTUInt8_t* &pBuffer, 
      63             :                     AliHLTUInt32_t& size);
      64             : 
      65             :   /**
      66             :    * Check byte order of data block
      67             :    */
      68             :   AliHLTOUTByteOrder CheckBlockByteOrder(AliHLTUInt32_t index);
      69             : 
      70             :   /**
      71             :    * Check alignment of data block
      72             :    */
      73             :   int CheckBlockAlignment(AliHLTUInt32_t index, AliHLTOUT::AliHLTOUTDataType type);
      74             : 
      75         126 :   ClassDef(AliHLTOUTTask, 1)
      76             : };
      77             : #endif

Generated by: LCOV version 1.11