ATLAS Offline Software
Loading...
Searching...
No Matches
IComboHypoTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef DECISIONHANDLING_ICOMBOHYPOTOOL_H
5#define DECISIONHANDLING_ICOMBOHYPOTOOL_H 1
6
8#include "GaudiKernel/IAlgTool.h"
9
10
11namespace Combo {
12
17 typedef std::map<std::string, std::vector<int>> MultiplicityReqMap;
18
23 typedef std::map<std::string, std::vector<int>> LegMap;
24
28 typedef std::map<TrigCompositeUtils::DecisionID, std::vector<ElementLink<TrigCompositeUtils::DecisionContainer>>> LegDecisionsMap;
29
33 typedef std::pair<TrigCompositeUtils::DecisionID, ElementLink<TrigCompositeUtils::DecisionContainer> > LegDecision;
34}
35
36
41class IComboHypoTool: virtual public ::IAlgTool {
42
43 public:
45
46 virtual StatusCode decide(Combo::LegDecisionsMap& passingLegs, const EventContext& /*ctx*/) const = 0 ;
47
48};
49
50
51#endif //> !DECISIONHANDLING_ICOMBOHYPOTOOL_H
std::map< std::string, std::vector< int > > MultiplicityReqMap
Map from the chain name to the multiplicities required at each input.
std::pair< TrigCompositeUtils::DecisionID, ElementLink< TrigCompositeUtils::DecisionContainer > > LegDecision
LegDecision keeps a given Decision Object associated with a specific leg when being used inside a sin...
std::map< TrigCompositeUtils::DecisionID, std::vector< ElementLink< TrigCompositeUtils::DecisionContainer > > > LegDecisionsMap
LegDecisionsMap For a given chain leg key, this map holds all Decision Objects which are active on th...
std::map< std::string, std::vector< int > > LegMap
Map from the chain name to legs required at each input.
DeclareInterfaceID(IComboHypoTool, 1, 0)
virtual StatusCode decide(Combo::LegDecisionsMap &passingLegs, const EventContext &) const =0