3 #ifndef AliHLTITSQACOMPONENT_H
4 #define AliHLTITSQACOMPONENT_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 *
9 /// @file AliHLTITSQHistoComponent.h
10 /// @author Piergiorgio Cerello cerello@to.infn.it
12 /// @brief Interface component to the ITS QA
14 #include "AliHLTProcessor.h"
18 #include "AliHLTITSSpacePointData.h"
19 #include "TClonesArray.h"
20 #include "AliITSRecPoint.h"
21 #include "AliITSQADataMakerRec.h"
23 class AliHLTTPCConfMapper;
26 * @class AliHLTITSQHistoComponent
27 * Component for ploting charge in clusters
29 * Component ID: \b ITSQHisto <br>
30 * Library: \b libAliHLTITS.
32 * Mandatory arguments: <br>
35 * Optional arguments: <br>
38 * @ingroup alihlt_tpc_components
40 class AliHLTITSQAComponent : public AliHLTProcessor
43 /** default constructor */
44 AliHLTITSQAComponent();
46 virtual ~AliHLTITSQAComponent();
48 // Public functions to implement AliHLTComponent's interface.
49 // These functions are required for the registration process
51 /** interface function, see AliHLTComponent for description */
52 const char* GetComponentID();
53 /** interface function, see AliHLTComponent for description */
54 void GetInputDataTypes(AliHLTComponentDataTypeList& list);
55 /** interface function, see AliHLTComponent for description */
56 AliHLTComponentDataType GetOutputDataType();
57 /** interface function, see AliHLTComponent for description */
58 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
59 /** interface function, see AliHLTComponent for description */
60 AliHLTComponent* Spawn();
64 // Protected functions to implement AliHLTComponent's interface.
65 // These functions provide initialization as well as the actual processing
66 // capabilities of the component.
68 /** interface function, see AliHLTComponent for description */
69 int DoInit( int argc, const char** argv );
70 /** interface function, see AliHLTComponent for description */
72 /** interface function, see AliHLTComponent for description */
73 int DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& trigData );
75 int Reconfigure(const char* cdbEntry, const char* chainId);
77 using AliHLTProcessor::DoEvent;
80 /** copy constructor prohibited */
81 AliHLTITSQAComponent(const AliHLTITSQAComponent&);
82 /** assignment operator prohibited */
83 AliHLTITSQAComponent& operator=(const AliHLTITSQAComponent&);
85 * Configure the component.
86 * Parse a string for the configuration arguments and set the component
89 int Configure(const char* arguments);
91 AliITSQADataMakerRec *fAliITSQADataMakerRec;// pointer to the main ctor
93 AliRawReaderMemory* fRawReader; //!transient
95 AliITSDetTypeRec* fDettype; //!transient
97 TClonesArray** fClusters; //!transient
99 AliITSgeom* fgeom; //!transient
101 AliITSInitGeometry* fgeomInit; //!transient
103 AliITSsegmentationSPD* fSegSPD; //!transient
104 AliITSsegmentationSDD* fSegSDD; //!transient
105 AliITSsegmentationSSD* fSegSSD; //!transient
107 ClassDef(AliHLTITSQAComponent, 0);