diff --git a/Calorimeter/CaloLocalHadCalib/src/GetLCDeadMaterial.cxx b/Calorimeter/CaloLocalHadCalib/src/GetLCDeadMaterial.cxx
index 4d0c8539a2a9aa78447638297161aeae21e74d4f..d43c728382d1f753b2e81528ade0b4debefe1c0d 100644
--- a/Calorimeter/CaloLocalHadCalib/src/GetLCDeadMaterial.cxx
+++ b/Calorimeter/CaloLocalHadCalib/src/GetLCDeadMaterial.cxx
@@ -142,7 +142,7 @@ StatusCode GetLCDeadMaterial::initialize()
   }
 
   // pointer to the chain and data in it
-  std::auto_ptr<CaloHadDMCoeffData> dmData (new CaloHadDMCoeffData(pChain));
+  std::unique_ptr<CaloHadDMCoeffData> dmData (new CaloHadDMCoeffData(pChain));
   if(m_ClassificationType == "particleid") {
     ATH_MSG_INFO( "Particle ID em fraction will be used to classify clusters:"  );
     m_isSingleParticle = false;
diff --git a/Control/AthenaExamples/AthExThinning/src/AthExDecayCnv.cxx b/Control/AthenaExamples/AthExThinning/src/AthExDecayCnv.cxx
index d0bc318797cf77536dee88d5f06beeed4c26e41c..8a4c56d223f19dc11a971ac040c6ca2d700322cf 100644
--- a/Control/AthenaExamples/AthExThinning/src/AthExDecayCnv.cxx
+++ b/Control/AthenaExamples/AthExThinning/src/AthExDecayCnv.cxx
@@ -67,7 +67,7 @@ AthExDecay* AthExDecayCnv::createTransient()
    if ( compareClassGuid(p1_guid) ) {
 
      // using auto_ptr ensures deletion of the persistent object
-     std::auto_ptr<AthExDecay_p1> persObj( poolReadObject<AthExDecay_p1>() );
+     std::unique_ptr<AthExDecay_p1> persObj( poolReadObject<AthExDecay_p1>() );
      AthExDecayCnv_p1 cnv;
      transObj = cnv.createTransient( persObj.get(), msg );
      
diff --git a/Control/AthenaExamples/AthExThinning/src/AthExElephantinoCnv.cxx b/Control/AthenaExamples/AthExThinning/src/AthExElephantinoCnv.cxx
index 02f636f1a3cf84ca98e230714291c249f6956778..613fc6ca26cd38669287667ab3b581e597896037 100644
--- a/Control/AthenaExamples/AthExThinning/src/AthExElephantinoCnv.cxx
+++ b/Control/AthenaExamples/AthExThinning/src/AthExElephantinoCnv.cxx
@@ -67,7 +67,7 @@ AthExElephantino* AthExElephantinoCnv::createTransient()
    if ( compareClassGuid(p1_guid) ) {
 
      // using auto_ptr ensures deletion of the persistent object
-     std::auto_ptr<AthExElephantino_p1> persObj( poolReadObject<AthExElephantino_p1>() );
+     std::unique_ptr<AthExElephantino_p1> persObj( poolReadObject<AthExElephantino_p1>() );
      AthExElephantinoCnv_p1 cnv;
      transObj = cnv.createTransient( persObj.get(), msg );
      
diff --git a/Control/AthenaExamples/AthExThinning/src/AthExFatObjectCnv.cxx b/Control/AthenaExamples/AthExThinning/src/AthExFatObjectCnv.cxx
index 1bb7a147a377ff8fc76997642d37bb20cbb65ef2..23d78ab013939493c63fd6870e4cbf4a3386b1b7 100644
--- a/Control/AthenaExamples/AthExThinning/src/AthExFatObjectCnv.cxx
+++ b/Control/AthenaExamples/AthExThinning/src/AthExFatObjectCnv.cxx
@@ -67,7 +67,7 @@ AthExFatObject* AthExFatObjectCnv::createTransient()
    if ( compareClassGuid(p1_guid) ) {
 
      // using auto_ptr ensures deletion of the persistent object
-     std::auto_ptr<AthExFatObject_p1> persObj( poolReadObject<AthExFatObject_p1>() );
+     std::unique_ptr<AthExFatObject_p1> persObj( poolReadObject<AthExFatObject_p1>() );
      AthExFatObjectCnv_p1 cnv;
      transObj = cnv.createTransient( persObj.get(), msg );
      
diff --git a/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCnv.cxx b/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCnv.cxx
index 1131151160999f4e30b83d33e0c95f43540fa68c..3d261c8b561038c7e8e79f038ddda56e3b946a39 100644
--- a/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCnv.cxx
+++ b/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCnv.cxx
@@ -23,12 +23,12 @@ EventBookkeeper* EventBookkeeperCnv::createTransient() {
   static pool::Guid   p2_guid("EACBE9F1-84F1-4A51-9303-A39619FE965A");
   if( compareClassGuid(p1_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< EventBookkeeper_p1 > col_vect( poolReadObject< EventBookkeeper_p1 >() );
+    std::unique_ptr< EventBookkeeper_p1 > col_vect( poolReadObject< EventBookkeeper_p1 >() );
     return m_TPConverterP1.createTransient( col_vect.get(), log );
   }
   else if( compareClassGuid(p2_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< EventBookkeeper_p2 > col_vect( poolReadObject< EventBookkeeper_p2 >() );
+    std::unique_ptr< EventBookkeeper_p2 > col_vect( poolReadObject< EventBookkeeper_p2 >() );
     return m_TPConverter.createTransient( col_vect.get(), log );
   }
   else {
diff --git a/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCollectionCnv.cxx b/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCollectionCnv.cxx
index 0cbe9fc45b2a1c1178fee6718fe7c18ca3a81850..1846a5e27c7ec980a7f65f27b151ed12dc1e5d5d 100644
--- a/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCollectionCnv.cxx
+++ b/Event/EventBookkeeperAthenaPool/src/EventBookkeeperCollectionCnv.cxx
@@ -24,12 +24,12 @@ EventBookkeeperCollection* EventBookkeeperCollectionCnv::createTransient() {
   static pool::Guid   p2_guid("4CB34AE0-ECE5-404B-8CB7-B2E20F509DBE");
   if( compareClassGuid(p1_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< EventBookkeeperCollection_p1 > col_vect( poolReadObject< EventBookkeeperCollection_p1 >() );
+    std::unique_ptr< EventBookkeeperCollection_p1 > col_vect( poolReadObject< EventBookkeeperCollection_p1 >() );
     return m_TPConverterP1.createTransient( col_vect.get(), log );
   }
   else if( compareClassGuid(p2_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< EventBookkeeperCollection_p2 > col_vect( poolReadObject< EventBookkeeperCollection_p2 >() );
+    std::unique_ptr< EventBookkeeperCollection_p2 > col_vect( poolReadObject< EventBookkeeperCollection_p2 >() );
     return m_TPConverter.createTransient( col_vect.get(), log );
   }
   else {
diff --git a/Event/EventBookkeeperAthenaPool/src/SkimDecisionCnv.cxx b/Event/EventBookkeeperAthenaPool/src/SkimDecisionCnv.cxx
index c7d780d9934da775e99a0453acea98898ecf58d4..e06c9b0652089bfa53160747a5bc540d7d75363c 100644
--- a/Event/EventBookkeeperAthenaPool/src/SkimDecisionCnv.cxx
+++ b/Event/EventBookkeeperAthenaPool/src/SkimDecisionCnv.cxx
@@ -23,7 +23,7 @@ SkimDecision* SkimDecisionCnv::createTransient() {
   static pool::Guid   p1_guid("61CEDFF0-46DD-42BD-B43A-12F850D3752E"); 
   if( compareClassGuid(p1_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< SkimDecision_p1 > col_vect( poolReadObject< SkimDecision_p1 >() );
+    std::unique_ptr< SkimDecision_p1 > col_vect( poolReadObject< SkimDecision_p1 >() );
     return m_TPConverter.createTransient( col_vect.get(), log );
   }
   else {
diff --git a/Event/EventBookkeeperAthenaPool/src/SkimDecisionCollectionCnv.cxx b/Event/EventBookkeeperAthenaPool/src/SkimDecisionCollectionCnv.cxx
index 0baf9819864faafc2f73bbdb1f4ab064b4f52207..c6fec0d6594a94d0ef8908b80d65a36542bc87a9 100644
--- a/Event/EventBookkeeperAthenaPool/src/SkimDecisionCollectionCnv.cxx
+++ b/Event/EventBookkeeperAthenaPool/src/SkimDecisionCollectionCnv.cxx
@@ -23,7 +23,7 @@ SkimDecisionCollection* SkimDecisionCollectionCnv::createTransient() {
   static pool::Guid   p1_guid("5705559E-F062-4F15-A220-78A8542EFBF3");
   if( compareClassGuid(p1_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< SkimDecisionCollection_p1 > col_vect( poolReadObject< SkimDecisionCollection_p1 >() );
+    std::unique_ptr< SkimDecisionCollection_p1 > col_vect( poolReadObject< SkimDecisionCollection_p1 >() );
     return m_TPConverter.createTransient( col_vect.get(), log );
   }
   else {
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrCompleteCnv.cxx
index 9c032a76b9a1ec7fc4403cffd2a6805695ae5675..c5fa65758662df0df8cacc21bd17c3b29115e089 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrCompleteCnv.cxx
@@ -30,7 +30,7 @@ LArAutoCorrCompleteCnv::createTransient ()
     static pool::Guid   p0_guid("4E7E36E9-2121-4327-88C5-8A516D6D6D2A");
     if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArAutoCorrSubset_p1 > col_vect( poolReadObject< LArAutoCorrSubset_p1 >() );
+        std::unique_ptr< LArAutoCorrSubset_p1 > col_vect( poolReadObject< LArAutoCorrSubset_p1 >() );
         MsgStream log(msgSvc(), "LArAutoCorrCompleteCnv" ); 
         //log << MSG::INFO << "Reading LArAutoCorrSubset_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
@@ -41,7 +41,7 @@ LArAutoCorrCompleteCnv::createTransient ()
         MsgStream log(msgSvc(), "LArAutoCorrCompleteCnv" ); 
         log << MSG::DEBUG << "Reading LArAutoCorrSubset (original)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArAutoCorrP> > subset ( poolReadObject< LArConditionsSubset<LArAutoCorrP> >() );
+        std::unique_ptr< LArConditionsSubset<LArAutoCorrP> > subset ( poolReadObject< LArConditionsSubset<LArAutoCorrP> >() );
         // Here we must convert from LArAutoCorrP to LArAutoCorrP1
         
         log << MSG::DEBUG << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrMCCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrMCCnv.cxx
index 8e41ecb26633f5cf984ef87c971a9d3735809b0e..055aceb75863cd2269db2bd430fb9bbbb95867a4 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrMCCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArAutoCorrMCCnv.cxx
@@ -31,7 +31,7 @@ LArAutoCorrMCCnv::createTransient ()
     static pool::Guid   p0_guid("4E7E36E9-2121-4327-88C5-8A516D6D6D2A");
     if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArAutoCorrSubset_p1 > col_vect( poolReadObject< LArAutoCorrSubset_p1 >() );
+        std::unique_ptr< LArAutoCorrSubset_p1 > col_vect( poolReadObject< LArAutoCorrSubset_p1 >() );
         MsgStream log(msgSvc(), "LArAutoCorrMCCnv" ); 
         //log << MSG::INFO << "Reading LArAutoCorrSubset_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
@@ -42,7 +42,7 @@ LArAutoCorrMCCnv::createTransient ()
         MsgStream log(msgSvc(), "LArAutoCorrMCCnv" ); 
         log << MSG::INFO << "Reading LArAutoCorrSubset (original)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArAutoCorrP> > subset ( poolReadObject< LArConditionsSubset<LArAutoCorrP> >() );
+        std::unique_ptr< LArConditionsSubset<LArAutoCorrP> > subset ( poolReadObject< LArConditionsSubset<LArAutoCorrP> >() );
         // Here we must convert from LArAutoCorrP to LArAutoCorrP1
         
         log << MSG::INFO << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArCaliWaveContainerCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArCaliWaveContainerCnv.cxx
index b4fe90b21962eb2f769b0a15cda28a5c302b0623..aa4ddcb8f68169587a4d97ed6d9e48f3c1605a5f 100644
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArCaliWaveContainerCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArCaliWaveContainerCnv.cxx
@@ -37,7 +37,7 @@ LArCaliWaveContainerCnv::createTransient ()
 	
     if( compareClassGuid(p2_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArCaliWaveSubset_p2 > col_vect( poolReadObject< LArCaliWaveSubset_p2 >() );
+        std::unique_ptr< LArCaliWaveSubset_p2 > col_vect( poolReadObject< LArCaliWaveSubset_p2 >() );
         log << MSG::DEBUG << "READING LArCaliWaveSubset_p2" << endmsg; 
 		LArCaliWaveTransType* transObj = TPconverter2.createTransient( col_vect.get(), log );
         log << MSG::DEBUG << "READING LArCaliWaveSubset_p2 Success !" << endmsg;
@@ -45,7 +45,7 @@ LArCaliWaveContainerCnv::createTransient ()
     }    
 	else if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArCaliWaveSubset_p1 > col_vect( poolReadObject< LArCaliWaveSubset_p1 >() );
+        std::unique_ptr< LArCaliWaveSubset_p1 > col_vect( poolReadObject< LArCaliWaveSubset_p1 >() );
         log << MSG::DEBUG << "READING LArCaliWaveSubset_p1" << endmsg; 
 		LArCaliWaveTransType* transObj = TPconverter1.createTransient( col_vect.get(), log );
         log << MSG::DEBUG << "READING LArCaliWaveSubset_p1 Success !" << endmsg;
@@ -55,7 +55,7 @@ LArCaliWaveContainerCnv::createTransient ()
         MsgStream log(msgSvc(), "LArCaliWaveContainerCnv" ); 
         log << MSG::DEBUG << " READING LArCaliWaveSubset (before TP split)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArCaliWaveVec> > subset ( poolReadObject< LArConditionsSubset<LArCaliWaveVec> >() );
+        std::unique_ptr< LArConditionsSubset<LArCaliWaveVec> > subset ( poolReadObject< LArConditionsSubset<LArCaliWaveVec> >() );
         
         return (createTransient(subset.get()));
     } 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uACompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uACompleteCnv.cxx
index b91936cbc8894d038512684b74115ee9c7f1c272..34c0064cfa9785a4ffdaf5f9e318ee785ce368e2 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uACompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uACompleteCnv.cxx
@@ -23,7 +23,7 @@ LArDAC2uACompleteCnv::createTransient ()
     // subset from before TP separation    
     MsgStream log(msgSvc(), "LArDAC2uACompleteCnv" ); 
     log << MSG::DEBUG << "Reading LArDAC2uASubset (original)" << endmsg;     
-    std::auto_ptr< LArConditionsSubset<LArDAC2uAP> > subset ( poolReadObject< LArConditionsSubset<LArDAC2uAP> >() );
+    std::unique_ptr< LArConditionsSubset<LArDAC2uAP> > subset ( poolReadObject< LArConditionsSubset<LArDAC2uAP> >() );
     return (createTransient(subset.get()));
     
   } 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uAMCCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uAMCCnv.cxx
index 896dd895ebebb58f4037ed6c62434857fcd23d4d..e9ce20f6f68c749a150b0b6511ac3774d8cf9753 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uAMCCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDAC2uAMCCnv.cxx
@@ -23,7 +23,7 @@ LArDAC2uAMCCnv::createTransient ()
     // subset from before TP separation    
     MsgStream log(msgSvc(), "LArDAC2uAMCCnv" ); 
     log << MSG::DEBUG << "Reading LArDAC2uASubset (original)" << endmsg;     
-    std::auto_ptr< LArConditionsSubset<LArDAC2uAP> > subset ( poolReadObject< LArConditionsSubset<LArDAC2uAP> >() );
+    std::unique_ptr< LArConditionsSubset<LArDAC2uAP> > subset ( poolReadObject< LArConditionsSubset<LArDAC2uAP> >() );
     return (createTransient(subset.get()));
     
   } 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDSPThresholdsCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDSPThresholdsCompleteCnv.cxx
index 54b05c150e83005c1f94330940d68f0126dfb65b..e0b60833a6d7ab212d03a91c9f394f22a6b021af 100644
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDSPThresholdsCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArDSPThresholdsCompleteCnv.cxx
@@ -27,7 +27,7 @@ LArDSPThresholdsCompleteCnv::createTransient () {
     static pool::Guid   p0_guid("09607438-09CC-4E40-A1E2-23F0B021DF3D");
     if( compareClassGuid(p0_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArDSPThresholdsSubset_p1 > col_vect( poolReadObject< LArDSPThresholdsSubset_p1 >() );
+        std::unique_ptr< LArDSPThresholdsSubset_p1 > col_vect( poolReadObject< LArDSPThresholdsSubset_p1 >() );
         MsgStream log(msgSvc(), "LArDSPThresholdsCompleteCnv" ); 
         //log << MSG::INFO << "Reading LArDSPThresholdsSubset_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalCompleteCnv.cxx
index 8f38b2a7f3098dd97be148597259c6890d223e78..fe4ca0be90f9647ae04df1feb568d666f8525ae5 100644
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalCompleteCnv.cxx
@@ -26,7 +26,7 @@ LArMphysOverMcalCompleteCnv::createTransient ()
     return p;
   else if( compareClassGuid(p1_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< LArMphysOverMcalSubset_p1 > col_vect( poolReadObject< LArMphysOverMcalSubset_p1 >() );
+    std::unique_ptr< LArMphysOverMcalSubset_p1 > col_vect( poolReadObject< LArMphysOverMcalSubset_p1 >() );
     MsgStream log(msgSvc(), "LArMphysOverMcalCompleteCnv" ); 
     //log << MSG::INFO << "Reading LArMphysOverMcalSubset_p1" << endmsg; 
     return TPconverter.createTransient( col_vect.get(), log );
@@ -37,7 +37,7 @@ LArMphysOverMcalCompleteCnv::createTransient ()
     MsgStream log(msgSvc(), "LArMphysOverMcalCompleteCnv" ); 
     log << MSG::DEBUG << "Reading LArMphysOverMcalSubset (original)" << endmsg; 
     
-    std::auto_ptr< LArConditionsSubset<LArMphysOverMcalP> > subset ( poolReadObject< LArConditionsSubset<LArMphysOverMcalP> >() );
+    std::unique_ptr< LArConditionsSubset<LArMphysOverMcalP> > subset ( poolReadObject< LArConditionsSubset<LArMphysOverMcalP> >() );
     // Here we must convert from LArMphysOverMcalP to LArMphysOverMcalP1
     
     log << MSG::DEBUG << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalMCCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalMCCnv.cxx
index 1320e39c176b40c8e98332a3514a1cd59eba5413..802411d778610f5daff682fd38801a97f4b66ff9 100644
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalMCCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArMphysOverMcalMCCnv.cxx
@@ -26,7 +26,7 @@ LArMphysOverMcalMCCnv::createTransient ()
     return p;
   else if( compareClassGuid(p1_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr< LArMphysOverMcalSubset_p1 > col_vect( poolReadObject< LArMphysOverMcalSubset_p1 >() );
+    std::unique_ptr< LArMphysOverMcalSubset_p1 > col_vect( poolReadObject< LArMphysOverMcalSubset_p1 >() );
     MsgStream log(msgSvc(), "LArMphysOverMcalMCCnv" ); 
     //log << MSG::INFO << "Reading LArMphysOverMcalSubset_p1" << endmsg; 
     return TPconverter.createTransient( col_vect.get(), log );
@@ -36,7 +36,7 @@ LArMphysOverMcalMCCnv::createTransient ()
     MsgStream log(msgSvc(), "LArMphysOverMcalMCCnv" ); 
     log << MSG::DEBUG << "Reading LArMphysOverMcalSubset (original)" << endmsg; 
     
-    std::auto_ptr< LArConditionsSubset<LArMphysOverMcalP> > subset ( poolReadObject< LArConditionsSubset<LArMphysOverMcalP> >() );
+    std::unique_ptr< LArConditionsSubset<LArMphysOverMcalP> > subset ( poolReadObject< LArConditionsSubset<LArMphysOverMcalP> >() );
     // Here we must convert from LArMphysOverMcalP to LArMphysOverMcalP1
     return (createTransient(subset.get()));
     
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCBinCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCBinCompleteCnv.cxx
index fa7c6f4103d13173663932a2691b885e6a0f5d8e..094bcea2dfd229ca7916e3a4f97c38dce747bf0e 100644
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCBinCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCBinCompleteCnv.cxx
@@ -22,7 +22,7 @@ LArOFCBinTransType* LArOFCBinCompleteCnv::createTransient () {
   static pool::Guid p1_guid("E7E2E993-4AF2-4782-9B8B-7668434CBAEC");
   if( compareClassGuid(p1_guid) ) {
     // using auto_ptr ensures deletion of the persistent object
-    std::auto_ptr<LArOFCBinPersType> col_vect( poolReadObject<LArOFCBinPersType>() );
+    std::unique_ptr<LArOFCBinPersType> col_vect( poolReadObject<LArOFCBinPersType>() );
     MsgStream log(msgSvc(), "LArOFCBinCompleteCnv" ); 
     //log << MSG::INFO << "Reading LArOFCBinSubset_p1" << endmsg; 
     return m_TPconverter.createTransient( col_vect.get(), log );
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCCompleteCnv.cxx
index bb66fd3ab6b20a33ca92d4f66a870c6bc5469054..beda74b599d5dd0a22687d7fc985d1291631a38e 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArOFCCompleteCnv.cxx
@@ -30,7 +30,7 @@ LArOFCCompleteCnv::createTransient () {
 
     if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArOFCSubset_p1 > col_vect( poolReadObject< LArOFCSubset_p1 >() );
+        std::unique_ptr< LArOFCSubset_p1 > col_vect( poolReadObject< LArOFCSubset_p1 >() );
         MsgStream log(msgSvc(), "LArOFCCompleteCnv" ); 
         //log << MSG::INFO << "Reading LArOFCSubset_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
@@ -41,7 +41,7 @@ LArOFCCompleteCnv::createTransient () {
         MsgStream log(msgSvc(), "LArOFCCompleteCnv" ); 
         log << MSG::DEBUG << "Reading LArOFCSubset (original)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArOFCP> > subset ( poolReadObject< LArConditionsSubset<LArOFCP> >() );
+        std::unique_ptr< LArConditionsSubset<LArOFCP> > subset ( poolReadObject< LArConditionsSubset<LArOFCP> >() );
         // Here we must convert from LArOFCP to LArOFCP1
         
         log << MSG::DEBUG << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalCompleteCnv.cxx
index 3dc53da3899e7fbd0c3374cca8151ddcd5ba5875..99c3145c8df336c0408972791f5c9747882fab12 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalCompleteCnv.cxx
@@ -32,14 +32,14 @@ LArPedestalCompleteCnv::createTransient ()
 
     if (compareClassGuid(p2_guid)) {
       // using auto_ptr ensures deletion of the persistent object
-      std::auto_ptr< LArPedestalSubset_p2 > col_vect( poolReadObject< LArPedestalSubset_p2 >() );
+      std::unique_ptr< LArPedestalSubset_p2 > col_vect( poolReadObject< LArPedestalSubset_p2 >() );
       MsgStream log(msgSvc(), "LArPedestalCompleteCnv" ); 
       //log << MSG::INFO << "Reading LArPedestalSubset_p1" << endmsg; 
       return TPconverter2.createTransient( col_vect.get(), log );
     }
     else if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArPedestalSubset_p1 > col_vect( poolReadObject< LArPedestalSubset_p1 >() );
+        std::unique_ptr< LArPedestalSubset_p1 > col_vect( poolReadObject< LArPedestalSubset_p1 >() );
         MsgStream log(msgSvc(), "LArPedestalCompleteCnv" ); 
         //log << MSG::INFO << "Reading LArPedestalSubset_p1" << endmsg; 
         return TPconverter1.createTransient( col_vect.get(), log );
@@ -50,7 +50,7 @@ LArPedestalCompleteCnv::createTransient ()
         MsgStream log(msgSvc(), "LArPedestalCompleteCnv" ); 
         log << MSG::DEBUG << "Reading LArPedestalSubset (original)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArPedestalP> > subset ( poolReadObject< LArConditionsSubset<LArPedestalP> >() );
+        std::unique_ptr< LArConditionsSubset<LArPedestalP> > subset ( poolReadObject< LArConditionsSubset<LArPedestalP> >() );
         // Here we must convert from LArPedestalP to LArPedestalP1
         
         log << MSG::DEBUG << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalMCCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalMCCnv.cxx
index 55e8969f0c26aca11e86d216e09e720c81ed0b61..dadac30ee43008eeea385630d62bb73bd0f11a9b 100644
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalMCCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPedestalMCCnv.cxx
@@ -31,7 +31,7 @@ LArPedestalMCCnv::createTransient ()
     static pool::Guid   p0_guid("C147EFC8-5283-4DAE-AD20-0E2CB79E54B6");
     if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArPedestalMC_p1 > col_vect( poolReadObject< LArPedestalMC_p1 >() );
+        std::unique_ptr< LArPedestalMC_p1 > col_vect( poolReadObject< LArPedestalMC_p1 >() );
         MsgStream log(msgSvc(), "LArPedestalMCCnv" ); 
         //log << MSG::INFO << "Reading LArPedestalMC_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPhysWaveContainerCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPhysWaveContainerCnv.cxx
index c1a00bcc9a2102d54cdaf1b78ec0e7d4081a31f2..2e8afdc5473ddaebace2ff302be6329e76d1b714 100644
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPhysWaveContainerCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArPhysWaveContainerCnv.cxx
@@ -33,7 +33,7 @@ LArPhysWaveContainerCnv::createTransient ()
 	static pool::Guid   p0_guid("C1108D27-6D30-41E8-892D-2AB127B868C9");
 	if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArPhysWaveSubset_p1 > col_vect( poolReadObject< LArPhysWaveSubset_p1 >() );
+        std::unique_ptr< LArPhysWaveSubset_p1 > col_vect( poolReadObject< LArPhysWaveSubset_p1 >() );
         log << MSG::DEBUG << "READING LArPhysWaveSubset_p1" << endmsg; 
 		LArPhysWaveTransType* transObj = TPconverter1.createTransient( col_vect.get(), log );
         log << MSG::DEBUG << "READING LArPhysWaveSubset_p1 Success !" << endmsg;
@@ -43,7 +43,7 @@ LArPhysWaveContainerCnv::createTransient ()
         MsgStream log(msgSvc(), "LArPhysWaveContainerCnv" ); 
         log << MSG::DEBUG << " READING LArPhysWaveSubset (before TP split)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArPhysWave> > subset ( poolReadObject< LArConditionsSubset<LArPhysWave> >() );
+        std::unique_ptr< LArConditionsSubset<LArPhysWave> > subset ( poolReadObject< LArConditionsSubset<LArPhysWave> >() );
         
         return (createTransient(subset.get()));
     } 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampCompleteCnv.cxx
index d80ed57fc6fd742a972643711b640b339afbe660..235cf0b1eb9011a52b30964a61a9d84c598eb751 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampCompleteCnv.cxx
@@ -30,7 +30,7 @@ LArRampCompleteCnv::createTransient ()
     static pool::Guid   p0_guid("4019776D-D528-4401-9CBD-7956C4B00607");
     if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArRampSubset_p1 > col_vect( poolReadObject< LArRampSubset_p1 >() );
+        std::unique_ptr< LArRampSubset_p1 > col_vect( poolReadObject< LArRampSubset_p1 >() );
         MsgStream log(msgSvc(), "LArRampCompleteCnv" ); 
         //log << MSG::INFO << "Reading LArRampSubset_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
@@ -41,7 +41,7 @@ LArRampCompleteCnv::createTransient ()
         MsgStream log(msgSvc(), "LArRampCompleteCnv" ); 
         log << MSG::DEBUG << "Reading LArRampSubset (original)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArRampP> > subset ( poolReadObject< LArConditionsSubset<LArRampP> >() );
+        std::unique_ptr< LArConditionsSubset<LArRampP> > subset ( poolReadObject< LArConditionsSubset<LArRampP> >() );
         // Here we must convert from LArRampP to LArRampP1
         
         log << MSG::DEBUG << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampMCCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampMCCnv.cxx
index c0ac3ae5964e671a8d0f60d266aadafcbd34708d..32ef0728b141618667b89ebf7fb01b891c87d0bb 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampMCCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArRampMCCnv.cxx
@@ -31,7 +31,7 @@ LArRampMCCnv::createTransient ()
     static pool::Guid   p0_guid("4019776D-D528-4401-9CBD-7956C4B00607");
     if( compareClassGuid(p1_guid) ) {
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArRampSubset_p1 > col_vect( poolReadObject< LArRampSubset_p1 >() );
+        std::unique_ptr< LArRampSubset_p1 > col_vect( poolReadObject< LArRampSubset_p1 >() );
         MsgStream log(msgSvc(), "LArRampMCCnv" ); 
         //log << MSG::INFO << "Reading LArRampSubset_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
@@ -42,7 +42,7 @@ LArRampMCCnv::createTransient ()
         MsgStream log(msgSvc(), "LArRampMCCnv" ); 
         log << MSG::INFO << "Reading LArRampSubset (original)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArRampP> > subset ( poolReadObject< LArConditionsSubset<LArRampP> >() );
+        std::unique_ptr< LArConditionsSubset<LArRampP> > subset ( poolReadObject< LArConditionsSubset<LArRampP> >() );
         // Here we must convert from LArRampP to LArRampP1
         
         log << MSG::INFO << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShape32MCCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShape32MCCnv.cxx
index 943de18e0f0c3c2a39b69799dc0112aecf5ad017..570f2b0e593e48188c90499d481f9a5f0d12b845 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShape32MCCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShape32MCCnv.cxx
@@ -53,7 +53,7 @@ LArShape32MCCnv::createTransient ()
     MsgStream log(msgSvc(), "LArShape32MCCnv" ); 
     if( compareClassGuid(p1_guid) ) {  
         // using auto_ptr ensures deletion of the persistent object
-        std::auto_ptr< LArShapeSubset_p1 > col_vect( poolReadObject< LArShapeSubset_p1 >() );
+        std::unique_ptr< LArShapeSubset_p1 > col_vect( poolReadObject< LArShapeSubset_p1 >() );
         //
         log << MSG::DEBUG << "Reading LArShapeSubset_p1" << endmsg; 
         return TPconverter.createTransient( col_vect.get(), log );
@@ -62,7 +62,7 @@ LArShape32MCCnv::createTransient ()
         // subset from before TP separation
         log << MSG::DEBUG << "Reading LArShapeSubset (original)" << endmsg; 
 
-        std::auto_ptr< LArConditionsSubset<LArShapeP> > subset ( poolReadObject< LArConditionsSubset<LArShapeP> >() );
+        std::unique_ptr< LArConditionsSubset<LArShapeP> > subset ( poolReadObject< LArConditionsSubset<LArShapeP> >() );
         // Here we must convert from LArShapeP to LArShapeP1
         
         log << MSG::VERBOSE << "subset ptr " << subset.get() << endmsg; 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShapeCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShapeCompleteCnv.cxx
index 5e5af769e53e56782791163b86631ab88e4d14d8..42e63138863864de6e72be6c59979a7f7491ad4b 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShapeCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LArShapeCompleteCnv.cxx
@@ -51,7 +51,7 @@ LArShapeCompleteCnv::createTransient ()
 
   MsgStream log(msgSvc(), "LArShapeCompleteCnv" ); 
   if( compareClassGuid(p2_guid) ) {  
-    std::auto_ptr< LArShapeSubset_p2 > col_vect( poolReadObject< LArShapeSubset_p2 >() );  
+    std::unique_ptr< LArShapeSubset_p2 > col_vect( poolReadObject< LArShapeSubset_p2 >() );  
     log << MSG::DEBUG << "Reading LArShapeSubset_p1" << endmsg; 
     return TPconverter2.createTransient( col_vect.get(), log );
   } 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVCompleteCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVCompleteCnv.cxx
index fa9d1b5bd2a11fcc6f9b9515adf1fe362b354c10..f916a5b0c538ddc327839e6be29bc055867dcdce 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVCompleteCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVCompleteCnv.cxx
@@ -23,7 +23,7 @@ LAruA2MeVCompleteCnv::createTransient ()
     // subset from before TP separation    
     MsgStream log(msgSvc(), "LAruA2MeVCompleteCnv" ); 
     log << MSG::DEBUG << "Reading LAruA2MeVSubset (original)" << endmsg;     
-    std::auto_ptr< LArConditionsSubset<LAruA2MeVP> > subset ( poolReadObject< LArConditionsSubset<LAruA2MeVP> >() );
+    std::unique_ptr< LArConditionsSubset<LAruA2MeVP> > subset ( poolReadObject< LArConditionsSubset<LAruA2MeVP> >() );
     return (createTransient(subset.get()));
     
   } 
diff --git a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVMCCnv.cxx b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVMCCnv.cxx
index c319d9ed343ca7fdf98feb8e5119661601f2609c..33f42d4d2d33f0d1c1d893c1d69958ef880d4739 100755
--- a/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVMCCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArCondAthenaPool/src/LAruA2MeVMCCnv.cxx
@@ -23,7 +23,7 @@ LAruA2MeVMCCnv::createTransient ()
     // subset from before TP separation    
     MsgStream log(msgSvc(), "LAruA2MeVMCCnv" ); 
     log << MSG::DEBUG << "Reading LAruA2MeVSubset (original)" << endmsg;     
-    std::auto_ptr< LArConditionsSubset<LAruA2MeVP> > subset ( poolReadObject< LArConditionsSubset<LAruA2MeVP> >() );
+    std::unique_ptr< LArConditionsSubset<LAruA2MeVP> > subset ( poolReadObject< LArConditionsSubset<LAruA2MeVP> >() );
     return (createTransient(subset.get()));
     
   }