ATLAS Offline Software
Loading...
Searching...
No Matches
eFEXBDT Class Reference

#include <eFEXBDT.h>

Collaboration diagram for eFEXBDT:

Public Member Functions

 eFEXBDT (std::string filename)
const std::vector< BDTVariable > & getVariables () const
const std::vector< std::vector< int > > & getETSCells () const
const std::vector< std::vector< int > > & getEMETSCells () const
const std::vector< std::vector< int > > & getHADETSCells () const
const conifer::BDT< unsigned int, unsigned int > & getBDT () const
const std::vector< std::vector< int > > & getTowerSCells (int towerIndex) const
int getNTowers () const
int getScorePrecision () const

Private Attributes

std::vector< BDTVariablem_variables
std::vector< std::vector< int > > m_et_scells
std::vector< std::vector< int > > m_em_et_scells
std::vector< std::vector< int > > m_had_et_scells
std::vector< std::vector< std::vector< int > > > m_towers_scells
conifer::BDT< unsigned int, unsigned int > m_bdt
int m_score_precision

Friends

void from_json (const nlohmann::json &j, eFEXBDT &o)

Detailed Description

Definition at line 27 of file eFEXBDT.h.

Constructor & Destructor Documentation

◆ eFEXBDT()

eFEXBDT::eFEXBDT ( std::string filename)
inline

Definition at line 50 of file eFEXBDT.h.

50 {
51 /* Construct the BDT from conifer cpp backend JSON file */
52 std::ifstream ifs(filename);
53 nlohmann::json j = nlohmann::json::parse(ifs);
54 from_json(j, *this);
55 m_bdt.init();
56 }
friend void from_json(const nlohmann::json &j, eFEXBDT &o)
Definition eFEXBDT.h:40
conifer::BDT< unsigned int, unsigned int > m_bdt
Definition eFEXBDT.h:35

Member Function Documentation

◆ getBDT()

const conifer::BDT< unsigned int, unsigned int > & eFEXBDT::getBDT ( ) const
inline

Definition at line 72 of file eFEXBDT.h.

72 {
73 return m_bdt;
74 }

◆ getEMETSCells()

const std::vector< std::vector< int > > & eFEXBDT::getEMETSCells ( ) const
inline

Definition at line 64 of file eFEXBDT.h.

64 {
65 return m_em_et_scells;
66 }
std::vector< std::vector< int > > m_em_et_scells
Definition eFEXBDT.h:32

◆ getETSCells()

const std::vector< std::vector< int > > & eFEXBDT::getETSCells ( ) const
inline

Definition at line 60 of file eFEXBDT.h.

60 {
61 return m_et_scells;
62 }
std::vector< std::vector< int > > m_et_scells
Definition eFEXBDT.h:31

◆ getHADETSCells()

const std::vector< std::vector< int > > & eFEXBDT::getHADETSCells ( ) const
inline

Definition at line 68 of file eFEXBDT.h.

68 {
69 return m_had_et_scells;
70 }
std::vector< std::vector< int > > m_had_et_scells
Definition eFEXBDT.h:33

◆ getNTowers()

int eFEXBDT::getNTowers ( ) const
inline

Definition at line 80 of file eFEXBDT.h.

80{ return m_towers_scells.size(); }
std::vector< std::vector< std::vector< int > > > m_towers_scells
Definition eFEXBDT.h:34

◆ getScorePrecision()

int eFEXBDT::getScorePrecision ( ) const
inline

Definition at line 82 of file eFEXBDT.h.

82{ return m_score_precision; }
int m_score_precision
Definition eFEXBDT.h:36

◆ getTowerSCells()

const std::vector< std::vector< int > > & eFEXBDT::getTowerSCells ( int towerIndex) const
inline

Definition at line 76 of file eFEXBDT.h.

76 {
77 return m_towers_scells[towerIndex];
78 }

◆ getVariables()

const std::vector< BDTVariable > & eFEXBDT::getVariables ( ) const
inline

Definition at line 58 of file eFEXBDT.h.

58{ return m_variables; }
std::vector< BDTVariable > m_variables
Definition eFEXBDT.h:30

◆ from_json

void from_json ( const nlohmann::json & j,
eFEXBDT & o )
friend

Definition at line 40 of file eFEXBDT.h.

40 {
41 j.at("variables").get_to(o.m_variables);
42 j.at("et_scells").get_to(o.m_et_scells);
43 j.at("em_et_scells").get_to(o.m_em_et_scells);
44 j.at("had_et_scells").get_to(o.m_had_et_scells);
45 j.at("towers_scells").get_to(o.m_towers_scells);
46 j.at("score_precision").get_to(o.m_score_precision);
47 j.at("bdt").get_to(o.m_bdt);
48 }

Member Data Documentation

◆ m_bdt

conifer::BDT<unsigned int, unsigned int> eFEXBDT::m_bdt
private

Definition at line 35 of file eFEXBDT.h.

◆ m_em_et_scells

std::vector<std::vector<int> > eFEXBDT::m_em_et_scells
private

Definition at line 32 of file eFEXBDT.h.

◆ m_et_scells

std::vector<std::vector<int> > eFEXBDT::m_et_scells
private

Definition at line 31 of file eFEXBDT.h.

◆ m_had_et_scells

std::vector<std::vector<int> > eFEXBDT::m_had_et_scells
private

Definition at line 33 of file eFEXBDT.h.

◆ m_score_precision

int eFEXBDT::m_score_precision
private

Definition at line 36 of file eFEXBDT.h.

◆ m_towers_scells

std::vector<std::vector<std::vector<int> > > eFEXBDT::m_towers_scells
private

Definition at line 34 of file eFEXBDT.h.

◆ m_variables

std::vector<BDTVariable> eFEXBDT::m_variables
private

Definition at line 30 of file eFEXBDT.h.


The documentation for this class was generated from the following file: