9 using namespace std::placeholders;
15 const auto absEta =
std::abs(vars.at(
"eta"));
16 if (absEta <= etaThr) {
30 useEBModelInGap_(useEBModelInGap) {}
37 "trkSumPtHollowConeDR03",
40 "SigmaIetaIetaFull5x5",
41 "SigmaIEtaIPhiFull5x5",
51 variables[
"pt"] = photon.
pt();
52 variables[
"eta"] = photon.
eta();
61 variables[
"HasPixelSeed"] = (Int_t)photon.
hasPixelSeed();
70 const std::vector<tensorflow::Session*>& sessions)
const {
73 std::vector<std::map<std::string, float>>
inputs;
74 for (
const auto& photon : photons) {
uint photonModelSelector(const std::map< std::string, float > &vars, float etaThr)
std::vector< std::vector< float > > evaluate(const reco::PhotonCollection &ele, const std::vector< tensorflow::Session * > &sessions) const
double pt() const final
transverse momentum
float trkSumPtHollowConeDR03() const
float hcalPFClusterIso() const
float ecalPFClusterIso() const
std::map< std::string, float > getInputsVars(const reco::Photon &ele) const
float full5x5_sigmaIetaIeta() const
std::vector< tensorflow::Session * > getSessions() const
float sigmaIetaIeta() const
Abs< T >::type abs(const T &t)
const egammaTools::EgammaDNNHelper dnnHelper_
bool hasPixelSeed() const
Bool flagging photons having a non-zero size vector of Ref to electornPixel seeds.
std::vector< Photon > PhotonCollection
collectin of Photon objects
float hadTowOverEm(int depth=0) const
static const std::vector< std::string > dnnAvaibleInputs
float ecalRecHitSumEtConeDR03() const
Isolation variables in cone dR=0.3.
const ShowerShape & full5x5_showerShapeVariables() const
float hcalTowerSumEtConeDR03(int depth=0) const
Hcal isolation sum for each depth excluding the region containing the rechits used for hcalOverEcal()...
bool hadTowOverEmValid() const
PhotonDNNEstimator(const egammaTools::DNNConfiguration &, const bool useEBModelInGap)
double eta() const final
momentum pseudorapidity