9 allowedModes_({3,5,9,6,10,12,7,11,13,14,15}),
25 std::string xml_dir_full =
"L1Trigger/L1TMuonEndCap/data/pt_xmls/" + xml_dir;
26 unsigned xml_nTrees = 64;
30 std::cout <<
"EMTF emulator: attempting to read " << xml_nTrees <<
" pT LUT XMLs from local directory" << std::endl;
32 std::cout <<
"Non-standard operation; if it fails, now you know why" << std::endl;
37 ss << xml_dir_full <<
"/" <<
mode;
38 forests_.at(mode).loadForestFromXML(ss.str().c_str(), xml_nTrees);
53 L1TMuonEndCapForest::DForestMap::const_iterator
index = payload->
forest_map_.find(mode);
58 double boostWeight_ = payload->
forest_map_.find(mode+16)->second / 1000000.;
61 forests_.at(mode).getTree(0)->setBoostWeight( boostWeight_ );
83 bool bug9BitDPhi,
bool bugMode7CLCT,
bool bugNegPt
101 ss <<
"/afs/cern.ch/work/a/abrinke1/public/EMTF/PtAssign2017/LUTs/2017_06_07/LUT_v07_07June17.dat";
virtual float calculate_pt_xml(const address_t &address) const
virtual ~PtAssignmentEngine()
virtual float calculate_pt(const address_t &address) const
void read(const std::string &lut_full_path)
const PtAssignmentEngineAux & aux() const
static PFTauRenderPlugin instance
void load(const L1TMuonEndCapForest *payload)
void configure(int verbose, int ptLUTVersion, bool readPtLUTFile, bool fixMode15HighPt, bool bug9BitDPhi, bool bugMode7CLCT, bool bugNegPt)
PtLUTReader ptlut_reader_
virtual float calculate_pt_lut(const address_t &address) const
virtual float scale_pt(const float pt, const int mode=15) const
std::array< emtf::Forest, 16 > forests_
void read(const std::string &xml_dir)
virtual float unscale_pt(const float pt, const int mode=15) const
std::vector< int > allowedModes_
float getPtFromGMTPt(int gmt_pt) const
content_t lookup(const address_t &address) const