|
ATLAS Offline Software
|
Go to the documentation of this file.
35 ATH_MSG_DEBUG(
"Trigger already booked, removing from trigger list " << trigName);
42 return StatusCode::SUCCESS;
53 return StatusCode::SUCCESS;
61 return StatusCode::SUCCESS;
69 ATH_MSG_DEBUG(
"Start Chain Analysis ============================= " << trigger <<
" " <<
info.trigger);
78 std::string bootstrap =
it->second;
79 ATH_MSG_DEBUG(
"Bootstrapping " << trigger <<
" from " << bootstrap );
82 if (!
tdt()->isPassed(bootstrap)){
83 ATH_MSG_DEBUG(
"Not passed BS trigger. Skipping! ========================== " << trigger);
96 return StatusCode::SUCCESS;
99 std::vector< std::pair<const xAOD::Egamma*, const TrigCompositeUtils::Decision*>> pairObjsRaw;
100 pairObjsRaw.reserve(pairObjs.size());
101 for (
const auto& itr : pairObjs) {
102 pairObjsRaw.emplace_back(itr.first.get(), itr.second);
110 ATH_MSG_DEBUG(
"End Chain Analysis ============================= " << trigger);
114 return StatusCode::SUCCESS;
132 return StatusCode::FAILURE;
134 const std::string trigItem =
info.trigger;
135 const float etthr =
info.etthr;
136 const std::string pidName =
info.pidname;
137 const std::string decorName=
"is"+pidName;
139 for(
const auto *
const eg : *offPhotons ){
141 if(!
eg->caloCluster()){
154 ATH_MSG_DEBUG(
"Fails PhotonID: "<< pidName <<
" Trigger: " << trigItem);
166 const auto ph = std::make_shared<const xAOD::Photon>(*
eg);
168 decor(*ph)=
static_cast<bool>(
true);
169 match()->match(ph.get(), trigItem, dec, TrigDefs::includeFailedDecisions);
171 pairObjs.emplace_back(ph, dec);
176 ATH_MSG_DEBUG(
"BaseToolMT::Photon TEs " << pairObjs.size() <<
" found.");
177 return StatusCode::SUCCESS;
void fillEfficiencies(const std::vector< std::pair< const xAOD::Egamma *, const TrigCompositeUtils::Decision * > > &, const TrigInfo &) const
SG::ReadDecorHandleKey< xAOD::EventInfo > m_eventInfoDecorKey
SG::ReadHandleKey< xAOD::PhotonContainer > m_offPhotonKey
Event Wise offline PhotonContainer Access and end iterator.
virtual StatusCode initialize() override
initialize
const std::map< std::string, TrigInfo > & getTrigInfoMap()
Helper methods.
Gaudi::Property< std::string > m_photonPid
Photon pid word.
The common trigger namespace for trigger analysis tools.
std::vector< std::string > m_trigList
List of triggers to study.
bool ApplyPhotonPid(const xAOD::Photon *eg, const std::string &) const
Get offline electron decision.
Gaudi::Property< bool > m_forcePidSelection
force pid selection into photon navigation
void fillDistributions(const std::vector< std::pair< const xAOD::Egamma *, const TrigCompositeUtils::Decision * > > &, const TrigInfo &) const
StatusCode executeNavigation(const EventContext &ctx, const TrigInfo &info, std::vector< std::pair< std::shared_ptr< const xAOD::Egamma >, const TrigCompositeUtils::Decision * >> &) const
navigation method called by executeNavigation
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
const ToolHandle< Trig::TrigDecisionTool > & tdt() const
Get the TDT
Gaudi::Property< bool > m_doUnconverted
doUnconverted analysis
@ LAr
The LAr calorimeter.
void fillResolutions(const std::vector< std::pair< const xAOD::Egamma *, const TrigCompositeUtils::Decision * >> &pairObjs, const TrigInfo &info) const
*****************************************************************************************************...
virtual ~TrigEgammaMonitorPhotonAlgorithm() override
bool isHLTTruncated() const
TrigInfo getTrigInfo(const std::string &) const
Get the trigger info parsed from the chain name (only single lepton triggers)
void setTrigInfo(const std::string &)
Set the trigger info parsed from the chain name.
::StatusCode StatusCode
StatusCode definition for legacy code.
Class used to describe composite objects in the HLT.
SG::ReadHandle< xAOD::EventInfo > GetEventInfo(const EventContext &) const
Return a ReadHandle for an EventInfo object (get run/event numbers, etc.)
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Gaudi::Property< std::map< std::string, std::string > > m_BSTrigMap
virtual StatusCode initialize() override
initialize
TrigEgammaMonitorPhotonAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
const ToolHandle< TrigEgammaMatchingToolMT > & match() const
Get the e/g match tool.
SG::ReadDecorHandleKeyArray< xAOD::PhotonContainer > m_offPhotonIsolationKeys
Ensure offline photon isolation decoration is retrieved after being created.
bool isEventFlagBitSet(EventFlagSubDet subDet, size_t bit) const
Check one particular bit of one particular sub-detector.
Handle class for reading a decoration on an object.
Helper class to provide constant type-safe access to aux data.
Gaudi::Property< std::vector< std::string > > m_trigInputList
List of triggers from menu.