DAS  3.0
Das Analysis System
DrFillerfinal

#include <ZmmY.h>

+ Inheritance diagram for DrFiller:
+ Collaboration diagram for DrFiller:

Public Member Functions

 DrFiller (const Dr &, Darwin::Tools::Flow &)
 
double computeObservableValue (const void *event, const Uncertainties::Variation &v, bool isGen) const override
 
const ObservablegetObs () const override
 
- Public Member Functions inherited from ZmmYFiller
 ZmmYFiller (Darwin::Tools::Flow &flow, bool isMC)
 
template<typename MUON , typename PHOTON >
int GetBinNumber (const TUnfoldBinning *binning, const EventInfo< MUON, PHOTON > &event, const Uncertainties::Variation &v) const
 
template<typename MUON , typename PHOTON >
int GetBinNumber2D (const TUnfoldBinning *binning, const EventInfo< MUON, PHOTON > &event, const Uncertainties::Variation &v) const
 
virtual int getObsDimension () const
 
std::list< int > fillRec (DistVariation &v) override
 
void match () override
 
void fillMC (DistVariation &v) override
 
- Public Member Functions inherited from Filler
virtual ~Filler ()=default
 

Public Attributes

const Drobs
 
- Public Attributes inherited from ZmmYFiller
EventInfo< RecMuon, RecPhotonrInfo
 
std::vector< GenMuon > * genMuons
 
std::vector< RecMuon > * recMuons
 
std::vector< GenPhoton > * genPhotons
 
std::vector< RecPhoton > * recPhotons
 
GenEventgEv
 
RecEventrEv
 

Private Member Functions

template<typename MUON , typename PHOTON >
double computeDr (const EventInfo< MUON, PHOTON > &event, const Uncertainties::Variation &v) const
 

Additional Inherited Members

- Protected Member Functions inherited from ZmmYFiller
virtual std::vector< double > computeObservableValue2D (const void *event, const Uncertainties::Variation &v, bool isGen) const
 

Constructor & Destructor Documentation

◆ DrFiller()

DrFiller ( const Dr obs,
Darwin::Tools::Flow flow 
)
80  : ZmmYFiller(flow, obs.isMC), obs(obs)
81 {}

Member Function Documentation

◆ computeDr()

double computeDr ( const EventInfo< MUON, PHOTON > &  event,
const Uncertainties::Variation v 
) const
private
94  {
95  const auto pGamma = event.selectedPhotons[0].CorrP4(v);
96  return std::min(
97  ROOT::Math::VectorUtil::DeltaR(event.dimuon.first->CorrP4(v), pGamma),
98  ROOT::Math::VectorUtil::DeltaR(event.dimuon.second->CorrP4(v), pGamma)
99  );
100 }

◆ computeObservableValue()

double computeObservableValue ( const void *  event,
const Uncertainties::Variation v,
bool  isGen 
) const
overridevirtual

Reimplemented from ZmmYFiller.

102  {
103  if (isGen) {
104  return computeDr(*static_cast<const EventInfo<GenMuon, GenPhoton>*>(event), v);
105  } else {
106  return computeDr(*static_cast<const EventInfo<RecMuon, RecPhoton>*>(event), v);
107  }
108 }

◆ getObs()

const Observable* getObs ( ) const
inlineoverridevirtual

Implements ZmmYFiller.

105 { return &obs; }

Member Data Documentation

◆ obs

const Dr& obs

The documentation for this struct was generated from the following files:
DAS::Unfolding::ZmmY::DrFiller::obs
const Dr & obs
Definition: ZmmY.h:102
DAS::Unfolding::ZmmY::EventInfo
Definition: ZmmYCommon.h:28
DAS::Unfolding::Observable::isMC
static bool isMC
Definition: Observable.h:119
DAS::Unfolding::ZmmY::DrFiller::computeDr
double computeDr(const EventInfo< MUON, PHOTON > &event, const Uncertainties::Variation &v) const
Definition: ZmmY.cc:94
DAS::Unfolding::ZmmY::EventInfo::dimuon
Di< const Muon, const Muon > dimuon
The dimuon system. Invalid for NotSelected events.
Definition: ZmmYCommon.h:45
DAS::Unfolding::ZmmY::ZmmYFiller::ZmmYFiller
ZmmYFiller(Darwin::Tools::Flow &flow, bool isMC)
Definition: ZmmY.h:29