|
ATLAS Offline Software
|
Go to the documentation of this file.
31 std::set<ElementLink<TrigRoiDescriptorCollection>>
uniqueRoIs;
35 ATH_MSG_DEBUG(
"Skipping chain because previous step didn't pass");
43 [&
input](
uint8_t test_tt) { return (test_tt & input.tt) == test_tt; }
52 << (isUnique ?
"not yet" :
"already") <<
" been processed. So far seen "
53 <<
uniqueRoIs.size() <<
" unique RoIs including this one");
56 bool maxRoIsReached{
false};
58 ATH_MSG_DEBUG(
"Will attach empty PEB Info to this decision because the number of "
59 <<
"processed RoIs reached MaxRoIs (" <<
m_maxRoIs.value() <<
")");
60 maxRoIsReached =
true;
67 std::vector<uint32_t> previousRobs;
69 pebInfo.
robs.insert(previousRobs.begin(), previousRobs.end());
72 std::vector<uint32_t> previousSubDets;
74 pebInfo.
subdets.insert(previousSubDets.begin(), previousSubDets.end());
77 std::vector<uint32_t> robVec(pebInfo.
robs.begin(), pebInfo.
robs.end());
80 return StatusCode::FAILURE;
82 std::vector<uint32_t> subDetVec(pebInfo.
subdets.begin(), pebInfo.
subdets.end());
85 return StatusCode::FAILURE;
88 ATH_MSG_DEBUG(
"Attached PEB Info with " << robVec.size() <<
" ROBs and "
89 << subDetVec.size() <<
" SubDets to the decision object.");
95 return StatusCode::SUCCESS;
104 str <<
"0x" << std::hex << robid << std::dec;
106 if (
i!=pebi.
robs.size())
str <<
", ";
108 str <<
"], SubDets = [";
111 str <<
"0x" << std::hex << subdetid << std::dec;
bool uniqueRoIs(const std::vector< LinkInfo< xAOD::IParticleContainer >> &links)
Helper function that returns true if no objects share a final RoI.
xAOD::TrigCompositeContainer DecisionContainer
bool passed(DecisionID id, const DecisionIDContainer &idSet)
checks if required decision ID is in the set of IDs in the container
TrigCompositeUtils::DecisionID numeric() const
numeric ID
Decision * newDecisionIn(DecisionContainer *dc, const std::string &name)
Helper method to create a Decision object, place it in the container and return a pointer to it.
void addDecisionID(DecisionID id, Decision *d)
Appends the decision (given as ID) to the decision object.
SG::WriteHandle< DecisionContainer > createAndStore(const SG::WriteHandleKey< DecisionContainer > &key, const EventContext &ctx)
Creates and right away records the DecisionContainer with the key.
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
::StatusCode StatusCode
StatusCode definition for legacy code.
xAOD::TrigComposite Decision
std::set< DecisionID > DecisionIDContainer
void decisionIDs(const Decision *d, DecisionIDContainer &destination)
Extracts DecisionIDs stored in the Decision object.