![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
59 virtual void init()
override ;
61 virtual void cleanup()
override;
68 template <
class TOBObjectClass>
static bool TOBetSort(
const TOBObjectClass&
i,
const TOBObjectClass& j,
bool isTau ) {
69 auto et_i = (
i->getTobword() >> 0 ) & 0xfff;
70 auto et_j = (j->getTobword() >> 0 ) & 0xfff;
71 if(et_i > et_j)
return true;
74 auto procOrder = (
isTau) ? std::map<unsigned int,unsigned int>{{2,3},{1,2},{0,1},{3,0}} :
75 std::map<unsigned int,unsigned int>{{2,3},{1,2},{3,1},{0,0}};
76 auto proc_i = procOrder.at((
i->getTobword()) >> 30);
77 auto proc_j = procOrder.at((j->getTobword()) >> 30);
78 if(proc_i > proc_j)
return true;
79 if (proc_i == proc_j) {
80 auto phi_i = (
i->getTobword()) & 0x07000000;
81 auto phi_j = (j->getTobword()) & 0x07000000;
82 if(phi_i > phi_j)
return true;
84 auto eta_i = (
i->getTobword()) & 0x38000000;
85 auto eta_j = (j->getTobword()) & 0x38000000;
86 if(eta_i > eta_j)
return true;
107 ToolHandle<IeFEXSim>
m_eFEXSimTool {
this,
"eFEXSimTool",
"LVL1::eFEXSim",
"Tool that creates the eFEX Simulation"};
109 ToolHandle<IeFEXFillEDM>
m_eFEXFillEDMTool {
this,
"eFEXFillEDMTool",
"LVL1::eFEXFillEDM",
"Tool to fille eFEX EDMs"};
120 ToolHandle<IeFEXFPGATowerIdProvider>
m_eFEXFPGATowerIdProviderTool {
this,
"eFEXFPGATowerIdProviderTool",
"LVL1::eFEXFPGATowerIdProvider",
"Tool that provides tower-FPGA mapping"};
121 ToolHandle<IeFEXFPGA>
m_eFEXFPGATool {
this,
"eFEXFPGATool",
"LVL1::eFEXFPGA",
"Tool that simulates the FPGA hardware"};
std::vector< eFEXSim * > m_eFEXCollection
SG::WriteHandleKey< xAOD::eFexTauRoIContainer > m_eFexTauActiveOutKey
Scalar phi() const
phi method
SG::WriteHandleKey< xAOD::eFexTauRoIContainer > m_eFexTauActivexTOBOutKey
virtual StatusCode execute(eFEXOutputCollection *inputOutputCollection) override
StatusCode StoreTauTOBs(std::map< int, std::vector< std::unique_ptr< eFEXtauTOB >> > &allTauTobObjects, SG::WriteHandleKey< xAOD::eFexTauRoIContainer > &eFexTauxTOBOutKey, SG::WriteHandleKey< xAOD::eFexTauRoIContainer > &eFexTauOutKey)
Scalar eta() const
pseudorapidity method
ToolHandle< IeFEXSim > m_eFEXSimTool
std::unique_ptr< xAOD::eFexEMRoIContainer > m_eContainer
SG::ReadHandleKey< LVL1::eTowerContainer > m_eTowerContainerSGKey
The eFEXSysSim class defines the structure of the eFEX system Its purpose is:
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
SG::WriteHandleKey< xAOD::eFexTauRoIContainer > m_eFexTauAltxTOBOutKey
Property holding a SG store/key/clid from which a WriteHandle is made.
std::map< int, std::vector< std::unique_ptr< eFEXtauTOB > > > m_allTauHeuristicTobObjects
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::WriteHandleKey< xAOD::eFexEMRoIContainer > m_eFexEMxTOBOutKey
virtual int calcTowerID(int eta, int phi, int mod) const override
virtual void init() override
eFEXSysSim(const std::string &type, const std::string &name, const IInterface *parent)
Constructors.
ToolHandle< IeFEXFPGATowerIdProvider > m_eFEXFPGATowerIdProviderTool
virtual StatusCode finalize() override
standard Athena-Algorithm method
Provide tower-FPGA mapping.
SG::ReadHandleKey< TrigConf::L1Menu > m_l1MenuKey
SG::WriteHandleKey< xAOD::eFexEMRoIContainer > m_eFexOutKey
virtual StatusCode initialize() override
standard Athena-Algorithm method
std::map< int, std::vector< std::unique_ptr< eFEXegTOB > > > m_allEmTobObjects
SG::WriteHandleKey< xAOD::eFexTauRoIContainer > m_eFexTauAltOutKey
std::unique_ptr< xAOD::eFexEMRoIAuxContainer > m_eAuxContainer
ToolHandle< IeFEXFPGA > m_eFEXFPGATool
std::unique_ptr< xAOD::eFexEMRoIContainer > m_xeContainer
static bool TOBetSort(const TOBObjectClass &i, const TOBObjectClass &j, bool isTau)
Internal data.
ToolHandle< IeFEXFillEDM > m_eFEXFillEDMTool
macros to associate a CLID to a type
virtual void cleanup() override
std::map< int, std::vector< std::unique_ptr< eFEXtauTOB > > > m_allTauBDTTobObjects
eFEXSysSim && operator=(const eFEXSysSim &)=delete
Destructor.
std::unique_ptr< xAOD::eFexEMRoIAuxContainer > m_xeAuxContainer