]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/TPCLib/AliHLTTPCClusterHistoComponent.h
CMake: removing qpythia from the depedencies
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCClusterHistoComponent.h
1 //-*- Mode: C++ -*-
2 // $Id$
3 #ifndef ALIHLTTPCCLUSTERHISTOCOMPONENT_H
4 #define ALIHLTTPCCLUSTERHISTOCOMPONENT_H
5 //* This file is property of and copyright by the ALICE HLT Project        * 
6 //* ALICE Experiment at CERN, All rights reserved.                         *
7 //* See cxx source for full Copyright notice                               *
8
9 /// @file   AliHLTTPCClusterHistoComponent.h
10 /// @author Gaute Ovrebekk
11 /// @brief  Component for ploting charge in clusters
12 ///
13
14 #include "AliHLTProcessor.h"
15 #include "TH1F.h"
16 #include "AliHLTTPCSpacePointData.h"
17
18 /**
19  * @class AliHLTTPCClusterHistoComponent
20  * Component for ploting charge in clusters
21  * 
22  * Component ID: \b TPCQHisto <br>
23  * Library: \b libAliHLTTPC.
24  *
25  * Mandatory arguments: <br>
26  * 
27  * 
28  * Optional arguments: <br>
29  * 
30  *
31  * @ingroup alihlt_tpc_components
32  */
33 class AliHLTTPCClusterHistoComponent : public AliHLTProcessor
34 {
35 public:
36   /** default constructor */
37   AliHLTTPCClusterHistoComponent();
38   /** destructor */
39   virtual ~AliHLTTPCClusterHistoComponent();
40
41   // Public functions to implement AliHLTComponent's interface.
42   // These functions are required for the registration process
43
44   /** interface function, see AliHLTComponent for description */
45   const char* GetComponentID();
46   /** interface function, see AliHLTComponent for description */
47   void GetInputDataTypes(AliHLTComponentDataTypeList& list);
48   /** interface function, see AliHLTComponent for description */
49   AliHLTComponentDataType GetOutputDataType();
50   /** interface function, see AliHLTComponent for description */
51   virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
52   /** interface function, see AliHLTComponent for description */
53   AliHLTComponent* Spawn();
54
55 protected:
56
57   // Protected functions to implement AliHLTComponent's interface.
58   // These functions provide initialization as well as the actual processing
59   // capabilities of the component. 
60
61   /** interface function, see AliHLTComponent for description */
62   int DoInit( int argc, const char** argv );
63   /** interface function, see AliHLTComponent for description */
64   int DoDeinit();
65   /** interface function, see AliHLTComponent for description */
66   int DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& trigData );
67
68   int Reconfigure(const char* cdbEntry, const char* chainId);
69
70   using AliHLTProcessor::DoEvent;
71   
72 private:
73   /** copy constructor prohibited */
74   AliHLTTPCClusterHistoComponent(const AliHLTTPCClusterHistoComponent&);
75   /** assignment operator prohibited */
76   AliHLTTPCClusterHistoComponent& operator=(const AliHLTTPCClusterHistoComponent&);
77   /**
78    * Configure the component.
79    * Parse a string for the configuration arguments and set the component
80    * properties.
81    */ 
82   int Configure(const char* arguments);
83   
84   TH1F * fTotalClusterChargeOROCAll;                               //! transient
85   TH1F * fTotalClusterChargeIROCAll;                               //! transient
86   TH1F * fTotalClusterChargeROCSelection;                          //! transient
87   TH1F * fTotalClusterChargePartitionSelection;                    //! transient
88   TH1F * fQMaxPartitionAll;                                        //! transient
89   TH1F * fQMaxROCAll;                                              //! transient
90   TH1F * fNumberOfClusters;                                        //! transient
91   
92   Bool_t fPlotChargeOROCAll;                                       //! transient
93   Bool_t fPlotChargeIROCAll;                                       //! transient
94   Bool_t fPlotChargeROCSel;                                        //! transient
95   Bool_t fPlotChargePartSel;                                       //! transient
96   Bool_t fPlotQmaxPartAll;                                         //! transient
97   Bool_t fPlotQmaxROCAll;                                          //! transient
98   Bool_t fPlotNClusters;                                           //! transient
99  
100   ClassDef(AliHLTTPCClusterHistoComponent, 0);
101
102 };
103 #endif