LCOV - code coverage report
Current view: top level - HLT/TPCLib - AliHLTTPCdEdxMonitoringComponent.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             : #ifndef ALIHLTTPCDEDXMONITORINGCOMPONENT_H
       4             : #define ALIHLTTPCDEDXMONITORINGCOMPONENT_H
       5             : 
       6             : //* This file is property of and copyright by the ALICE HLT Project        * 
       7             : //* ALICE Experiment at CERN, All rights reserved.                         *
       8             : //* See cxx source for full Copyright notice                               *
       9             : 
      10             : /// @file   AliHLTTPCdEdxMonitoringComponent.h
      11             : /// @author Per-Ivar Lønne, Jochen Thaeder, Matthias Richter, Alexander Kalweit
      12             : /// @date   21.08.2011
      13             : /// @brief  Component for reading ESD from chain and produce a dEdx monitoring plot
      14             : ///
      15             : 
      16             : /**
      17             :  * @class AliHLTTPCdEdxMonitoringComponent
      18             :  * A component meant to read ESD-files from the chain online
      19             :  * and produce a plot for dEdx monitoring.
      20             :  * 
      21             :  * description of what the component does in more detail
      22             :  * bla
      23             :  * bla
      24             :  *
      25             :  * <h2>General properties:</h2>
      26             :  *
      27             :  * Component ID: \b TPCdEdxMonitoring <br>
      28             :  * Library: \b libAliHLTTPC.so <br>
      29             :  * Input Data Types: @ref kAliHLTDataTypeESDObject|kAliHLTDataOriginAny <br>
      30             :  * Output Data Types: @ref kAliHLTDataTypeHistogram|kAliHLTDataOriginHLT <br>
      31             :  *
      32             :  * <h2>Mandatory arguments:</h2>
      33             :  *
      34             :  * <h2>Optional arguments:</h2>
      35             :  * 
      36             :  * <h2>Configuration</h2>
      37             :  * \li -xbins <i> fxbins </i> <br>
      38             :  *     number of bins on x-axis
      39             :  *
      40             :  * <h2>Configuration</h2>
      41             :  * \li -xbins <i> fxmin </i> <br>
      42             :  *     minimum value of x-axis
      43             :  *
      44             :  * <h2>Configuration</h2>
      45             :  * \li -xbins <i> fxmax </i> <br>
      46             :  *     maximum value of x-axis
      47             :  *
      48             :  * <h2>Configuration</h2>
      49             :  * \li -ybins <i> fybins </i> <br>
      50             :  *     number of bins on y-axis
      51             :  *
      52             :  * <h2>Configuration</h2>
      53             :  * \li -ybins <i> fymin </i> <br>
      54             :  *     minimum value of y-axis
      55             :  *
      56             :  * <h2>Configuration</h2>
      57             :  * \li -ybins <i> fymax </i> <br>
      58             :  *     maximum value of y-axis
      59             :  *
      60             :  * <h2>Default CDB entries:</h2>
      61             :  *
      62             :  * <h2>Performance:</h2>
      63             :  *
      64             :  * <h2>Memory Consumption:</h2>
      65             :  *
      66             :  * <h2>Output size:</h2>
      67             :  * 4096
      68             :  *
      69             :  * @ingroup alihlt
      70             :  */
      71             : 
      72             : #include "AliHLTProcessor.h"
      73             : 
      74             : class AliESDtrackCuts; // For setting track cuts
      75             : class TH2F;
      76             : 
      77             : class AliHLTTPCdEdxMonitoringComponent : public AliHLTProcessor 
      78             : {
      79             : public:
      80             : 
      81             :   /*----------------------------------------------------*
      82             :    *          Constructor and destructor 
      83             :    *----------------------------------------------------*/
      84             :     
      85             :   AliHLTTPCdEdxMonitoringComponent();
      86             : 
      87             :   virtual ~AliHLTTPCdEdxMonitoringComponent();
      88             : 
      89             : 
      90             :   // AliHLTComponent interface functions
      91             :   const char* GetComponentID();
      92             :   void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
      93             :   AliHLTComponentDataType GetOutputDataType();
      94             :   void GetOutputDataSize( unsigned long& constBase, Double_t& inputMultiplier );
      95             :   void GetOCDBObjectDescription( TMap* const targetMap);
      96             : 
      97             :   // Spawn function, return new class instance
      98             :   AliHLTComponent* Spawn();
      99             : 
     100             :  protected:
     101             :   // AliHLTComponent interface functions
     102             :   Int_t DoInit( Int_t argc, const char** argv );
     103             :   Int_t DoDeinit();
     104             :   Int_t DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
     105             :   using AliHLTProcessor::DoEvent;
     106             :   Int_t ScanConfigurationArgument(Int_t argc, const char** argv);
     107             :   Int_t Reconfigure(const char* cdbEntry, const char* chainId);
     108             :   Int_t ReadPreprocessorValues(const char* modules);
     109             : 
     110             : private:
     111             :   /** copy constructor prohibited */
     112             :   AliHLTTPCdEdxMonitoringComponent(const AliHLTTPCdEdxMonitoringComponent&);
     113             :   /** assignment operator prohibited */
     114             :   AliHLTTPCdEdxMonitoringComponent& operator=(const AliHLTTPCdEdxMonitoringComponent&);
     115             : 
     116             :   // Sets standard trackcuts
     117             :   void SetDefaultConfiguration();
     118             : 
     119             :   // trackcuts
     120             :   AliESDtrackCuts *fESDTrackCuts; //! transistent
     121             : 
     122             :   // histogram
     123             :   TH2F *fHist; //! transistent
     124             :   Int_t fxbins; //! transistent
     125             :   Double_t fxmin; //! transistent
     126             :   Double_t fxmax; //! transistent
     127             :   Int_t fybins; //! transistent
     128             :   Double_t fymin; //! transistent
     129             :   Double_t fymax; //! transistent
     130             :   
     131             : 
     132             :   // sets some plotstyles
     133             :   void Plotstyle();
     134             : 
     135           6 :   ClassDef(AliHLTTPCdEdxMonitoringComponent, 0)
     136             : };
     137             : #endif

Generated by: LCOV version 1.11