DAS  3.0
Das Analysis System
MNjets.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <vector>
4 #include <list>
5 #include <optional>
6 
7 #include <TUnfoldBinning.h>
8 #include <TTreeReaderArray.h>
9 #include <TH1.h>
10 #include <TH2.h>
11 
12 #if !defined(__CLING__) || defined(__ROOTCLING__)
17 #endif
18 
20 
21 static const int nRecDEtaBins = 16,
25 
26 static const double minpt = 35, maxy = 4.7;
27 
28 #if !defined(__CLING__) || defined(__ROOTCLING__)
29 struct DEtaDPhi final : public Observable {
32  DEtaDPhi ();
33 
36  std::unique_ptr<Filler> getFiller (TTreeReader& reader) const override;
37 
40  void setLmatrix (const std::unique_ptr<TH1>&, std::unique_ptr<TH2>&) override;
41 };
42 
43 struct DEtaDPhiFiller final : public Filler {
45 
46  std::optional<TTreeReaderArray<GenJet>> genJets;
47  TTreeReaderArray<RecJet> recJets;
48  std::optional<TTreeReaderValue<GenEvent>> gEv;
49  TTreeReaderValue<RecEvent> rEv;
50 
53  DEtaDPhiFiller (const DEtaDPhi& obs, TTreeReader& reader);
54 
57  std::list<int> fillRec (DistVariation&) override;
58 
61  std::optional<bool> matched;
62 
65  void match () override;
66 
69  void fillMC (DistVariation&) override;
70 };
71 #endif
72 
73 } // end of DAS::Unfolding::MNjets namespace
DAS::Unfolding::MNjets::DEtaDPhiFiller::genMNjets
Di< const GenJet, const GenJet > genMNjets
Definition: MNjets.h:59
DAS::Unfolding::MNjets::nGenDPhiBins
static const int nGenDPhiBins
Definition: MNjets.h:24
DAS::Unfolding::MNjets::DEtaDPhiFiller::obs
DEtaDPhi obs
Backreference to the observable.
Definition: MNjets.h:44
DAS::Unfolding::MNjets::DEtaDPhiFiller::fillRec
std::list< int > fillRec(DistVariation &) override
See Filler::fillRec
Definition: MNjets.cc:59
Event.h
DAS::Unfolding::MNjets::DEtaDPhiFiller::recMNjets
Di< const RecJet, const RecJet > recMNjets
Definition: MNjets.h:60
Jet.h
DAS::Unfolding::DistVariation
Definition: DistVariation.h:25
DAS::Unfolding::Filler
Definition: Observable.h:56
DAS::Unfolding::MNjets::DEtaDPhiFiller::rEv
TTreeReaderValue< RecEvent > rEv
Definition: MNjets.h:49
DAS::Unfolding::MNjets::DEtaDPhiFiller::fillMC
void fillMC(DistVariation &) override
See Filler::fillMC
Definition: MNjets.cc:91
DAS::Di
Definition: Di.h:33
DAS::Unfolding::MNjets::DEtaDPhiFiller::match
void match() override
Check if the MN jets can be matched at both levels.
Definition: MNjets.cc:77
DAS::Unfolding::MNjets::nGenDEtaBins
static const int nGenDEtaBins
Definition: MNjets.h:22
DAS::Unfolding::MNjets::DEtaDPhi
Definition: MNjets.h:29
Observable.h
DAS::Unfolding::MNjets::nRecDPhiBins
static const int nRecDPhiBins
Definition: MNjets.h:23
DAS::Unfolding::MNjets
Definition: MNjets.h:19
DAS::Unfolding::MNjets::nRecDEtaBins
static const int nRecDEtaBins
Definition: MNjets.h:21
Di.h
DAS::Unfolding::MNjets::DEtaDPhi::DEtaDPhi
DEtaDPhi()
Constructor.
Definition: MNjets.cc:120
DAS::Unfolding::MNjets::DEtaDPhiFiller::gEv
std::optional< TTreeReaderValue< GenEvent > > gEv
Definition: MNjets.h:48
DAS::Unfolding::MNjets::DEtaDPhiFiller::genJets
std::optional< TTreeReaderArray< GenJet > > genJets
Definition: MNjets.h:46
DAS::Unfolding::MNjets::DEtaDPhiFiller::recJets
TTreeReaderArray< RecJet > recJets
Definition: MNjets.h:47
DAS::Unfolding::MNjets::DEtaDPhi::setLmatrix
void setLmatrix(const std::unique_ptr< TH1 > &, std::unique_ptr< TH2 > &) override
See Observable::setLmatrix
Definition: MNjets.cc:134
DAS::Unfolding::MNjets::DEtaDPhiFiller::matched
std::optional< bool > matched
Definition: MNjets.h:61
DAS::Unfolding::MNjets::DEtaDPhi::getFiller
std::unique_ptr< Filler > getFiller(TTreeReader &reader) const override
Constructs a filler for the observable.
Definition: MNjets.cc:129
DAS::Unfolding::Observable
Definition: Observable.h:142
DAS::Unfolding::MNjets::minpt
static const double minpt
Definition: MNjets.h:26
DAS::Unfolding::MNjets::maxy
static const double maxy
Definition: MNjets.h:26
DAS::Unfolding::MNjets::DEtaDPhiFiller
Definition: MNjets.h:43
DAS::Unfolding::MNjets::DEtaDPhiFiller::DEtaDPhiFiller
DEtaDPhiFiller(const DEtaDPhi &obs, TTreeReader &reader)
Constructor.
Definition: MNjets.cc:12