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

          Line data    Source code
       1             : //-*- Mode: C++ -*-
       2             : // $Id$
       3             : 
       4             : #ifndef ALIHLTOUTHANDLERDETECTORDDL_H
       5             : #define ALIHLTOUTHANDLERDETECTORDDL_H
       6             : //* This file is property of and copyright by the                          * 
       7             : //* ALICE Experiment at CERN, All rights reserved.                         *
       8             : //* See cxx source for full Copyright notice                               *
       9             : 
      10             : /// @file   AliHLTOUTHandlerDetectorDDL.h
      11             : /// @author Matthias Richter
      12             : /// @date   2008-09-09
      13             : /// @brief  Default HLTOUT handler returning equipment id from data type and
      14             : ///         bit pattern in spec.
      15             : 
      16             : #include "AliHLTOUTHandlerEquId.h"
      17             : 
      18             : /**
      19             :  * @class AliHLTOUTHandlerDetectorDDL
      20             :  * A default handler class for DDL raw data redirection handlers.
      21             :  *
      22             :  * This class implements an AliHLTOUTHandlerEquId which extracts the
      23             :  * equipment Id from the bit pattern in the specification. All detectors
      24             :  * with up to 32 DDL links follow this convention. The bit no in the
      25             :  * data specification word corresponds to the DDL number within the
      26             :  * sub-detector.
      27             :  *
      28             :  * DDL offsets for sub-detectors can be fetched by means of AliDAQ.
      29             :  * The class must be initialized with the detector identification and the
      30             :  * data type it should be used for. 
      31             :  * @note The detector identification is according to AliDAQ. E.g. for ITS
      32             :  * and MUON there are ITSSPD, ITSSDD, ITSSSD, and MUONTRK and MUONTRG
      33             :  * respectively.
      34             :  *
      35             :  * @ingroup alihlt_aliroot_reconstruction
      36             :  */
      37             : class AliHLTOUTHandlerDetectorDDL : public AliHLTOUTHandlerEquId {
      38             :  public:
      39             :   /** constructor 
      40             :    * the class is initialized with the detector identification and the
      41             :    * data type it should be used for. Note: the detector identification
      42             :    * is according to AliDAQ. E.g. for ITS and MUON there are ITSSPD,
      43             :    * ITSSDD, ITSSSD, and MUONTRK and MUONTRG respectively.
      44             :    */
      45             :   AliHLTOUTHandlerDetectorDDL(const char* detector, AliHLTComponentDataType dt);
      46             :   /** standard destructor */
      47             :   virtual ~AliHLTOUTHandlerDetectorDDL();
      48             : 
      49             :   /**
      50             :    * Process a data block.
      51             :    * Derives the eqipment ID from the DDL offset of the detector and
      52             :    * the DDL no within the detector which corresponds to a bit in the
      53             :    * data specification. Only one bit is allowed to be set.
      54             :    * @return equipment id the block should be used for.
      55             :    */
      56             :   virtual int ProcessData(AliHLTOUT* pData);
      57             : 
      58             :  private:
      59             :   /** standard constructor prohibited */
      60             :   AliHLTOUTHandlerDetectorDDL();
      61             :   /** copy constructor prohibited */
      62             :   AliHLTOUTHandlerDetectorDDL(const AliHLTOUTHandlerDetectorDDL&);
      63             :   /** assignment operator prohibited */
      64             :   AliHLTOUTHandlerDetectorDDL& operator=(const AliHLTOUTHandlerDetectorDDL&);
      65             : 
      66             :   int fDDLOffset; //!transient
      67             :   int fNumberOfDDLs; //!transient
      68             :   AliHLTComponentDataType fDt; //!transient
      69             : 
      70         126 :   ClassDef(AliHLTOUTHandlerDetectorDDL, 0)
      71             : };
      72             : #endif

Generated by: LCOV version 1.11