]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSPhysicsAnalyzerSpectrumComponent.h
900d580324d085e953f290120c6bd3b6275bcdf2
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSPhysicsAnalyzerSpectrumComponent.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                              */
3 //Component for create an invariant mass spectrum for pi0's
4
5 #ifndef ALIHLTPHOSPHYSICSANALYZERSPECTRUMCOMPONENT_H
6 #define ALIHLTPHOSPHYSICSANALYZERSPECTRUMCOMPONENT_H
7
8 // removed  PTH#include "AliHLTProcessor.h"
9 #include "AliHLTPHOSProcessor.h" // added by PTH
10 #include "AliHLTPHOSBase.h"
11
12 class TH1F;
13 class AliHLTPHOSPhysicsAnalyzerSpectrum;
14 class AliHLTPHOSPhysicsAnalyzerPeakFitter;
15 class Rtypes;
16 class AliHLTPHOSDefinitions;
17 class AliHLTPHOSPhysicsDefinitions;
18 class TFile;
19
20 struct AliHLTPHOSClusterDataStruct;
21
22
23 // PTH class AliHLTPHOSPhysicsAnalyzerSpectrumComponent: public AliHLTPHOSBase, public AliHLTProcessor
24 class AliHLTPHOSPhysicsAnalyzerSpectrumComponent: public AliHLTPHOSProcessor // added by PTH
25 {
26  public:
27
28   AliHLTPHOSPhysicsAnalyzerSpectrumComponent();
29   ~AliHLTPHOSPhysicsAnalyzerSpectrumComponent();
30
31   // PTH  AliHLTPHOSPhysicsAnalyzerSpectrumComponent(const AliHLTPHOSPhysicsAnalyzerSpectrumComponent &);
32   //  AliHLTPHOSPhysicsAnalyzerSpectrumComponent & operator = (const AliHLTPHOSPhysicsAnalyzerSpectrumComponent &)
33   //   {
34   //     return *this;
35   //  }
36   const char* GetComponentID();
37   void GetInputDataTypes(vector<AliHLTComponentDataType>& list);
38
39   AliHLTComponentDataType GetOutputDataType();
40
41   void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
42
43   /* 
44   Int_t DoEvent(const AliHLTComponentEventData&, const AliHLTComponentBlockData*,
45                 AliHLTComponentTriggerData&, AliHLTUInt8_t*, AliHLTUInt32_t&,
46                 std::vector<AliHLTComponentBlockData>&);*/
47   int DoEvent(const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
48
49   AliHLTComponent* Spawn();
50
51  protected:
52
53   Int_t DoInit(int argc, const char** argv);
54   Int_t Deinit();
55   Int_t DoDeinit();
56   using AliHLTPHOSProcessor::DoEvent;
57   
58  private:
59   
60   AliHLTPHOSPhysicsAnalyzerSpectrum* fAnalyzerPtr;                //! /**<Pointer to spectrum analyzer*
61   AliHLTPHOSPhysicsAnalyzerPeakFitter* fPeakFitter;               //! /**<Pointer to peak fitter*/
62   TH1F* fRootHistPtr;                                             //! /**<Pointer to histogram*/
63   AliHLTPHOSClusterDataStruct* fClusterArrayPtr[10000];           //! /**<Pointer to array of clusters*/
64   Int_t fWriteInterval;                                               /**<Interval for writing to disk*/
65
66   static const AliHLTComponentDataType fgkInputDataTypes[];           /**<Data types*/                          
67   static UInt_t fgCount;                                              /**<Event count*/
68 };
69
70 #endif