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

          Line data    Source code
       1             : // -*- Mode: C++ -*-
       2             : // $Id$
       3             : 
       4             : #ifndef ALIHLTRECOPARAMCOMPONENT_H
       5             : #define ALIHLTRECOPARAMCOMPONENT_H
       6             : //* This file is property of and copyright by the ALICE                    * 
       7             : //* ALICE Experiment at CERN, All rights reserved.                         *
       8             : //* See cxx source for full Copyright notice                               *
       9             : 
      10             : /// @file   AliHLTRecoParamComponent.h
      11             : /// @author Matthias Richter
      12             : /// @date   2010-10-18
      13             : /// @brief  Online HLT RecoParam generator component
      14             : ///
      15             : 
      16             : #include "AliHLTCalibrationProcessor.h"
      17             : #include "AliHLTOnlineConfiguration.h"
      18             : 
      19             : /**
      20             :  * @class AliHLTRecoParamComponent
      21             :  * Collects online configuration info and in the future other parameters
      22             :  * and produces the corresponding calibration object for reconstruction of HLT.
      23             :  *
      24             :  * <h2>General properties:</h2>
      25             :  *
      26             :  * Component ID: \b RecoParamGenerator                                  <br>
      27             :  * Library: \b libAliHLTUtil.so                                         <br>
      28             :  * Input Data Types: ::kAliHLTAnyDataType                               <br>
      29             :  * Output Data Types: none                                              <br>
      30             :  *
      31             :  * <h2>Mandatory arguments:</h2>
      32             :  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
      33             :  *      
      34             :  * <h2>Optional arguments:</h2>
      35             :  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
      36             :  *
      37             :  * <h2>Configuration:</h2>
      38             :  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
      39             :  * Configuration by component arguments.
      40             :  *
      41             :  * <h2>Default CDB entries:</h2>
      42             :  * The component loads no CDB entries.
      43             :  *
      44             :  * <h2>Performance:</h2>
      45             :  * The component does not process any event data.
      46             :  *
      47             :  * <h2>Memory consumption:</h2>
      48             :  * The component does not process any event data.
      49             :  *
      50             :  * <h2>Output size:</h2>
      51             :  * Depending on the mode.
      52             :  *
      53             :  * @ingroup alihlt_util_components
      54             :  */
      55             : class AliHLTRecoParamComponent : public AliHLTCalibrationProcessor
      56             : {
      57             :  public:
      58             :   /// standard constructor
      59             :   AliHLTRecoParamComponent();
      60             :   /// destructor
      61             :   virtual ~AliHLTRecoParamComponent();
      62             : 
      63             :   /// inherited from AliHLTComponent: return id of the component.
      64         654 :   virtual const char* GetComponentID() {return "RecoParamGenerator";};
      65             :   /// inherited from AliHLTComponent: input data types
      66             :   virtual void GetInputDataTypes(AliHLTComponentDataTypeList& list);
      67             :   /// inherited from AliHLTComponent: output data types
      68             :   virtual AliHLTComponentDataType GetOutputDataType();
      69             :   /// inherited from AliHLTComponent: output data size
      70             :   virtual void GetOutputDataSize(unsigned long&, double&);
      71             :   /// inherited from AliHLTComponent: description of required CDB objects
      72             :   virtual void GetOCDBObjectDescription( TMap* const targetArray);
      73             : 
      74             :   /// inherited from AliHLTComponent: spawn function, create an instance.
      75           0 :   virtual AliHLTComponent* Spawn() {return new AliHLTRecoParamComponent;}
      76             : 
      77             :  protected:
      78             :   /// inherited from AliHLTCalibrationProcessor: custom initialization
      79             :   virtual int InitCalibration();
      80             :   /// inherited from AliHLTCalibrationProcessor: custom argument scan
      81             :   /// the AliHLTCalibrationProcessor so far does not use the base class
      82             :   /// methods for argument scan.
      83             :   int ScanArgument( int argc, const char** argv ) {
      84           0 :     int result=ScanConfigurationArgument(argc, argv); return result>0?result-1:result;
      85             :   }
      86             :   /// inherited from AliHLTCalibrationProcessor: cleanup
      87             :   virtual int DeinitCalibration();
      88             : 
      89             :   /// inherited from AliHLTCalibrationProcessor processing
      90             :   virtual int ProcessCalibration( const AliHLTComponentEventData& evtData,
      91             :                                   AliHLTComponentTriggerData& trigData );
      92             :   
      93             :   using AliHLTCalibrationProcessor::ProcessCalibration;
      94             : 
      95             :   /// inherited from AliHLTCalibrationProcessor processing
      96             :   virtual int ShipDataToFXS( const AliHLTComponentEventData& evtData,
      97             :                      AliHLTComponentTriggerData& trigData);
      98             : 
      99             :   using AliHLTCalibrationProcessor::ShipDataToFXS;
     100             : 
     101             :   /**
     102             :    * Inherited from AliHLTComponent
     103             :    * Scan one argument and adjacent parameters.
     104             :    * @return number of scanned parameters, neg. error code if failed
     105             :    */
     106             :   virtual int ScanConfigurationArgument(int argc, const char** argv);
     107             : 
     108             : private:
     109             :   /** copy constructor prohibited */
     110             :   AliHLTRecoParamComponent(const AliHLTRecoParamComponent&);
     111             :   /** assignment operator prohibited */
     112             :   AliHLTRecoParamComponent& operator=(const AliHLTRecoParamComponent&);
     113             : 
     114             :   static const char* fgkConfigurationObject; //! component configuration object
     115             :   
     116             :   AliHLTOnlineConfiguration fOnlineConfig; //! online configuration object
     117             :   int fOutputSize; //! output size estimator
     118             : 
     119           8 :   ClassDef(AliHLTRecoParamComponent, 0) // Online HLT RecoParam generator component
     120             : };
     121             : #endif

Generated by: LCOV version 1.11