00001 #ifndef ASSOCIATIONUTILS_IOVERLAPREMOVALTOOL2_H
00002 #define ASSOCIATIONUTILS_IOVERLAPREMOVALTOOL2_H
00003
00004
00005 #include "AsgTools/IAsgTool.h"
00006
00007
00008 #include "xAODEgamma/ElectronContainer.h"
00009 #include "xAODEgamma/PhotonContainer.h"
00010 #include "xAODJet/JetContainer.h"
00011 #include "xAODMuon/MuonContainer.h"
00012 #include "xAODTau/TauJetContainer.h"
00013
00014
00015 #include "AssociationUtils/IOverlapRemovalToolLegacy.h"
00016
00017
00018 namespace ORUtils
00019 {
00020
00026 class IOverlapRemovalTool : public virtual asg::IAsgTool
00027 {
00028
00030 ASG_TOOL_INTERFACE(IOverlapRemovalTool)
00031
00032 public:
00033
00037 virtual StatusCode
00038 removeOverlaps(const xAOD::ElectronContainer* electrons,
00039 const xAOD::MuonContainer* muons,
00040 const xAOD::JetContainer* jets,
00041 const xAOD::TauJetContainer* taus = 0,
00042 const xAOD::PhotonContainer* photons = 0,
00043 const xAOD::JetContainer* fatJets = 0) const = 0;
00044
00045 };
00046
00047 }
00048
00049 #endif