Index: kernel/include/IMP/Model.h =================================================================== --- kernel/include/IMP/Model.h (revision 374) +++ kernel/include/IMP/Model.h (working copy) @@ -81,7 +81,7 @@ protected: //! all of the data associated with the particles - ModelData* model_data_; + std::auto_ptr model_data_; //! trajectory file path std::string trajectory_path_; Index: kernel/include/IMP/ModelData.h =================================================================== --- kernel/include/IMP/ModelData.h (revision 374) +++ kernel/include/IMP/ModelData.h (working copy) @@ -36,6 +36,7 @@ friend class Particle; friend class OptFloatIndexIterator; friend class DerivativeAccumulator; + friend class std::auto_ptr; // variables class FloatData Index: kernel/src/Model.cpp =================================================================== --- kernel/src/Model.cpp (revision 374) +++ kernel/src/Model.cpp (working copy) @@ -18,9 +18,8 @@ { //! Constructor -Model::Model() + Model::Model(): model_data_(new ModelData()) { - model_data_ = new ModelData(); frame_num_ = 0; trajectory_on_ = false; } @@ -37,7 +36,7 @@ */ ModelData* Model::get_model_data() const { - return model_data_; + return model_data_.get(); } IMP_CONTAINER_IMPL(Model, Restraint, restraint, RestraintIndex,