1 #ifndef ALIFMDANALYSISTASKCOLLECTOR_H
2 #define ALIFMDANALYSISTASKCOLLECTOR_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 #include "AliAnalysisTaskSE.h"
14 class AliFMDAnaParameters;
16 //Class to fit energy distributions in the FMD
18 class AliFMDAnalysisTaskCollector : public AliAnalysisTaskSE
21 AliFMDAnalysisTaskCollector();
22 AliFMDAnalysisTaskCollector(const char* name);
23 AliFMDAnalysisTaskCollector(const AliFMDAnalysisTaskCollector& o) :
26 fOutputList(o.fOutputList),
28 fZvtxDist(o.fZvtxDist),
37 AliFMDAnalysisTaskCollector& operator=(const AliFMDAnalysisTaskCollector&) { return *this; }
38 virtual ~AliFMDAnalysisTaskCollector() {;}
39 // Implementation of interface methods
41 virtual void UserCreateOutputObjects();
42 virtual void UserExec(Option_t *option);
43 virtual void SetDebugLevel(Int_t level) {fDebug = level;}
44 virtual void Terminate(Option_t */*option*/);
45 void ReadFromFile(const Char_t* filename, Bool_t store=kFALSE, Int_t speciesOption = 0);
46 static Double_t TripleLandau(const Double_t *x, Double_t *par);
47 TF1* FitEnergyDistribution(TH1F* hEnergy, Int_t speciesOption);
50 void GetVertex(Double_t* vertexXYZ);
51 //Int_t fDebug; // Debug flag
52 TList* fOutputList; //Output list
53 TObjArray* fArray; //Array for storage
54 TH1F* fZvtxDist; //Dist of z vertex
55 Int_t fEvents; //Number of events
56 Int_t fEmptyEvents; //Number of events with empty trigger
57 Float_t fClusters; //Number of clusters
58 Float_t fClustersEmpty; //Number of clusters in empty events
59 Bool_t fFirstEvent; //Have we had events yet ?
60 AliFMDAnaParameters* fParam; //The parameters class for IO
62 ClassDef(AliFMDAnalysisTaskCollector, 1); // Analysis task for FMD analysis