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

          Line data    Source code
       1             : /**************************************************************************
       2             :  * This file is property of and copyright by the ALICE HLT Project        *
       3             :  * All rights reserved.                                                   *
       4             :  *                                                                        *
       5             :  * Primary Authors: Markus Fasel                                          *
       6             :  *                                                                        *
       7             :  * Permission to use, copy, modify and distribute this software and its   *
       8             :  * documentation strictly for non-commercial purposes is hereby granted   *
       9             :  * without fee, provided that the above copyright notice appears in all   *
      10             :  * copies and that both the copyright notice and this permission notice   *
      11             :  * appear in the supporting documentation. The authors make no claims     *
      12             :  * about the suitability of this software for any purpose. It is          *
      13             :  * provided "as is" without express or implied warranty.                  *
      14             :  **************************************************************************/
      15             : #ifndef AliHLTEMCALRawAnalyzerComponentSTU_H
      16             : #define AliHLTEMCALRawAnalyzerComponentSTU_H
      17             : 
      18             : /**
      19             :  * @file AliHLTEMCALTriggerRawDigitMaker.h
      20             :  * @brief  Component converting raw data to EMCAL digits
      21             :  * @author Markus Fasel <markus.fasel@cern.ch>
      22             :  * @date Nov 3, 2015
      23             :  */
      24             : 
      25             : #include "AliHLTCaloConstants.h"
      26             : #include "AliHLTCaloProcessor.h"
      27             : #include <vector>
      28             : 
      29             : class AliEMCALTriggerData;
      30             : class AliHLTCaloMapper;
      31             : class AliHLTEMCALGeometry;
      32             : class AliHLTEMCALSTURawDigitMaker;
      33             : class AliRawReaderMemory;
      34             : 
      35             : /**
      36             :  * @class AliHTLEMCALTriggerRawDigitMaker
      37             :  * @brief Creating EMCAL Raw Digits from the raw data
      38             :  */
      39             : class AliHLTEMCALRawAnalyzerComponentSTU : public AliHLTCaloProcessor, protected AliHLTCaloConstantsHandler {
      40             : public:
      41             : 
      42             :   /**
      43             :    * Constructor
      44             :    */
      45             :   AliHLTEMCALRawAnalyzerComponentSTU();
      46             : 
      47             :   /**
      48             :    * Destructor
      49             :    */
      50             :   virtual ~AliHLTEMCALRawAnalyzerComponentSTU();
      51             : 
      52             :   /**
      53             :    * Initialize component
      54             :    * @param argc
      55             :    * @param argv
      56             :    * @return status code
      57             :    */
      58             :   virtual int DoInit(int argc =0, const char** argv  = 0) ;
      59             : 
      60             :   /**
      61             :    * Deinit component
      62             :    * @return status code
      63             :    */
      64             :   virtual int DoDeinit();
      65             : 
      66             :   /**
      67             :    * Get the ID (name) of the component
      68             :    * @return name of the component
      69             :    */
      70             :   virtual const char* GetComponentID();
      71             : 
      72             :   /**
      73             :    * Get the list of input data types used by this component
      74             :    * @param list Input data type list
      75             :    */
      76             :   virtual void GetInputDataTypes( std::vector <AliHLTComponentDataType>& list);
      77             : 
      78             :   /**
      79             :    * Get the output data type
      80             :    * @return Return output data type
      81             :    */
      82             :   virtual AliHLTComponentDataType GetOutputDataType();
      83             : 
      84             :   /**
      85             :    * Get the size of the output data
      86             :    * @param constBase Offset
      87             :    * @param inputMultiplier Size mulitplier
      88             :    */
      89             :   virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
      90             : 
      91             :   /**
      92             :    * Create new trigger raw digit maker component
      93             :    * @return The new trigger raw digit maker component
      94             :    */
      95             :   virtual AliHLTComponent* Spawn();
      96             : 
      97             : protected:
      98             : 
      99             :   /**
     100             :    * Process the event
     101             :    * @param evtData
     102             :    * @param blocks
     103             :    * @param trigData
     104             :    * @param outputPtr
     105             :    * @param size
     106             :    * @param outputBlocks
     107             :    * @return
     108             :    */
     109             :   virtual int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
     110             :           AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
     111             :           AliHLTUInt32_t& size, std::vector<AliHLTComponentBlockData>& outputBlocks );
     112             : 
     113             :   /**
     114             :    * Init EMCAL mapper
     115             :    * @param specification Specification
     116             :    */
     117             :   void InitMapping( const int specification );
     118             : 
     119             :   bool CheckInputDataType(const AliHLTComponentDataType &datatype);
     120             : 
     121             : private:
     122             :   AliHLTEMCALRawAnalyzerComponentSTU(const AliHLTEMCALRawAnalyzerComponentSTU &ref);
     123             :   AliHLTEMCALRawAnalyzerComponentSTU &operator=(const AliHLTEMCALRawAnalyzerComponentSTU &ref);
     124             : 
     125             :   /** Pointer to the raw data reader which reads from memory */
     126             :   //AliRawReaderMemory                  *fRawReaderMemoryPtr;            //!transient
     127             : 
     128             :   /** STU Raw Digit Maker */
     129             :   AliHLTEMCALSTURawDigitMaker         *fSTURawDigitMaker;
     130             : 
     131             :   /** Pointer to the geometry class */
     132             :   AliHLTEMCALGeometry                 *fGeometry;
     133             : 
     134           6 :   ClassDef(AliHLTEMCALRawAnalyzerComponentSTU, 1);
     135             : };
     136             : 
     137             : #endif

Generated by: LCOV version 1.11