]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/ITS/AliHLTITSClusterHistoComponent.h
Adding new component for TRD monitoring (Theodor)
[u/mrichter/AliRoot.git] / HLT / ITS / AliHLTITSClusterHistoComponent.h
CommitLineData
c0b68f8e 1//-*- Mode: C++ -*-
2// $Id$
3#ifndef ALIHLTITSCLUSTERHISTOCOMPONENT_H
4#define ALIHLTITSCLUSTERHISTOCOMPONENT_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 AliHLTITSQHistoComponent.h
10 @author Gaute Ovrebekk
11 @brief Component for ploting clusters
12*/
13
14#include "AliHLTProcessor.h"
15#include "TH1F.h"
16#include "TH2F.h"
17#include "TH3F.h"
18#include "AliHLTITSSpacePointData.h"
19#include "TClonesArray.h"
20#include "AliITSRecPoint.h"
21
22class AliHLTTPCConfMapper;
23
24/**
25 * @class AliHLTITSQHistoComponent
26 * Component for ploting charge in clusters
27 *
28 * Component ID: \b ITSQHisto <br>
29 * Library: \b libAliHLTITS.
30 *
31 * Mandatory arguments: <br>
32 *
33 *
34 * Optional arguments: <br>
35 *
36 *
37 * @ingroup alihlt_tpc_components
38 */
39class AliHLTITSClusterHistoComponent : public AliHLTProcessor
40{
41public:
42 /** default constructor */
43 AliHLTITSClusterHistoComponent();
44 /** destructor */
45 virtual ~AliHLTITSClusterHistoComponent();
46
47 // Public functions to implement AliHLTComponent's interface.
48 // These functions are required for the registration process
49
50 /** interface function, see AliHLTComponent for description */
51 const char* GetComponentID();
52 /** interface function, see AliHLTComponent for description */
53 void GetInputDataTypes(AliHLTComponentDataTypeList& list);
54 /** interface function, see AliHLTComponent for description */
55 AliHLTComponentDataType GetOutputDataType();
56 /** interface function, see AliHLTComponent for description */
57 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
58 /** interface function, see AliHLTComponent for description */
59 AliHLTComponent* Spawn();
60
61protected:
62
63 // Protected functions to implement AliHLTComponent's interface.
64 // These functions provide initialization as well as the actual processing
65 // capabilities of the component.
66
67 /** interface function, see AliHLTComponent for description */
68 int DoInit( int argc, const char** argv );
69 /** interface function, see AliHLTComponent for description */
70 int DoDeinit();
71 /** interface function, see AliHLTComponent for description */
72 int DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& trigData );
73
74 int Reconfigure(const char* cdbEntry, const char* chainId);
75
76 using AliHLTProcessor::DoEvent;
77
78private:
79 /** copy constructor prohibited */
80 AliHLTITSClusterHistoComponent(const AliHLTITSClusterHistoComponent&);
81 /** assignment operator prohibited */
82 AliHLTITSClusterHistoComponent& operator=(const AliHLTITSClusterHistoComponent&);
83 /**
84 * Configure the component.
85 * Parse a string for the configuration arguments and set the component
86 * properties.
87 */
88 int Configure(const char* arguments);
89
90 TH2F * fXY; //! transient
91 TH3F * fXYZ; //! transient
92 TH1F * fCharge; //! transient
93
94 Bool_t fPlotCharge; //! transient
95 Bool_t fPlotXY; //! transient
96 Bool_t fPlotXYZ; //! transient
97
98 ClassDef(AliHLTITSClusterHistoComponent, 0);
99
100};
101#endif