 |
ATLAS Offline Software
|
Go to the documentation of this file.
19 #include <unordered_map>
49 static const InterfaceID IID_IeFakeTower(
"LVL1::eFakeTower", 1 , 0);
56 static const InterfaceID&
interfaceID() {
return IID_IeFakeTower; };
75 virtual int getET(
int FPGAid,
int eta,
int phi,
int layer,
int cell)
const;
132 std::vector<int>*
loadBlock(
const std::string&,
int)
const;
137 ToolHandle<eFEXFPGATowerIdProvider>
m_eFEXFPGATowerIdProviderTool {
this,
"eFEXFPGATowerIdProviderTool",
"LVL1::eFEXFPGATowerIdProvider",
"Tool that provides tower-FPGA mapping"};
146 std::unordered_map<int, std::unordered_map<int, unsigned int>*>
m_alltowers;
149 std::unordered_map<int, std::vector<int>*>
m_dict;
virtual StatusCode seteTowers(eTowerContainer *)
Define the eTowerContainer object for which the Et will be replaced.
The eTower class is an interface object for eFEX trigger algorithms The purposes are twofold:
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
std::vector< int > * loadBlock(const std::string &, int) const
Load the Et or index in a block.
int getFPGAnumber(int iefex, int ifpga) const
determine the index of an FPGA
virtual StatusCode init(const std::string &)
initiate with the path to the test vector directory
Load Et of the test vector.
StatusCode loaddic(int)
load index of Et
::StatusCode StatusCode
StatusCode definition for legacy code.
std::string m_inputfile
path to the input directory
std::unordered_map< int, std::vector< int > * > m_dict
map for mapping infomation. m_dict[FPGAid] = [ list of supercell id in order ]
eTowerContainer * m_eTowerContainer
StatusCode changeTowerET(LVL1::eTower *inputtower, int eta, int phi, int FPGAid) const
Replace the Et in a tower by the ones in the test vector.
eFakeTower(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
int m_numberofevents
number of events
Provide tower-FPGA mapping.
std::unordered_map< int, std::unordered_map< int, unsigned int > * > m_alltowers
map of all supercell ETs of FPGAs m_alltowers[FPGAid] = (supercell id,ET) supercell id = eta * 1000 +...
static const InterfaceID & interfaceID()
StatusCode changeFPGAET(int tmp_eTowersIDs_subset[][6], int FPGAnumber, int eFEXnumber)
Replace the Et in an FOGA by the ones in the test vector.
virtual StatusCode execute()
replace the Tower Et with the ones stored in the test vector.
ToolHandle< eFEXFPGATowerIdProvider > m_eFEXFPGATowerIdProviderTool
tool needed for tower-FPGA mapping
virtual int getET(int FPGAid, int eta, int phi, int layer, int cell) const
obtain the Et of a tower slot
virtual StatusCode loadnext()
Load the test vector of the next event.
StatusCode loadFPGA(int)
load the Et in an FPGA