|
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef ViewAlgs_EventViewCreatorAlgorithm_h
8 #define ViewAlgs_EventViewCreatorAlgorithm_h
20 #include "GaudiKernel/IAlgResourcePool.h"
21 #include "GaudiKernel/IScheduler.h"
57 "The key of views collection produced" };
60 "Name of the collection which should be inserted into the just-spawned views to seed them with their ROI" };
63 Gaudi::Property< std::string >
m_schedulerName {
this,
"SchedulerName",
"AvalancheSchedulerSvc",
"Name of the scheduler" };
64 Gaudi::Property< std::string >
m_viewNodeName{
this,
"ViewNodeName",
"",
"Name of the ControlFlow node to attach new views to" };
67 "Set whether views may access StoreGate directly to retrieve data" };
68 Gaudi::Property< std::vector< std::string > >
m_viewFallFilter {
this,
"FallThroughFilter", {},
69 "An optional list of SG keys (or parts of them) that can come from StoreGate via FallThrough" };
72 "For each new view, locate and link any parent views (previous step). Fail if no parent view can not be found." };
75 "Reverse order of views, as a debugging option" };
78 "Optional ReadHandle on the output (InputMakerOutputDecisions) of an EVCA in a previous Step, whose Views can be re-used. Not currently used." };
80 ToolHandle<IViewCreatorROITool>
m_roiTool{
this,
"RoITool",
"",
81 "Tool used to supply per-Decision Object the RoI on which the Decision Object's view is to be spawned"};
86 "Muon slice specific option. Place Muon and MuonCandidate inside newly spawned View instance. See also InViewMuons, InViewMuonCandidates" };
90 "Name with which the Muon should be inserted into the views"};
93 "Name with which the Muon Candidate should be inserted into the views"};
105 "Jet slice specific option. Place Jet inside newly spawned View instance. See also InViewJets" };
109 "Set whether cached EventViews are to be accessed" };
113 "Name with which the Jet should be inserted into the views"};
SG::WriteHandleKey< ConstDataVector< MuonCandidateCollection > > m_inViewMuonCandidates
Gaudi::Property< bool > m_requireParentView
Gaudi::Property< std::vector< std::string > > m_viewFallFilter
virtual ~EventViewCreatorAlgorithm()
StatusCode linkViewToParent(const TrigCompositeUtils::Decision *outputDecision, SG::View *newView) const
Makes sure the views are linked, if configuration requireParentView is set.
DataVector adapter that acts like it holds const pointers.
SG::ReadHandleKey< TrigCompositeUtils::DecisionContainer > m_cachedViewsKey
SmartIF< IScheduler > getScheduler() const
Obtain smart pointer to scheduler in order to schedule newly spawned views.
bool checkCache(const TrigCompositeUtils::DecisionContainer *cachedViews, const TrigCompositeUtils::Decision *outputDecision, size_t &cachedIndex, MatchingCache &matchingCache) const
Allow for the re-use of EventViews run in a previous Step in another EVCA instance configured to spaw...
Property holding a SG store/key/clid from which a ReadHandle is made.
StatusCode placeMuonInView(const xAOD::Muon *theObject, SG::View *view, const EventContext &context) const
Creates a SG::VIEW_ELEMENTS collection inside a newly created View populated by the MuonCombined::Muo...
SG::WriteHandleKey< xAOD::JetContainer > m_inViewJets
Gaudi::Property< bool > m_reverseViews
ToolHandle< IViewCreatorROITool > m_roiTool
Used at the start of a sequence to create the EventViews: retrieves filtered collections via menu dec...
SG::WriteHandleKey< xAOD::MuonContainer > m_inViewMuons
virtual StatusCode finalize() override
SG::WriteHandleKey< ConstDataVector< TrigRoiDescriptorCollection > > m_inViewRoIs
virtual StatusCode initialize() override
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode execute(const EventContext &) const override
Gaudi::Property< bool > m_viewFallThrough
std::vector< TrigCompositeUtils::LinkInfo< ViewContainer > > viewsToLink(const TrigCompositeUtils::Decision *outputDecision) const
Obtain view(s) from most recent prior step(s) which are to be wired up.
SG::WriteHandleKey< ViewContainer > m_viewsKey
Gaudi::Property< std::string > m_viewNodeName
EventViewCreatorAlgorithm()
Class used to describe composite objects in the HLT.
StatusCode populateMatchingCacheWithCachedViews(const TrigCompositeUtils::DecisionContainer *cachedViews, MatchingCache &matchingCache) const
We look for matching Decision Objects in a matchingCache.
Gaudi::Property< bool > m_cacheDisabled
StatusCode placeJetInView(const xAOD::Jet *theObject, SG::View *view, const EventContext &context) const
Creates a SG::VIEW_ELEMENTS collection inside a newly created View populated by the jet used to seed ...
Gaudi::Property< bool > m_placeMuonInView
Gaudi::Property< std::string > m_schedulerName
Gaudi::Property< bool > m_placeJetInView
StatusCode placeRoIInView(const ElementLink< TrigRoiDescriptorCollection > &roi, SG::View *view, const EventContext &context) const
Seeds a newly created view with an ROI collection containing the single seeding ROI.