ATLAS Offline Software
Loading...
Searching...
No Matches
MatchingImplementation.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5*/
6
7
8#ifndef TRIGGERMATCHINGTOOL_MATCHINGIMPLEMENTATION_H
9#define TRIGGERMATCHINGTOOL_MATCHINGIMPLEMENTATION_H
10
11#include <map>
12
16
17namespace Trig {
18
19
21
22
23class MatchingTool;
24
30}
31
32
34public:
36 const Trig::TrigDecisionTool* tdt() const;
37 bool matchDistanceMatrix(const std::vector<std::vector<double> >& matrix, const Trig::MatchingStrategy::Strategy strategy = Trig::MatchingStrategy::MinimalSum, double threshold = 0.0) const ;
38 inline void setThreshold(double in) { m_threshold=in; }
39private:
40 bool assocIsMatched(const IAssociationStrategy::index_assignment_t& association, const std::vector<std::vector<double> >& matrix, double threshold) const ;
42 std::map<Trig::MatchingStrategy::Strategy,std::unique_ptr<IAssociationStrategy> > m_strategies;
43 double m_threshold; //the distance threshold for a match
44};
45
46}
47
48#endif
std::map< unsigned int, unsigned int > index_assignment_t
MatchingImplementation(MatchingTool &mt, double threshold=0.4)
std::map< Trig::MatchingStrategy::Strategy, std::unique_ptr< IAssociationStrategy > > m_strategies
bool assocIsMatched(const IAssociationStrategy::index_assignment_t &association, const std::vector< std::vector< double > > &matrix, double threshold) const
const Trig::TrigDecisionTool * tdt() const
bool matchDistanceMatrix(const std::vector< std::vector< double > > &matrix, const Trig::MatchingStrategy::Strategy strategy=Trig::MatchingStrategy::MinimalSum, double threshold=0.0) const
Class mimicking the AthMessaging class from the offline software.
The common trigger namespace for trigger analysis tools.