Skip to content
Snippets Groups Projects
Commit 711c41ce authored by Vakhtang Tsulaia's avatar Vakhtang Tsulaia
Browse files

Merge branch 'master-triganalysistool' into 'master'

Added feature requests for TriggerMatchingTool

See merge request atlas/athena!13888
parents fd76c1bc bb71fa39
No related branches found
No related tags found
No related merge requests found
......@@ -19,6 +19,7 @@ atlas_depends_on_subdirs(
Event/xAOD/xAODBase
Trigger/TrigAnalysis/TrigDecisionTool
Trigger/TrigEvent/TrigNavStructure
Trigger/TrigEvent/TrigDecisionInterface
PRIVATE
Event/FourMomUtils
${extra_deps} )
......@@ -33,6 +34,7 @@ atlas_add_library( TriggerMatchingToolLib
PUBLIC_HEADERS TriggerMatchingTool
PRIVATE_INCLUDE_DIRS ${Boost_INCLUDE_DIRS}
LINK_LIBRARIES AsgTools xAODBase TrigNavStructure TrigDecisionToolLib
TrigDecisionInterface
PRIVATE_LINK_LIBRARIES ${Boost_LIBRARIES} FourMomUtils )
if( NOT XAOD_STANDALONE )
......
......@@ -10,6 +10,7 @@ namespace Trig{
{xAOD::Type::Electron, 0.1},
{xAOD::Type::Photon, 0.1},
{xAOD::Type::Tau, 0.1},
{xAOD::Type::Jet, 0.3},
} {
}
......
......@@ -22,6 +22,8 @@ namespace Trig {
{
declareProperty( "TrigDecisionTool", m_trigDecTool);
m_condition = TrigDefs::Physics;
#ifndef XAOD_STANDALONE
auto props = getProperties();
for( Property* prop : props ) {
......@@ -108,7 +110,7 @@ namespace Trig {
return false;
}
auto iparticle_feats = comb.getIParticle(clid,container_typename);
auto iparticle_feats = comb.getIParticle(clid,container_typename, "", m_condition);
result.features = iparticle_feats;
......@@ -219,6 +221,10 @@ namespace Trig {
return std::move(match_result);
}
void MatchingTool::setCondition(unsigned int condition) {
m_condition = condition;
}
Trig::MatchingImplementation* MatchingTool::impl(){
return m_impl;
}
......
......@@ -9,6 +9,7 @@ TypeMap::TypeMap(){
m_typemap[xAOD::Type::Electron] = std::make_pair(1087532415, "xAOD::ElectronContainer");
m_typemap[xAOD::Type::Photon] = std::make_pair(1105575213, "xAOD::PhotonContainer");
m_typemap[xAOD::Type::Tau] = std::make_pair(1177172564, "xAOD::TauJetContainer");
m_typemap[xAOD::Type::Jet] = std::make_pair(1244316195, "xAOD::JetContainer");
}
bool TypeMap::isKnown(const xAOD::Type::ObjectType& recoType){
......
......@@ -14,6 +14,7 @@
#include "TriggerMatchingTool/IMatchResult.h"
#include "TriggerMatchingTool/IMatchConfig.h"
#include "TrigDecisionInterface/Conditions.h"
namespace xAOD{
class IParticle;
......@@ -41,6 +42,8 @@ public:
///multi-object trigger matching returning a match result object
virtual std::unique_ptr<IMatchResult> match_result(const std::vector<const xAOD::IParticle*>& recoObjects, const std::string& chain, const IMatchConfig* mc = nullptr) = 0;
virtual void setCondition(unsigned int condition=TrigDefs::Physics)=0;
protected:
virtual MatchingImplementation* impl() = 0;
};
......
......@@ -51,6 +51,8 @@ public:
//main matching method
std::unique_ptr<IMatchResult> match_result(const std::vector<const xAOD::IParticle*>& recoObjects, const std::string& chain, const IMatchConfig* mc = 0) override;
void setCondition(unsigned int condition=TrigDefs::Physics);
protected:
MatchingImplementation* impl() override;
......@@ -79,6 +81,7 @@ private:
TypeMap m_typeMap;
ToolHandle<Trig::TrigDecisionTool> m_trigDecTool;
double m_matchingThreshold;
unsigned int m_condition;
};
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment