]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TRD/AliHLTTRDClusterHistoComponent.h
- add the histogram component to the agent and the build system
[u/mrichter/AliRoot.git] / HLT / TRD / AliHLTTRDClusterHistoComponent.h
CommitLineData
c1a93a7b 1#ifndef ALIHLTTRDCLUSTERHISTOCOMPONENT_H
2#define ALIHLTTRDCLUSTERHISTOCOMPONENT_H
3//* This file is property of and copyright by the ALICE HLT Project *
4//* ALICE Experiment at CERN, All rights reserved. *
5//* See cxx source for full Copyright notice *
6
7
8#include "AliHLTProcessor.h"
9#include "TH1D.h"
10
11/**
12 * @class AliHLTTRDQHistoComponent
13 * Component for ploting charge in clusters
14 *
15 * Component ID: \b TRDQHisto <br>
16 * Library: \b libAliHLTTRD.
17 *
18 * Mandatory arguments: <br>
19 *
20 *
21 * Optional arguments: <br>
22 *
23 *
24 * @ingroup alihlt_tpc_components
25 */
26class AliHLTTRDClusterHistoComponent : public AliHLTProcessor
27{
28public:
29 /** default constructor */
30 AliHLTTRDClusterHistoComponent();
31 /** destructor */
32 virtual ~AliHLTTRDClusterHistoComponent();
33
34 // Public functions to implement AliHLTComponent's interface.
35 // These functions are required for the registration process
36
37 /** interface function, see AliHLTComponent for description */
38 const char* GetComponentID();
39 /** interface function, see AliHLTComponent for description */
40 void GetInputDataTypes(AliHLTComponentDataTypeList& list);
41 /** interface function, see AliHLTComponent for description */
42 AliHLTComponentDataType GetOutputDataType();
43 /** interface function, see AliHLTComponent for description */
44 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
45 /** interface function, see AliHLTComponent for description */
46 AliHLTComponent* Spawn();
47
48protected:
49
50 // Protected functions to implement AliHLTComponent's interface.
51 // These functions provide initialization as well as the actual processing
52 // capabilities of the component.
53
54 /** interface function, see AliHLTComponent for description */
55 int DoInit( int argc, const char** argv );
56 /** interface function, see AliHLTComponent for description */
57 int DoDeinit();
58 /** interface function, see AliHLTComponent for description */
59 int DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& trigData );
60
61 int Reconfigure(const char* cdbEntry, const char* chainId);
62
63 using AliHLTProcessor::DoEvent;
64
65private:
66 /** copy constructor prohibited */
67 AliHLTTRDClusterHistoComponent(const AliHLTTRDClusterHistoComponent&);
68 /** assignment operator prohibited */
69 AliHLTTRDClusterHistoComponent& operator=(const AliHLTTRDClusterHistoComponent&);
70 /**
71 * Configure the component.
72 * Parse a string for the configuration arguments and set the component
73 * properties.
74 */
75 int Configure(const char* arguments);
76
77 TH1D *fNClsDet;
78 TH1D *fClsAmp;
79 TH1D *fClsAmpDrift;
80 TH1D *fClsTB;
81
82 TH1D *fClsAmpDriftDet[540];
83 TH1D *fClsAmpDist;
84
85 ClassDef(AliHLTTRDClusterHistoComponent, 0);
86};
87#endif