43 #include "filval/filval.hpp" 44 #include "filval_root/filval_root.hpp" 48 #define JET_REQUIREMENT 6 49 #define B_JET_REQUIREMENT 3 50 #define B_JET_WP 0. // lower bound on CMVA value 55 static ObsFilter* trilepton_filter;
57 static ObsFilter* jet_multiplicity_filter;
58 static ObsFilter* b_jet_multiplicity_filter;
61 auto nLep = lookup<int>(
"nLepGood");
62 trilepton_filter = obs_filter(
"trilepton_filter",GenFunction::register_function<
bool()>(
"trilepton_filter",
64 return nLep->get_value() == 3;
68 auto nJet = lookup<int>(
"nJet");
69 jet_multiplicity_filter = obs_filter(
"jet_multiplicity_filter",GenFunction::register_function<
bool()>(
"jet_multiplicity_filter",
71 return nJet->get_value() >= JET_REQUIREMENT;
74 auto bJet_MVA = lookup<std::vector<float>>(
"Jet_btagCMVA");
75 b_jet_multiplicity_filter = obs_filter(
"b_jet_multiplicity_filter",GenFunction::register_function<
bool()>(
"b_jet_multiplicity_filter",
76 FUNC(([bJet_MVA=bJet_MVA](){
78 for(
auto j : bJet_MVA->get_value()){
83 return n_b_jet >= B_JET_REQUIREMENT;
87 #endif // SELECTION_HPP The namespace containing all filval classes and functions.