PandaRoot
PndTripleAnaTask.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 #ifndef PndTripleAnaTask_H
14 #define PndTripleAnaTask_H 1
15 
16 #include "FairTask.h"
17 #include <map>
18 #include <string>
19 #include "TLorentzVector.h"
20 
21 class TClonesArray;
22 class TH1F;
23 class TH2F;
24 class TDatabasePDG;
25 
28 class PndAnalysis;
29 class RhoCandList;
30 class RhoCandidate;
31 class RhoTuple;
32 class PndRhoTupleQA;
33 class PndEventShape;
34 
35 class PndTripleAnaTask : public FairTask {
36 
37  public:
38  // ** Default constructor
39  PndTripleAnaTask(double pbarmom, TString outname, int mode, TString pidalg);
40 
41  // ** Destructor
43 
44  // ** Virtual method Init
45  virtual InitStatus Init();
46 
47  // ** Virtual method Exec
48  virtual void Exec(Option_t *opt);
49 
50  virtual void Finish();
51 
52  protected:
53  private:
54  void SetVerbose(int verb = 1) { fVerbose = verb; }
55  void JpsiAnalysis(PndEventShape &eventShape);
56  void DsDs2317Analysis(PndEventShape &eventShape);
57  void ThreePiAnalysis(PndEventShape &eventShape);
58 
59  // *** event counter
60  int fEvtCount;
61  int fMode; // 0 = J/psi pi+ pi- ; 1 = Ds Ds2317 ; 2 = pi0 pi0 pi0
62  int fVerbose;
63 
64  // *** the initial 4-vector
65  TLorentzVector fIni;
66 
67  // *** the PndAnalysis object
68  PndAnalysis *fAnalysis;
69  TDatabasePDG *fPdg;
70  TFile *fFile;
71  TString fOutName;
72  TString fPidAlg;
73 
74  // *******
75  // ******* DECLARE THE STUFF YOU NEED
76  // *******
77 
78  // *** Pointer to event shape object
79  // PndEventShape *fEventShape;
80  // *** RhoTuple QA helper class
81  PndRhoTupleQA *fQA;
82 
83  RhoTuple *ntp1;
84  RhoTuple *ntp2;
85  RhoTuple *ntp3;
86  RhoTuple *ntp4;
87  RhoTuple *nmc;
88 
94 
95  TClonesArray *fOnlineFilterInfo;
96 
97  // *** Get parameter containers
98  virtual void SetParContainers();
99 
100  ClassDef(PndTripleAnaTask, 1);
101 };
102 
103 #endif
virtual void Exec(Option_t *opt)
PndTripleAnaTask(double pbarmom, TString outname, int mode, TString pidalg)
virtual void Finish()
virtual InitStatus Init()