diff --git a/PhysicsAnalysis/AnalysisCommon/PATCore/PATCore/IAsgSelectionWithVertexTool.h b/PhysicsAnalysis/AnalysisCommon/PATCore/PATCore/IAsgSelectionWithVertexTool.h
new file mode 100644
index 0000000000000000000000000000000000000000..4247f4e23eb0711a632746d38a8f6aead671213a
--- /dev/null
+++ b/PhysicsAnalysis/AnalysisCommon/PATCore/PATCore/IAsgSelectionWithVertexTool.h
@@ -0,0 +1,55 @@
+///////////////////////// -*- C++ -*- /////////////////////////////
+
+/*
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+*/
+
+// IAsgSelectionWithVertexTool.h
+// Header file for class IAsgSelectionWithVertexTool
+// Author: Karsten Koeneke <karsten.koeneke@cern.ch>
+///////////////////////////////////////////////////////////////////
+#ifndef PATCORE_IASGSELECTIONWITHVERTEXTOOL_H
+#define PATCORE_IASGSELECTIONWITHVERTEXTOOL_H 1
+
+// FrameWork includes
+#include "AsgTools/IAsgTool.h"
+
+// Include the return object
+#include "PATCore/AcceptInfo.h"
+#include "PATCore/AcceptData.h"
+
+// Forward declaration
+namespace xAOD {
+  class IParticle;
+  class Vertex_v1;
+  typedef Vertex_v1 Vertex;
+}
+
+class IAsgSelectionWithVertexTool
+  : virtual public asg::IAsgTool
+{
+  /// Declare the interface ID for this pure-virtual interface class to the Athena framework
+  ASG_TOOL_INTERFACE(IAsgSelectionWithVertexTool)
+
+
+  ///////////////////////////////////////////////////////////////////
+  // Public methods:
+  ///////////////////////////////////////////////////////////////////
+public:
+
+  ///////////////////////////////////////////////////////////////////
+  // Const methods:
+  ///////////////////////////////////////////////////////////////////
+
+  /** Method to get the AcceptInfo to query what cuts are defined. */
+  virtual const asg::AcceptInfo& getAcceptInfo( ) const = 0;
+
+
+  /** The main accept method: the actual cuts are applied here */
+  virtual asg::AcceptData accept( const xAOD::IParticle* /*part*/,
+                                  const xAOD::Vertex* /*vertex=0*/ ) const = 0;
+
+
+};
+
+#endif //> !PATCORE_IASGSELECTIONWITHVERTEXTOOL_H
diff --git a/PhysicsAnalysis/AnalysisCommon/PATCore/PATCore/selection.xml b/PhysicsAnalysis/AnalysisCommon/PATCore/PATCore/selection.xml
index 2f639ec66ff925beda2d81939e78cecd799837e7..b83778a2b173a92005267243426c365c5179714c 100644
--- a/PhysicsAnalysis/AnalysisCommon/PATCore/PATCore/selection.xml
+++ b/PhysicsAnalysis/AnalysisCommon/PATCore/PATCore/selection.xml
@@ -3,4 +3,5 @@
     <class name="asg::AcceptData" />
     <!--<class name="std::bitset<32>" />-->
     <class name="IAsgSelectionTool" />
+    <class name="IAsgSelectionWithVertexTool" />
 </lcgdict>