diff --git a/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/TruthD3PDAnalysis/IGenObjectsFilterTool.h b/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/TruthD3PDAnalysis/IGenObjectsFilterTool.h
index ba5cfa518deb39ee8e69dee1c537542b2627ecfc..9223bbfebb4c73880b236301ccc73d38527e9de7 100644
--- a/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/TruthD3PDAnalysis/IGenObjectsFilterTool.h
+++ b/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/TruthD3PDAnalysis/IGenObjectsFilterTool.h
@@ -72,7 +72,7 @@ public:
     * @returns <code>true</code> if the object should be selected,
     *          <code>false</code> otherwise
     */
-   virtual bool pass( const HepMC::GenParticle* part,
+   virtual bool pass( HepMC::ConstGenParticlePtr part,
                       const McEventCollection* coll = 0 ) const = 0;
 
    /// Function selecting GenVertex objects
@@ -85,7 +85,7 @@ public:
     * @returns <code>true</code> if the object should be selected,
     *          <code>false</code> otherwise
     */
-   virtual bool pass( const HepMC::GenVertex* vtx,
+   virtual bool pass( HepMC::ConstGenVertexPtr vtx,
                       const McEventCollection* coll = 0 ) const = 0;
 
 }; // class IGenObjectsFilterTool
diff --git a/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.cxx b/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.cxx
index 997025e37b1f82d302b313f39a92c5a7ddcf52b1..45098962fbd6f19cd2f7d8b174e4abf42c43acb2 100644
--- a/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.cxx
+++ b/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.cxx
@@ -35,7 +35,7 @@ SimpleTruthParticleFilterTool::SimpleTruthParticleFilterTool
  * @brief Test to see if we want to keep a particle.
  */
 bool
-SimpleTruthParticleFilterTool::isAccepted (const HepMC::GenParticle* p)
+SimpleTruthParticleFilterTool::isAccepted (HepMC::ConstGenParticlePtr p)
 {
   bool ok = false;
 
diff --git a/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.h b/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.h
index 9b3c1d4141189ffb712b0a83eef51c80e402aa08..546c44d0d2d5a2c55b401716024e5ed1aad86b37 100644
--- a/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.h
+++ b/PhysicsAnalysis/D3PDMaker/TruthD3PDAnalysis/src/SimpleTruthParticleFilterTool.h
@@ -36,7 +36,7 @@ public:
                            const IInterface* parent);
 
   /// Test to see if we want to keep a particle.
-  virtual bool isAccepted (const HepMC::GenParticle* p);
+  virtual bool isAccepted (HepMC::ConstGenParticlePtr p);
 
 private:
   /// Parameter: PDG ID to filter on