21 return StatusCode::SUCCESS;
54 if (afpVtxHandle->size() == 0) {
58 if (idVtxHandle->size() == 0) {
64 if (skipHypoTool != 3 && idVtxHandle->size() == 1 && idVtxHandle->at(0)->vxTrackAtVertexAvailable() ==
false) {
74 for (
size_t i = 0; i < afpVtxHandle->size(); ++i) {
85 for (
size_t i = 0; i < idVtxHandle->size(); ++i) {
88 if (skipHypoTool == 0)
ATH_MSG_DEBUG(
"ID vertex [" << i <<
"] z position: " << idVtx->
z()
102 std::vector<TrigAFPToFHypoTool::AFPToFHypoToolInfo> hypoToolInput;
107 if (skipHypoTool != 0)
113 for (
size_t i = 0; i < inputDecisionsHandle->size(); ++i) {
114 const Decision* previousDecision = inputDecisionsHandle->at(i);
136 hypoToolInput.emplace_back(inputPassingChains, afpVtx, idVtx, outputDecision);
146 ATH_CHECK( hypoBaseOutputProcessing(outputDecisionsHandle) );
148 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
ElementLink implementation for ROOT usage.
Hypothesis algorithms take the output of reco algorithms and the decision from the preceeding InputMa...
Declare a monitored scalar variable.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
pointer_type ptr()
Dereference the pointer.
ToolHandle< GenericMonitoringTool > m_monTool
virtual StatusCode initialize() override
virtual StatusCode execute(const EventContext &context) const override
SG::ReadHandleKey< xAOD::VertexContainer > m_inputIdVtxKey
TrigAFPToFHypoAlg(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< xAOD::AFPVertexContainer > m_inputAfpVtxKey
ToolHandleArray< TrigAFPToFHypoTool > m_hypoTools
float position() const
Vertex position .
bool setObjectLink(const std::string &name, const ElementLink< CONTAINER > &link)
Set the link to an object.
float z() const
Returns the z position.
size_t nTrackParticles() const
Get the number of tracks associated with this vertex.
float numberDoF() const
Returns the number of degrees of freedom of the vertex fit as float.
bool vxTrackAtVertexAvailable() const
Check if VxTrackAtVertices are attached to the object.
float chiSquared() const
Returns the of the vertex fit as float.
void fill(const ToolHandle< GenericMonitoringTool > &tool, T &&... variables)
xAOD::TrigComposite Decision
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.
const std::string & featureString()
std::set< DecisionID > DecisionIDContainer
SG::WriteHandle< DecisionContainer > createAndStore(const SG::WriteHandleKey< DecisionContainer > &key, const EventContext &ctx)
Creates and right away records the DecisionContainer with the key.
const std::string & hypoAlgNodeName()
void linkToPrevious(Decision *d, const std::string &previousCollectionKey, size_t previousIndex)
Links to the previous object, location of previous 'seed' decision supplied by hand.
void decisionIDs(const Decision *d, DecisionIDContainer &destination)
Extracts DecisionIDs stored in the Decision object.
Vertex_v1 Vertex
Define the latest version of the vertex class.