//-*- Mode: C++ -*- // $Id$ #ifndef ALIHLTTRDCLUSTERHISTOCOMPONENT_H #define ALIHLTTRDCLUSTERHISTOCOMPONENT_H //* This file is property of and copyright by the ALICE HLT Project * //* ALICE Experiment at CERN, All rights reserved. * //* See cxx source for full Copyright notice * #include "AliHLTProcessor.h" #include "TH1D.h" #include "TH2F.h" /** * @class AliHLTTRDQHistoComponent * Component for ploting charge in clusters * * Component ID: \b TRDQHisto
* Library: \b libAliHLTTRD. * * Mandatory arguments:
* * * Optional arguments:
* * * @ingroup alihlt_tpc_components */ class TClonesArray; class AliHLTTRDClusterHistoComponent : public AliHLTProcessor { public: /** default constructor */ AliHLTTRDClusterHistoComponent(); /** destructor */ virtual ~AliHLTTRDClusterHistoComponent(); // Public functions to implement AliHLTComponent's interface. // These functions are required for the registration process /** interface function, see AliHLTComponent for description */ const char* GetComponentID(); /** interface function, see AliHLTComponent for description */ void GetInputDataTypes(AliHLTComponentDataTypeList& list); /** interface function, see AliHLTComponent for description */ AliHLTComponentDataType GetOutputDataType(); /** interface function, see AliHLTComponent for description */ virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier ); /** interface function, see AliHLTComponent for description */ AliHLTComponent* Spawn(); protected: // Protected functions to implement AliHLTComponent's interface. // These functions provide initialization as well as the actual processing // capabilities of the component. /** interface function, see AliHLTComponent for description */ int DoInit( int argc, const char** argv ); /** interface function, see AliHLTComponent for description */ int DoDeinit(); /** interface function, see AliHLTComponent for description */ int DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData ); using AliHLTProcessor::DoEvent; int Configure(const char* arguments); private: /** copy constructor prohibited */ AliHLTTRDClusterHistoComponent(const AliHLTTRDClusterHistoComponent&); /** assignment operator prohibited */ AliHLTTRDClusterHistoComponent& operator=(const AliHLTTRDClusterHistoComponent&); /** * Configure the component. * Parse a string for the configuration arguments and set the component * properties. */ AliHLTUInt32_t fOutputSize; // output size TClonesArray* fClusterArray; // input array UInt_t fNevent; // number of processed events UInt_t feveryNevent; // push back every nth event TH1D *fNClsDet; TH1D *fClsAmp; TH1D *fClsAmpDrift; TH1D *fClsTB; TH1D *fClsAmpDriftDet[540]; TH1D *fClsAmpDist; TH1D *fSClsDist; TH1D *fNScls; // kryptogramm TH2F fSlidingWindow[540]; TH2F *fClusterDist; TH1D *fClusterCandCharge; ClassDef(AliHLTTRDClusterHistoComponent, 0); }; #endif