|
ATLAS Offline Software
|
Go to the documentation of this file.
62 template <
class TOBObjectClass>
static bool TOBetSort(
const TOBObjectClass&
i,
const TOBObjectClass& j,
bool isTau ) {
63 auto et_i = (
i->getTobword() >> 0 ) & 0xfff;
64 auto et_j = (j->getTobword() >> 0 ) & 0xfff;
65 if(et_i > et_j)
return true;
68 auto procOrder = (
isTau) ? std::map<unsigned int,unsigned int>{{2,3},{1,2},{0,1},{3,0}} :
69 std::map<unsigned int,unsigned int>{{2,3},{1,2},{3,1},{0,0}};
70 auto proc_i = procOrder.at((
i->getTobword()) >> 30);
71 auto proc_j = procOrder.at((j->getTobword()) >> 30);
72 if(proc_i > proc_j)
return true;
73 if (proc_i == proc_j) {
74 auto phi_i = (
i->getTobword()) & 0x07000000;
75 auto phi_j = (j->getTobword()) & 0x07000000;
76 if(phi_i > phi_j)
return true;
78 auto eta_i = (
i->getTobword()) & 0x38000000;
79 auto eta_j = (j->getTobword()) & 0x38000000;
80 if(eta_i > eta_j)
return true;
94 ToolHandle<IeFEXSim>
m_eFEXSimTool {
this,
"eFEXSimTool",
"LVL1::eFEXSim",
"Tool that creates the eFEX Simulation"};
96 ToolHandle<IeFEXFillEDM>
m_eFEXFillEDMTool {
this,
"eFEXFillEDMTool",
"LVL1::eFEXFillEDM",
"Tool to fille eFEX EDMs"};
107 ToolHandle<IeFEXFPGATowerIdProvider>
m_eFEXFPGATowerIdProviderTool {
this,
"eFEXFPGATowerIdProviderTool",
"LVL1::eFEXFPGATowerIdProvider",
"Tool that provides tower-FPGA mapping"};
108 ToolHandle<IeFEXFPGA>
m_eFEXFPGATool {
this,
"eFEXFPGATool",
"LVL1::eFEXFPGA",
"Tool that simulates the FPGA hardware"};
SG::WriteHandleKey< xAOD::eFexTauRoIContainer > m_eFexTauActiveOutKey
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)
ToolHandle< IeFEXSim > m_eFEXSimTool
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.
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::WriteHandleKey< xAOD::eFexEMRoIContainer > m_eFexEMxTOBOutKey
virtual int calcTowerID(int eta, int phi, int mod) const override
eFEXSysSim(const std::string &type, const std::string &name, const IInterface *parent)
Constructors.
ToolHandle< IeFEXFPGATowerIdProvider > m_eFEXFPGATowerIdProviderTool
Provide tower-FPGA mapping.
SG::ReadHandleKey< TrigConf::L1Menu > m_l1MenuKey
SG::WriteHandleKey< xAOD::eFexEMRoIContainer > m_eFexOutKey
virtual StatusCode initialize() override
standard Athena-Algorithm method
SG::WriteHandleKey< xAOD::eFexTauRoIContainer > m_eFexTauAltOutKey
ToolHandle< IeFEXFPGA > m_eFEXFPGATool
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
eFEXSysSim && operator=(const eFEXSysSim &)=delete
Destructor.