CbmRoot
AnalysisTaskMultiPairAnalysis.h
Go to the documentation of this file.
1 #ifndef ANALYSISTASKMULTIPAIRANALYSIS_H
2 #define ANALYSISTASKMULTIPAIRANALYSIS_H
3 
4 //#####################################################
5 //# #
6 //# Basic Analysis task for PairAnalysis #
7 //# single event analysis #
8 //# #
9 //# Julian Book, Uni Ffm / Julian.Book@cern.ch #
10 //# #
11 //#####################################################
12 
13 #include "TList.h"
14 #include "TStopwatch.h"
15 #include "TSystem.h"
16 
17 
18 #include "CbmRichElectronIdAnn.h"
19 #include "FairTask.h"
20 
21 #include "AnalysisCuts.h"
22 #include "PairAnalysisEvent.h"
23 #include "PairAnalysisMetaData.h"
24 
25 class PairAnalysis;
26 class TH1D;
27 
28 class AnalysisTaskMultiPairAnalysis : public FairTask {
29 
30 public:
32  AnalysisTaskMultiPairAnalysis(const char* name);
34 
35  virtual InitStatus Init();
36  virtual void Exec(Option_t* option);
37  virtual void FinishTask();
38 
39  void SetEventFilter(AnalysisCuts* const filter) { fEventFilter = filter; }
40 
41  void AddPairAnalysis(PairAnalysis* const papa) {
42  fListPairAnalysis.Add((TObject*) papa);
43  } //why cast to tobject????????
44  void SetBeamEnergy(Double_t beamEbyHand = -1.) {
45  fBeamEnergy = beamEbyHand;
46  Warning(
47  "SetBeamEnergy",
48  "This function is only kept for backward compatibility!!! Value will be "
49  "overwritten, when parameter is availbale (>JUN16 release).");
50  } // TODO: this should become obsolete in NOV16
51 
52 protected:
55  TObjArray* fPairArray = NULL;
56  TList fListPairAnalysis; // List of papa framework instances
57  TList
59 
60  Double_t fBeamEnergy = 0.; // beam energy in GeV (set by hand)
61 
62  AnalysisCuts* fEventFilter = NULL; // event filter
64  Int_t fEventsTotal = 0; // total number of processed events
65  Int_t fEventsSelected = 0; // number of selcted events
66 
67  TStopwatch fTimer;
68  ProcInfo_t fProcInfo;
69 
73 
75  4); //Analysis Task handling multiple instances of PairAnalysis
76 };
77 #endif
AnalysisTaskMultiPairAnalysis::SetBeamEnergy
void SetBeamEnergy(Double_t beamEbyHand=-1.)
Definition: AnalysisTaskMultiPairAnalysis.h:44
AnalysisTaskMultiPairAnalysis
Definition: AnalysisTaskMultiPairAnalysis.h:28
AnalysisTaskMultiPairAnalysis::Exec
virtual void Exec(Option_t *option)
Definition: AnalysisTaskMultiPairAnalysis.cxx:165
AnalysisTaskMultiPairAnalysis::Init
virtual InitStatus Init()
Definition: AnalysisTaskMultiPairAnalysis.cxx:90
AnalysisTaskMultiPairAnalysis::AddPairAnalysis
void AddPairAnalysis(PairAnalysis *const papa)
Definition: AnalysisTaskMultiPairAnalysis.h:41
AnalysisTaskMultiPairAnalysis::operator=
AnalysisTaskMultiPairAnalysis & operator=(const AnalysisTaskMultiPairAnalysis &c)
AnalysisTaskMultiPairAnalysis::~AnalysisTaskMultiPairAnalysis
virtual ~AnalysisTaskMultiPairAnalysis()
Definition: AnalysisTaskMultiPairAnalysis.cxx:72
AnalysisTaskMultiPairAnalysis::FinishTask
virtual void FinishTask()
Definition: AnalysisTaskMultiPairAnalysis.cxx:255
AnalysisTaskMultiPairAnalysis::fEventsSelected
Int_t fEventsSelected
Definition: AnalysisTaskMultiPairAnalysis.h:65
AnalysisTaskMultiPairAnalysis::SetEventFilter
void SetEventFilter(AnalysisCuts *const filter)
Definition: AnalysisTaskMultiPairAnalysis.h:39
AnalysisTaskMultiPairAnalysis::fTimer
TStopwatch fTimer
Definition: AnalysisTaskMultiPairAnalysis.h:67
AnalysisTaskMultiPairAnalysis::fEventFilter
AnalysisCuts * fEventFilter
Definition: AnalysisTaskMultiPairAnalysis.h:62
AnalysisTaskMultiPairAnalysis::fEventsTotal
Int_t fEventsTotal
event handler
Definition: AnalysisTaskMultiPairAnalysis.h:64
AnalysisTaskMultiPairAnalysis::ClassDef
ClassDef(AnalysisTaskMultiPairAnalysis, 4)
AnalysisTaskMultiPairAnalysis::fListHistos
TList fListHistos
Definition: AnalysisTaskMultiPairAnalysis.h:58
AnalysisTaskMultiPairAnalysis::AnalysisTaskMultiPairAnalysis
AnalysisTaskMultiPairAnalysis()
AnalysisTaskMultiPairAnalysis::fListPairAnalysis
TList fListPairAnalysis
output array
Definition: AnalysisTaskMultiPairAnalysis.h:56
AnalysisTaskMultiPairAnalysis::AnalysisTaskMultiPairAnalysis
AnalysisTaskMultiPairAnalysis(const AnalysisTaskMultiPairAnalysis &c)
memory usage
PairAnalysisEvent
Definition: PairAnalysisEvent.h:25
PairAnalysis
Definition: PairAnalysis.h:22
PairAnalysisMetaData.h
AnalysisTaskMultiPairAnalysis::fBeamEnergy
Double_t fBeamEnergy
List of histogram manager lists in the framework classes.
Definition: AnalysisTaskMultiPairAnalysis.h:60
CbmRichElectronIdAnn.h
Implementation of the electron identification algorithm in the RICH detector using Artificial Neural ...
AnalysisTaskMultiPairAnalysis::fInputEvent
PairAnalysisEvent * fInputEvent
Definition: AnalysisTaskMultiPairAnalysis.h:63
AnalysisTaskMultiPairAnalysis::fMetaData
PairAnalysisMetaData fMetaData
Definition: AnalysisTaskMultiPairAnalysis.h:54
AnalysisTaskMultiPairAnalysis::fPairArray
TObjArray * fPairArray
List of meta data in the framework classes.
Definition: AnalysisTaskMultiPairAnalysis.h:55
AnalysisTaskMultiPairAnalysis::fProcInfo
ProcInfo_t fProcInfo
stopwatch for cpu consumption
Definition: AnalysisTaskMultiPairAnalysis.h:68
PairAnalysisMetaData
Definition: PairAnalysisMetaData.h:27
PairAnalysisEvent.h
AnalysisCuts
Definition: AnalysisCuts.h:12
AnalysisCuts.h