LCOV - code coverage report
Current view: top level - HLT/TPCLib - AliHLTTPCTrackMCMarkerComponent.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 2 2 100.0 %
Date: 2016-06-14 17:26:59 Functions: 4 8 50.0 %

          Line data    Source code
       1             : //-*- Mode: C++ -*-
       2             : // $Id$
       3             : // ************************************************************************
       4             : // This file is property of and copyright by the ALICE HLT Project        *
       5             : // ALICE Experiment at CERN, All rights reserved.                         *
       6             : // See cxx source for full Copyright notice                               *
       7             : //                                                                        *
       8             : //*************************************************************************
       9             : 
      10             : #ifndef ALIHLTTPTRACKMCMARKERCOMPONENT_H
      11             : #define ALIHLTTPTRACKMCMARKERCOMPONENT_H
      12             : 
      13             : /// @file   AliHLTTPCTrackMCMarkerComponent.h
      14             : /// @author Matthias Kretz
      15             : /// @date
      16             : /// @brief  Marker component for TPC cluster mc labels.
      17             : ///
      18             : 
      19             : #include "AliHLTProcessor.h"
      20             : class AliHLTTPCClusterMCData;
      21             : 
      22             : /**
      23             :  * @class AliHLTTPCTrackMCMarkerComponent
      24             :  * Assigns MC labels to the TPC tracks 
      25             :  */
      26             : class AliHLTTPCTrackMCMarkerComponent : public AliHLTProcessor
      27             : {
      28             :   public:
      29             :     /**
      30             :      * Constructs a AliHLTTPCTrackMCMarkerComponent.
      31             :      */
      32             :     AliHLTTPCTrackMCMarkerComponent();
      33             : 
      34             :     /**
      35             :      * Destructs the AliHLTTPCTrackMCMarkerComponent
      36             :      */
      37          18 :     virtual ~AliHLTTPCTrackMCMarkerComponent() {};
      38             : 
      39             :     // Public functions to implement AliHLTComponent's interface.
      40             :     // These functions are required for the registration process
      41             : 
      42             :     /**
      43             :      * @copydoc AliHLTComponent::GetComponentID
      44             :      */
      45             :     const char *GetComponentID();
      46             : 
      47             :     /**
      48             :      * @copydoc AliHLTComponent::GetInputDataTypes
      49             :      */
      50             :     void GetInputDataTypes( AliHLTComponentDataTypeList &list );
      51             : 
      52             :     /**
      53             :      * @copydoc AliHLTComponent::GetOutputDataType
      54             :      */
      55             :     AliHLTComponentDataType GetOutputDataType();
      56             : 
      57             :     /**
      58             :      * @copydoc AliHLTComponent::GetOutputDataSize
      59             :      */
      60             :     virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
      61             : 
      62             :     /**
      63             :      * @copydoc AliHLTComponent::Spawn
      64             :      */
      65             :     AliHLTComponent *Spawn();
      66             : 
      67             :   protected:
      68             : 
      69             :     // Protected functions to implement AliHLTComponent's interface.
      70             :     // These functions provide initialization as well as the actual processing
      71             :     // capabilities of the component.
      72             : 
      73             :     /**
      74             :      * @copydoc AliHLTComponent::DoInit
      75             :      */
      76             :     int DoInit( int argc, const char **argv );
      77             : 
      78             :     /**
      79             :      * @copydoc AliHLTComponent::DoDeinit
      80             :      */
      81             :     int DoDeinit();
      82             : 
      83             :     /** reconfigure **/
      84             :     int Reconfigure( const char* cdbEntry, const char* chainId );
      85             : 
      86             :     /**
      87             :      * @copydoc @ref AliHLTProcessor::DoEvent
      88             :      */
      89             :     int DoEvent( const AliHLTComponentEventData &evtData, const AliHLTComponentBlockData *blocks,
      90             :                  AliHLTComponentTriggerData &trigData, AliHLTUInt8_t *outputPtr,
      91             :                  AliHLTUInt32_t &size, AliHLTComponentBlockDataList &outputBlocks );
      92             : 
      93             :     using AliHLTProcessor::DoEvent;
      94             : 
      95             :   private:
      96             : 
      97             :     static AliHLTTPCTrackMCMarkerComponent fgAliHLTTPCTrackMCMarkerComponent;
      98             : 
      99             :     // disable copy
     100             :     AliHLTTPCTrackMCMarkerComponent( const AliHLTTPCTrackMCMarkerComponent & );
     101             :     AliHLTTPCTrackMCMarkerComponent &operator=( const AliHLTTPCTrackMCMarkerComponent & );
     102             : 
     103             :     /** set configuration parameters **/
     104             :     void SetDefaultConfiguration();
     105             :     int ReadConfigurationString(  const char* arguments );
     106             :     int ReadCDBEntry( const char* cdbEntry, const char* chainId );
     107             :     int Configure( const char* cdbEntry, const char* chainId, const char *commandLine );
     108             : 
     109             :     /**
     110             :      * Get MC label for a track
     111             :      * @param hits array of track hit Id's
     112             :      * @param nHits n of hits
     113             :      * @return neg. -1 if failed
     114             :      */
     115             :     int GetTrackMCLabel( unsigned int *hits, int nHits );
     116             : 
     117             :     /** array of pointers to cluster MC labels **/
     118             : 
     119             :     AliHLTTPCClusterMCData *fClusterLabels[36*6]; //! cluster MC labels for each TPC patch
     120             : 
     121           6 :     ClassDef( AliHLTTPCTrackMCMarkerComponent, 0 )
     122             : };
     123             : 
     124             : #endif

Generated by: LCOV version 1.11