Line data Source code
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 6 : ClassDef(AliHLTTPCClusterHistoComponent, 0);
101 :
102 : };
103 : #endif
|