Index: trunk/libffado/src/ffadodevice.cpp =================================================================== --- trunk/libffado/src/ffadodevice.cpp (revision 2019) +++ trunk/libffado/src/ffadodevice.cpp (revision 2691) @@ -41,5 +41,5 @@ IMPL_DEBUG_MODULE( FFADODevice, FFADODevice, DEBUG_LEVEL_NORMAL ); -FFADODevice::FFADODevice( DeviceManager& d, std::auto_ptr( configRom ) ) +FFADODevice::FFADODevice( DeviceManager& d, ffado_smartptr( configRom ) ) : Control::Container(&d) , m_pConfigRom( configRom ) @@ -100,5 +100,5 @@ FFADODevice * -FFADODevice::createDevice(std::auto_ptr( x )) +FFADODevice::createDevice(ffado_smartptr( x )) { // re-implement this!! Index: trunk/libffado/src/devicemanager.h =================================================================== --- trunk/libffado/src/devicemanager.h (revision 2078) +++ trunk/libffado/src/devicemanager.h (revision 2691) @@ -149,5 +149,5 @@ FFADODevice* getDriverForDevice( ConfigRom *configRom, int id ); - FFADODevice* getSlaveDriver( std::auto_ptr( configRom ) ); + FFADODevice* getSlaveDriver( ffado_smartptr( configRom ) ); void busresetHandler(Ieee1394Service &); Index: trunk/libffado/src/rme/rme_avdevice.h =================================================================== --- trunk/libffado/src/rme/rme_avdevice.h (revision 2663) +++ trunk/libffado/src/rme/rme_avdevice.h (revision 2691) @@ -79,5 +79,5 @@ Device( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~Device(); @@ -87,5 +87,5 @@ static bool probe( Util::Configuration& c, ConfigRom& configRom, bool generic = false ); static FFADODevice * createDevice( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); static int getConfigurationId( ); virtual bool discover(); Index: trunk/libffado/src/rme/rme_avdevice.cpp =================================================================== --- trunk/libffado/src/rme/rme_avdevice.cpp (revision 2663) +++ trunk/libffado/src/rme/rme_avdevice.cpp (revision 2691) @@ -59,5 +59,5 @@ Device::Device( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : FFADODevice( d, configRom ) , m_rme_model( RME_MODEL_NONE ) @@ -372,5 +372,5 @@ FFADODevice * -Device::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { return new Device(d, configRom ); Index: trunk/libffado/src/motu/motu_avdevice.h =================================================================== --- trunk/libffado/src/motu/motu_avdevice.h (revision 2502) +++ trunk/libffado/src/motu/motu_avdevice.h (revision 2691) @@ -381,5 +381,5 @@ public: - MotuDevice( DeviceManager& d, std::auto_ptr( configRom ) ); + MotuDevice( DeviceManager& d, ffado_smartptr( configRom ) ); virtual ~MotuDevice(); @@ -388,5 +388,5 @@ static bool probe( Util::Configuration&, ConfigRom& configRom, bool generic = false ); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); static int getConfigurationId( ); virtual bool discover(); Index: trunk/libffado/src/motu/motu_avdevice.cpp =================================================================== --- trunk/libffado/src/motu/motu_avdevice.cpp (revision 2651) +++ trunk/libffado/src/motu/motu_avdevice.cpp (revision 2691) @@ -316,5 +316,5 @@ }; -MotuDevice::MotuDevice( DeviceManager& d, std::auto_ptr( configRom )) +MotuDevice::MotuDevice( DeviceManager& d, ffado_smartptr( configRom )) : FFADODevice( d, configRom ) , m_motu_model( MOTU_MODEL_NONE ) @@ -383,5 +383,5 @@ FFADODevice * -MotuDevice::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +MotuDevice::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { return new MotuDevice(d, configRom); Index: trunk/libffado/src/ffadodevice.h =================================================================== --- trunk/libffado/src/ffadodevice.h (revision 2587) +++ trunk/libffado/src/ffadodevice.h (revision 2691) @@ -36,4 +36,11 @@ #include #include + +// Prefer shared_ptr over auto_ptr if it is available +#if __cplusplus >= 201103L +#define ffado_smartptr std::shared_ptr +#else +#define ffado_smartptr std::auto_ptr +#endif class DeviceManager; @@ -61,5 +68,5 @@ { public: - FFADODevice( DeviceManager&, std::auto_ptr< ConfigRom >( configRom ) ); + FFADODevice( DeviceManager&, ffado_smartptr< ConfigRom >( configRom ) ); virtual ~FFADODevice(); @@ -129,5 +136,5 @@ * @return a new instance of the AvDevice type, NULL when unsuccessful */ - static FFADODevice * createDevice( std::auto_ptr( x )); + static FFADODevice * createDevice( ffado_smartptr( x )); /** @@ -481,5 +488,5 @@ {return m_pDeviceManager;}; private: - std::auto_ptr( m_pConfigRom ); + ffado_smartptr( m_pConfigRom ); DeviceManager& m_pDeviceManager; Control::Container* m_genericContainer; Index: trunk/libffado/src/metrichalo/mh_avdevice.h =================================================================== --- trunk/libffado/src/metrichalo/mh_avdevice.h (revision 1543) +++ trunk/libffado/src/metrichalo/mh_avdevice.h (revision 2691) @@ -41,10 +41,10 @@ public: Device( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~Device(); static bool probe( Util::Configuration& c, ConfigRom& configRom, bool generic = false ); static FFADODevice * createDevice( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); static int getConfigurationId(); virtual bool discover(); Index: trunk/libffado/src/metrichalo/mh_avdevice.cpp =================================================================== --- trunk/libffado/src/metrichalo/mh_avdevice.cpp (revision 1543) +++ trunk/libffado/src/metrichalo/mh_avdevice.cpp (revision 2691) @@ -47,5 +47,5 @@ Device::Device( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : FFADODevice( d, configRom ) { @@ -76,5 +76,5 @@ FFADODevice * Device::createDevice( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) { return new Device(d, configRom ); Index: trunk/libffado/src/oxford/oxford_device.cpp =================================================================== --- trunk/libffado/src/oxford/oxford_device.cpp (revision 1543) +++ trunk/libffado/src/oxford/oxford_device.cpp (revision 2691) @@ -45,5 +45,5 @@ namespace Oxford { -Device::Device(DeviceManager& d, std::auto_ptr( configRom )) +Device::Device(DeviceManager& d, ffado_smartptr( configRom )) : GenericAVC::Device( d, configRom) { @@ -121,5 +121,5 @@ FFADODevice * -Device::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { unsigned int vendorId = configRom->getNodeVendorId(); Index: trunk/libffado/src/oxford/oxford_device.h =================================================================== --- trunk/libffado/src/oxford/oxford_device.h (revision 1543) +++ trunk/libffado/src/oxford/oxford_device.h (revision 2691) @@ -40,9 +40,9 @@ public: - Device( DeviceManager& d, std::auto_ptr( configRom ) ); + Device( DeviceManager& d, ffado_smartptr( configRom ) ); virtual ~Device(); static bool probe( Util::Configuration&, ConfigRom& configRom, bool generic = false ); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual bool discover(); Index: trunk/libffado/src/dice/dice_avdevice.h =================================================================== --- trunk/libffado/src/dice/dice_avdevice.h (revision 2430) +++ trunk/libffado/src/dice/dice_avdevice.h (revision 2691) @@ -69,10 +69,10 @@ public: /// constructor - Device( DeviceManager& d, std::auto_ptr( configRom )); + Device( DeviceManager& d, ffado_smartptr( configRom )); /// destructor ~Device(); static bool probe( Util::Configuration& c, ConfigRom& configRom, bool generic = false ); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual bool discover(); Index: trunk/libffado/src/dice/focusrite/saffire_56.h =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_56.h (revision 2580) +++ trunk/libffado/src/dice/focusrite/saffire_56.h (revision 2691) @@ -90,5 +90,5 @@ public: Saffire56( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~Saffire56(); Index: trunk/libffado/src/dice/focusrite/saffire_pro40.cpp =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro40.cpp (revision 2547) +++ trunk/libffado/src/dice/focusrite/saffire_pro40.cpp (revision 2691) @@ -479,5 +479,5 @@ */ SaffirePro40::SaffirePro40( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device( d , configRom) { Index: trunk/libffado/src/dice/focusrite/saffire_pro14.cpp =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro14.cpp (revision 2431) +++ trunk/libffado/src/dice/focusrite/saffire_pro14.cpp (revision 2691) @@ -356,5 +356,5 @@ */ SaffirePro14::SaffirePro14( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device( d , configRom) { Index: trunk/libffado/src/dice/focusrite/saffire_pro24.cpp =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro24.cpp (revision 2598) +++ trunk/libffado/src/dice/focusrite/saffire_pro24.cpp (revision 2691) @@ -408,5 +408,5 @@ SaffirePro24::SaffirePro24( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device(d , configRom) { Index: trunk/libffado/src/dice/focusrite/saffire_pro26.cpp =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro26.cpp (revision 2606) +++ trunk/libffado/src/dice/focusrite/saffire_pro26.cpp (revision 2691) @@ -358,5 +358,5 @@ SaffirePro26::SaffirePro26( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device(d , configRom) { Index: trunk/libffado/src/dice/focusrite/saffire_pro40.h =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro40.h (revision 2547) +++ trunk/libffado/src/dice/focusrite/saffire_pro40.h (revision 2691) @@ -85,5 +85,5 @@ public: SaffirePro40( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~SaffirePro40(); Index: trunk/libffado/src/dice/focusrite/saffire_56.cpp =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_56.cpp (revision 2580) +++ trunk/libffado/src/dice/focusrite/saffire_56.cpp (revision 2691) @@ -502,5 +502,5 @@ */ Saffire56::Saffire56( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device( d , configRom) { Index: trunk/libffado/src/dice/focusrite/saffire_pro14.h =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro14.h (revision 2431) +++ trunk/libffado/src/dice/focusrite/saffire_pro14.h (revision 2691) @@ -93,5 +93,5 @@ public: SaffirePro14( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~SaffirePro14(); Index: trunk/libffado/src/dice/focusrite/saffire_pro24.h =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro24.h (revision 2431) +++ trunk/libffado/src/dice/focusrite/saffire_pro24.h (revision 2691) @@ -92,5 +92,5 @@ public: SaffirePro24( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); ~SaffirePro24(); Index: trunk/libffado/src/dice/focusrite/saffire_pro26.h =================================================================== --- trunk/libffado/src/dice/focusrite/saffire_pro26.h (revision 2590) +++ trunk/libffado/src/dice/focusrite/saffire_pro26.h (revision 2691) @@ -80,5 +80,5 @@ public: SaffirePro26( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); ~SaffirePro26(); Index: trunk/libffado/src/dice/dice_avdevice.cpp =================================================================== --- trunk/libffado/src/dice/dice_avdevice.cpp (revision 2651) +++ trunk/libffado/src/dice/dice_avdevice.cpp (revision 2691) @@ -61,5 +61,5 @@ namespace Dice { -Device::Device( DeviceManager& d, std::auto_ptr( configRom )) +Device::Device( DeviceManager& d, ffado_smartptr( configRom )) : FFADODevice( d, configRom ) , m_eap( NULL ) @@ -126,5 +126,5 @@ FFADODevice * -Device::createDevice( DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice( DeviceManager& d, ffado_smartptr( configRom )) { unsigned int vendorId = configRom->getNodeVendorId(); Index: trunk/libffado/src/dice/maudio/profire_2626.cpp =================================================================== --- trunk/libffado/src/dice/maudio/profire_2626.cpp (revision 2433) +++ trunk/libffado/src/dice/maudio/profire_2626.cpp (revision 2691) @@ -363,5 +363,5 @@ Device */ -Profire2626::Profire2626( DeviceManager& d, std::auto_ptr(configRom)) +Profire2626::Profire2626( DeviceManager& d, ffado_smartptr(configRom)) : Dice::Device( d, configRom) { Index: trunk/libffado/src/dice/maudio/profire_2626.h =================================================================== --- trunk/libffado/src/dice/maudio/profire_2626.h (revision 2433) +++ trunk/libffado/src/dice/maudio/profire_2626.h (revision 2691) @@ -44,5 +44,5 @@ public: Profire2626( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~Profire2626(); Index: trunk/libffado/src/dice/presonus/firestudio_tube.h =================================================================== --- trunk/libffado/src/dice/presonus/firestudio_tube.h (revision 2251) +++ trunk/libffado/src/dice/presonus/firestudio_tube.h (revision 2691) @@ -37,5 +37,5 @@ public: FirestudioTube( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~FirestudioTube(); Index: trunk/libffado/src/dice/presonus/firestudio_project.cpp =================================================================== --- trunk/libffado/src/dice/presonus/firestudio_project.cpp (revision 2257) +++ trunk/libffado/src/dice/presonus/firestudio_project.cpp (revision 2691) @@ -155,5 +155,5 @@ */ FirestudioProject::FirestudioProject( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device( d , configRom) { Index: trunk/libffado/src/dice/presonus/firestudio_mobile.cpp =================================================================== --- trunk/libffado/src/dice/presonus/firestudio_mobile.cpp (revision 2578) +++ trunk/libffado/src/dice/presonus/firestudio_mobile.cpp (revision 2691) @@ -154,5 +154,5 @@ */ FirestudioMobile::FirestudioMobile( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device( d , configRom) { Index: trunk/libffado/src/dice/presonus/firestudio_project.h =================================================================== --- trunk/libffado/src/dice/presonus/firestudio_project.h (revision 2257) +++ trunk/libffado/src/dice/presonus/firestudio_project.h (revision 2691) @@ -37,5 +37,5 @@ public: FirestudioProject( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~FirestudioProject(); Index: trunk/libffado/src/dice/presonus/firestudio_mobile.h =================================================================== --- trunk/libffado/src/dice/presonus/firestudio_mobile.h (revision 2578) +++ trunk/libffado/src/dice/presonus/firestudio_mobile.h (revision 2691) @@ -38,5 +38,5 @@ public: FirestudioMobile( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~FirestudioMobile(); Index: trunk/libffado/src/dice/presonus/firestudio_tube.cpp =================================================================== --- trunk/libffado/src/dice/presonus/firestudio_tube.cpp (revision 2251) +++ trunk/libffado/src/dice/presonus/firestudio_tube.cpp (revision 2691) @@ -143,5 +143,5 @@ */ FirestudioTube::FirestudioTube( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : Dice::Device( d , configRom) { Index: trunk/libffado/src/digidesign/digidesign_avdevice.h =================================================================== --- trunk/libffado/src/digidesign/digidesign_avdevice.h (revision 1964) +++ trunk/libffado/src/digidesign/digidesign_avdevice.h (revision 2691) @@ -51,5 +51,5 @@ Device( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~Device(); @@ -59,5 +59,5 @@ static bool probe( Util::Configuration& c, ConfigRom& configRom, bool generic = false ); static FFADODevice * createDevice( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); static int getConfigurationId( ); virtual bool discover(); Index: trunk/libffado/src/digidesign/digidesign_avdevice.cpp =================================================================== --- trunk/libffado/src/digidesign/digidesign_avdevice.cpp (revision 1964) +++ trunk/libffado/src/digidesign/digidesign_avdevice.cpp (revision 2691) @@ -52,5 +52,5 @@ Device::Device( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : FFADODevice( d, configRom ) , m_digidesign_model( DIGIDESIGN_MODEL_NONE ) @@ -125,5 +125,5 @@ FFADODevice * -Device::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { return new Device(d, configRom ); Index: trunk/libffado/src/genericavc/avc_avdevice.cpp =================================================================== --- trunk/libffado/src/genericavc/avc_avdevice.cpp (revision 1791) +++ trunk/libffado/src/genericavc/avc_avdevice.cpp (revision 2691) @@ -52,5 +52,5 @@ IMPL_DEBUG_MODULE( Device, Device, DEBUG_LEVEL_NORMAL ); -Device::Device( DeviceManager& d, std::auto_ptr( configRom )) +Device::Device( DeviceManager& d, ffado_smartptr( configRom )) : FFADODevice( d, configRom ) { @@ -109,5 +109,5 @@ FFADODevice * -Device::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { unsigned int vendorId = configRom->getNodeVendorId(); Index: trunk/libffado/src/genericavc/avc_avdevice.h =================================================================== --- trunk/libffado/src/genericavc/avc_avdevice.h (revision 1543) +++ trunk/libffado/src/genericavc/avc_avdevice.h (revision 2691) @@ -48,10 +48,10 @@ class Device : public FFADODevice, public AVC::Unit { public: - Device( DeviceManager& d, std::auto_ptr( configRom )); + Device( DeviceManager& d, ffado_smartptr( configRom )); virtual ~Device(); static bool probe( Util::Configuration&, ConfigRom& configRom, bool generic = false ); virtual bool discover(); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual bool serialize( std::string basePath, Util::IOSerialize& ser ) const; Index: trunk/libffado/src/genericavc/stanton/scs.cpp =================================================================== --- trunk/libffado/src/genericavc/stanton/scs.cpp (revision 2651) +++ trunk/libffado/src/genericavc/stanton/scs.cpp (revision 2691) @@ -34,5 +34,5 @@ ScsDevice::ScsDevice( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : GenericAVC::Device( d , configRom) , m_hss1394handler( NULL ) Index: trunk/libffado/src/genericavc/stanton/scs.h =================================================================== --- trunk/libffado/src/genericavc/stanton/scs.h (revision 1550) +++ trunk/libffado/src/genericavc/stanton/scs.h (revision 2691) @@ -71,5 +71,5 @@ public: ScsDevice( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~ScsDevice(); Index: trunk/libffado/src/bebob/esi/quatafire610.cpp =================================================================== --- trunk/libffado/src/bebob/esi/quatafire610.cpp (revision 1543) +++ trunk/libffado/src/bebob/esi/quatafire610.cpp (revision 2691) @@ -29,5 +29,5 @@ namespace ESI { -QuataFireDevice::QuataFireDevice( DeviceManager& d, std::auto_ptr( configRom )) +QuataFireDevice::QuataFireDevice( DeviceManager& d, ffado_smartptr( configRom )) : BeBoB::Device( d, configRom) { Index: trunk/libffado/src/bebob/esi/quatafire610.h =================================================================== --- trunk/libffado/src/bebob/esi/quatafire610.h (revision 1543) +++ trunk/libffado/src/bebob/esi/quatafire610.h (revision 2691) @@ -34,5 +34,5 @@ public: - QuataFireDevice( DeviceManager& d, std::auto_ptr( configRom )); + QuataFireDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual ~QuataFireDevice(); Index: trunk/libffado/src/bebob/mackie/onyxmixer.cpp =================================================================== --- trunk/libffado/src/bebob/mackie/onyxmixer.cpp (revision 1543) +++ trunk/libffado/src/bebob/mackie/onyxmixer.cpp (revision 2691) @@ -29,5 +29,5 @@ namespace Mackie { -OnyxMixerDevice::OnyxMixerDevice( DeviceManager& d, std::auto_ptr( configRom )) +OnyxMixerDevice::OnyxMixerDevice( DeviceManager& d, ffado_smartptr( configRom )) : BeBoB::Device( d, configRom) { Index: trunk/libffado/src/bebob/mackie/onyxmixer.h =================================================================== --- trunk/libffado/src/bebob/mackie/onyxmixer.h (revision 1543) +++ trunk/libffado/src/bebob/mackie/onyxmixer.h (revision 2691) @@ -34,5 +34,5 @@ public: - OnyxMixerDevice( DeviceManager& d, std::auto_ptr( configRom )); + OnyxMixerDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual ~OnyxMixerDevice(); Index: trunk/libffado/src/bebob/bebob_avdevice.cpp =================================================================== --- trunk/libffado/src/bebob/bebob_avdevice.cpp (revision 2671) +++ trunk/libffado/src/bebob/bebob_avdevice.cpp (revision 2691) @@ -65,5 +65,5 @@ namespace BeBoB { -Device::Device( DeviceManager& d, std::auto_ptr< ConfigRom >( configRom ) ) +Device::Device( DeviceManager& d, ffado_smartptr< ConfigRom >( configRom ) ) : GenericAVC::Device( d, configRom ) , m_last_discovery_config_id ( 0xFFFFFFFFFFFFFFFFLLU ) @@ -131,5 +131,5 @@ FFADODevice * -Device::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { unsigned int vendorId = configRom->getNodeVendorId(); Index: trunk/libffado/src/bebob/yamaha/yamaha_avdevice.cpp =================================================================== --- trunk/libffado/src/bebob/yamaha/yamaha_avdevice.cpp (revision 2439) +++ trunk/libffado/src/bebob/yamaha/yamaha_avdevice.cpp (revision 2691) @@ -29,5 +29,5 @@ namespace Yamaha { -GoDevice::GoDevice(DeviceManager& d, std::auto_ptr( configRom )) +GoDevice::GoDevice(DeviceManager& d, ffado_smartptr( configRom )) : BeBoB::Device( d, configRom) { Index: trunk/libffado/src/bebob/yamaha/yamaha_avdevice.h =================================================================== --- trunk/libffado/src/bebob/yamaha/yamaha_avdevice.h (revision 2439) +++ trunk/libffado/src/bebob/yamaha/yamaha_avdevice.h (revision 2691) @@ -35,5 +35,5 @@ class GoDevice : public BeBoB::Device { public: - GoDevice( DeviceManager& d, std::auto_ptr( configRom )); + GoDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual ~GoDevice(); Index: trunk/libffado/src/bebob/focusrite/focusrite_generic.cpp =================================================================== --- trunk/libffado/src/bebob/focusrite/focusrite_generic.cpp (revision 2651) +++ trunk/libffado/src/bebob/focusrite/focusrite_generic.cpp (revision 2691) @@ -30,5 +30,5 @@ namespace Focusrite { -FocusriteDevice::FocusriteDevice( DeviceManager& d, std::auto_ptr( configRom )) +FocusriteDevice::FocusriteDevice( DeviceManager& d, ffado_smartptr( configRom )) : BeBoB::Device( d, configRom) , m_cmd_time_interval( 0 ) Index: trunk/libffado/src/bebob/focusrite/focusrite_saffire.cpp =================================================================== --- trunk/libffado/src/bebob/focusrite/focusrite_saffire.cpp (revision 2651) +++ trunk/libffado/src/bebob/focusrite/focusrite_saffire.cpp (revision 2691) @@ -30,5 +30,5 @@ namespace Focusrite { -SaffireDevice::SaffireDevice( DeviceManager& d, std::auto_ptr( configRom )) +SaffireDevice::SaffireDevice( DeviceManager& d, ffado_smartptr( configRom )) : FocusriteDevice( d, configRom) , m_MixerContainer( NULL ) Index: trunk/libffado/src/bebob/focusrite/focusrite_saffirepro.cpp =================================================================== --- trunk/libffado/src/bebob/focusrite/focusrite_saffirepro.cpp (revision 2413) +++ trunk/libffado/src/bebob/focusrite/focusrite_saffirepro.cpp (revision 2691) @@ -34,5 +34,5 @@ namespace Focusrite { -SaffireProDevice::SaffireProDevice( DeviceManager& d, std::auto_ptr( configRom )) +SaffireProDevice::SaffireProDevice( DeviceManager& d, ffado_smartptr( configRom )) : FocusriteDevice( d, configRom ) , m_MixerContainer( NULL ) Index: trunk/libffado/src/bebob/focusrite/focusrite_generic.h =================================================================== --- trunk/libffado/src/bebob/focusrite/focusrite_generic.h (revision 1742) +++ trunk/libffado/src/bebob/focusrite/focusrite_generic.h (revision 2691) @@ -227,5 +227,5 @@ class FocusriteDevice : public BeBoB::Device { public: - FocusriteDevice(DeviceManager& d, std::auto_ptr( configRom )); + FocusriteDevice(DeviceManager& d, ffado_smartptr( configRom )); virtual ~FocusriteDevice() {}; Index: trunk/libffado/src/bebob/focusrite/focusrite_saffire.h =================================================================== --- trunk/libffado/src/bebob/focusrite/focusrite_saffire.h (revision 1498) +++ trunk/libffado/src/bebob/focusrite/focusrite_saffire.h (revision 2691) @@ -270,5 +270,5 @@ class SaffireDevice : public FocusriteDevice { public: - SaffireDevice(DeviceManager& d, std::auto_ptr( configRom )); + SaffireDevice(DeviceManager& d, ffado_smartptr( configRom )); virtual ~SaffireDevice() {}; Index: trunk/libffado/src/bebob/focusrite/focusrite_saffirepro.h =================================================================== --- trunk/libffado/src/bebob/focusrite/focusrite_saffirepro.h (revision 1498) +++ trunk/libffado/src/bebob/focusrite/focusrite_saffirepro.h (revision 2691) @@ -357,5 +357,5 @@ public: - SaffireProDevice( DeviceManager& d, std::auto_ptr( configRom )); + SaffireProDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual ~SaffireProDevice(); Index: trunk/libffado/src/bebob/bebob_avdevice.h =================================================================== --- trunk/libffado/src/bebob/bebob_avdevice.h (revision 2443) +++ trunk/libffado/src/bebob/bebob_avdevice.h (revision 2691) @@ -61,5 +61,5 @@ class Device : public GenericAVC::Device { public: - Device( DeviceManager& d, std::auto_ptr( configRom )); + Device( DeviceManager& d, ffado_smartptr( configRom )); virtual ~Device(); @@ -69,5 +69,5 @@ virtual bool discover(); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual AVC::Subunit* createSubunit(AVC::Unit& unit, Index: trunk/libffado/src/bebob/terratec/terratec_device.cpp =================================================================== --- trunk/libffado/src/bebob/terratec/terratec_device.cpp (revision 1763) +++ trunk/libffado/src/bebob/terratec/terratec_device.cpp (revision 2691) @@ -29,5 +29,5 @@ namespace Terratec { -Phase88Device::Phase88Device(DeviceManager& d, std::auto_ptr( configRom )) +Phase88Device::Phase88Device(DeviceManager& d, ffado_smartptr( configRom )) : BeBoB::Device( d, configRom) { Index: trunk/libffado/src/bebob/terratec/terratec_device.h =================================================================== --- trunk/libffado/src/bebob/terratec/terratec_device.h (revision 1763) +++ trunk/libffado/src/bebob/terratec/terratec_device.h (revision 2691) @@ -34,5 +34,5 @@ class Phase88Device : public BeBoB::Device { public: - Phase88Device( DeviceManager& d, std::auto_ptr( configRom )); + Phase88Device( DeviceManager& d, ffado_smartptr( configRom )); virtual ~Phase88Device(); Index: trunk/libffado/src/bebob/template/vendor_device.h =================================================================== --- trunk/libffado/src/bebob/template/vendor_device.h (revision 1543) +++ trunk/libffado/src/bebob/template/vendor_device.h (revision 2691) @@ -35,5 +35,5 @@ public: VendorDevice( Ieee1394Service& ieee1394Service, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~VendorDevice(); Index: trunk/libffado/src/bebob/template/vendor_device.cpp =================================================================== --- trunk/libffado/src/bebob/template/vendor_device.cpp (revision 1543) +++ trunk/libffado/src/bebob/template/vendor_device.cpp (revision 2691) @@ -28,5 +28,5 @@ VendorDevice::VendorDevice( Ieee1394Service& ieee1394Service, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : BeBoB::Device( ieee1394Service, configRom) { Index: trunk/libffado/src/bebob/bebob_dl_mgr.cpp =================================================================== --- trunk/libffado/src/bebob/bebob_dl_mgr.cpp (revision 2587) +++ trunk/libffado/src/bebob/bebob_dl_mgr.cpp (revision 2691) @@ -242,5 +242,5 @@ printf( "parse BCD file\n" ); - std::auto_ptr bcd = std::auto_ptr( new BCD( filename ) ); + ffado_smartptr bcd = ffado_smartptr( new BCD( filename ) ); if ( !bcd.get() ) { debugError( "downloadFirmware: Could not open or parse BCD '%s'\n", @@ -305,5 +305,5 @@ printf( "parse BCD file\n" ); - std::auto_ptr bcd = std::auto_ptr( new BCD( filename ) ); + ffado_smartptr bcd = ffado_smartptr( new BCD( filename ) ); if ( !bcd.get() ) { debugError( "downloadCnE: Could not open or parse BCD '%s'\n", Index: trunk/libffado/src/bebob/edirol/edirol_fa66.cpp =================================================================== --- trunk/libffado/src/bebob/edirol/edirol_fa66.cpp (revision 1543) +++ trunk/libffado/src/bebob/edirol/edirol_fa66.cpp (revision 2691) @@ -28,5 +28,5 @@ EdirolFa66Device::EdirolFa66Device( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : BeBoB::Device( d , configRom) { Index: trunk/libffado/src/bebob/edirol/edirol_fa66.h =================================================================== --- trunk/libffado/src/bebob/edirol/edirol_fa66.h (revision 1543) +++ trunk/libffado/src/bebob/edirol/edirol_fa66.h (revision 2691) @@ -33,5 +33,5 @@ public: EdirolFa66Device( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~EdirolFa66Device(); Index: trunk/libffado/src/bebob/edirol/edirol_fa101.cpp =================================================================== --- trunk/libffado/src/bebob/edirol/edirol_fa101.cpp (revision 1543) +++ trunk/libffado/src/bebob/edirol/edirol_fa101.cpp (revision 2691) @@ -28,5 +28,5 @@ EdirolFa101Device::EdirolFa101Device( DeviceManager& d, - std::auto_ptr( configRom )) + ffado_smartptr( configRom )) : BeBoB::Device( d , configRom) { Index: trunk/libffado/src/bebob/edirol/edirol_fa101.h =================================================================== --- trunk/libffado/src/bebob/edirol/edirol_fa101.h (revision 1543) +++ trunk/libffado/src/bebob/edirol/edirol_fa101.h (revision 2691) @@ -33,5 +33,5 @@ public: EdirolFa101Device( DeviceManager& d, - std::auto_ptr( configRom )); + ffado_smartptr( configRom )); virtual ~EdirolFa101Device(); Index: trunk/libffado/src/bebob/maudio/normal_avdevice.cpp =================================================================== --- trunk/libffado/src/bebob/maudio/normal_avdevice.cpp (revision 2490) +++ trunk/libffado/src/bebob/maudio/normal_avdevice.cpp (revision 2691) @@ -29,5 +29,5 @@ namespace Normal { -Device::Device(DeviceManager& d, std::auto_ptr( configRom ), +Device::Device(DeviceManager& d, ffado_smartptr( configRom ), unsigned int modelId) : BeBoB::Device( d, configRom) Index: trunk/libffado/src/bebob/maudio/normal_avdevice.h =================================================================== --- trunk/libffado/src/bebob/maudio/normal_avdevice.h (revision 2490) +++ trunk/libffado/src/bebob/maudio/normal_avdevice.h (revision 2691) @@ -43,5 +43,5 @@ class Device : public BeBoB::Device { public: - Device( DeviceManager& d, std::auto_ptr( configRom ), + Device( DeviceManager& d, ffado_smartptr( configRom ), unsigned int modelId); virtual ~Device(); Index: trunk/libffado/src/bebob/maudio/special_avdevice.cpp =================================================================== --- trunk/libffado/src/bebob/maudio/special_avdevice.cpp (revision 2529) +++ trunk/libffado/src/bebob/maudio/special_avdevice.cpp (revision 2691) @@ -36,5 +36,5 @@ namespace Special { -Device::Device(DeviceManager& d, std::auto_ptr(configRom)) +Device::Device(DeviceManager& d, ffado_smartptr(configRom)) : BeBoB::Device(d, configRom) { Index: trunk/libffado/src/bebob/maudio/special_avdevice.h =================================================================== --- trunk/libffado/src/bebob/maudio/special_avdevice.h (revision 2491) +++ trunk/libffado/src/bebob/maudio/special_avdevice.h (revision 2691) @@ -141,5 +141,5 @@ { public: - Device(DeviceManager& d, std::auto_ptr(configRom)); + Device(DeviceManager& d, ffado_smartptr(configRom)); virtual ~Device() {}; virtual void showDevice(); Index: trunk/libffado/src/bebob/presonus/inspire1394_avdevice.cpp =================================================================== --- trunk/libffado/src/bebob/presonus/inspire1394_avdevice.cpp (revision 2489) +++ trunk/libffado/src/bebob/presonus/inspire1394_avdevice.cpp (revision 2691) @@ -105,5 +105,5 @@ } -Device::Device(DeviceManager& d, std::auto_ptr(configRom)) +Device::Device(DeviceManager& d, ffado_smartptr(configRom)) : BeBoB::Device( d, configRom ) { Index: trunk/libffado/src/bebob/presonus/firebox_avdevice.cpp =================================================================== --- trunk/libffado/src/bebob/presonus/firebox_avdevice.cpp (revision 2489) +++ trunk/libffado/src/bebob/presonus/firebox_avdevice.cpp (revision 2691) @@ -29,5 +29,5 @@ namespace Firebox { -Device::Device(DeviceManager& d, std::auto_ptr(configRom)) +Device::Device(DeviceManager& d, ffado_smartptr(configRom)) : BeBoB::Device( d, configRom) { Index: trunk/libffado/src/bebob/presonus/inspire1394_avdevice.h =================================================================== --- trunk/libffado/src/bebob/presonus/inspire1394_avdevice.h (revision 2489) +++ trunk/libffado/src/bebob/presonus/inspire1394_avdevice.h (revision 2691) @@ -45,5 +45,5 @@ class Device : public BeBoB::Device { public: - Device( DeviceManager& d, std::auto_ptr( configRom )); + Device( DeviceManager& d, ffado_smartptr( configRom )); virtual ~Device(); Index: trunk/libffado/src/bebob/presonus/firebox_avdevice.h =================================================================== --- trunk/libffado/src/bebob/presonus/firebox_avdevice.h (revision 2489) +++ trunk/libffado/src/bebob/presonus/firebox_avdevice.h (revision 2691) @@ -36,5 +36,5 @@ class Device : public BeBoB::Device { public: - Device( DeviceManager& d, std::auto_ptr( configRom )); + Device( DeviceManager& d, ffado_smartptr( configRom )); virtual ~Device(); Index: trunk/libffado/src/devicemanager.cpp =================================================================== --- trunk/libffado/src/devicemanager.cpp (revision 2450) +++ trunk/libffado/src/devicemanager.cpp (revision 2691) @@ -710,6 +710,6 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Starting in slave mode on node %d...\n", nodeId ); - std::auto_ptr configRom = - std::auto_ptr( new ConfigRom( *portService, + ffado_smartptr configRom = + ffado_smartptr( new ConfigRom( *portService, nodeId ) ); if ( !configRom->initialize() ) { @@ -1032,5 +1032,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying BeBoB...\n" ); if ( BeBoB::Device::probe( getConfiguration(), *configRom, generic ) ) { - return BeBoB::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return BeBoB::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1039,5 +1039,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying ECHO Audio FireWorks...\n" ); if ( FireWorks::Device::probe( getConfiguration(), *configRom, generic ) ) { - return FireWorks::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return FireWorks::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1046,5 +1046,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying Oxford FW90x...\n" ); if ( Oxford::Device::probe( getConfiguration(), *configRom, generic ) ) { - return Oxford::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return Oxford::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1054,5 +1054,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying Generic AV/C...\n" ); if ( GenericAVC::Device::probe( getConfiguration(), *configRom, generic ) ) { - return GenericAVC::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return GenericAVC::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1061,5 +1061,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying Motu...\n" ); if ( Motu::MotuDevice::probe( getConfiguration(), *configRom, generic ) ) { - return Motu::MotuDevice::createDevice( *this, std::auto_ptr( configRom ) ); + return Motu::MotuDevice::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1068,5 +1068,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying Dice...\n" ); if ( Dice::Device::probe( getConfiguration(), *configRom, generic ) ) { - return Dice::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return Dice::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1075,5 +1075,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying Metric Halo...\n" ); if ( MetricHalo::Device::probe( getConfiguration(), *configRom, generic ) ) { - return MetricHalo::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return MetricHalo::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1082,5 +1082,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying RME...\n" ); if ( Rme::Device::probe( getConfiguration(), *configRom, generic ) ) { - return Rme::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return Rme::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1089,5 +1089,5 @@ debugOutput( DEBUG_LEVEL_VERBOSE, "Trying Bounce...\n" ); if ( Bounce::Device::probe( getConfiguration(), *configRom, generic ) ) { - return Bounce::Device::createDevice( *this, std::auto_ptr( configRom ) ); + return Bounce::Device::createDevice( *this, ffado_smartptr( configRom ) ); } #endif @@ -1120,9 +1120,9 @@ FFADODevice* -DeviceManager::getSlaveDriver( std::auto_ptr( configRom ) ) +DeviceManager::getSlaveDriver( ffado_smartptr( configRom ) ) { #ifdef ENABLE_BOUNCE if ( Bounce::SlaveDevice::probe( getConfiguration(), *configRom, false ) ) { - return Bounce::SlaveDevice::createDevice( *this, std::auto_ptr( configRom ) ); + return Bounce::SlaveDevice::createDevice( *this, ffado_smartptr( configRom ) ); } #endif Index: trunk/libffado/src/bounce/bounce_slave_avdevice.h =================================================================== --- trunk/libffado/src/bounce/bounce_slave_avdevice.h (revision 1550) +++ trunk/libffado/src/bounce/bounce_slave_avdevice.h (revision 2691) @@ -45,9 +45,9 @@ public: - SlaveDevice( DeviceManager& d, std::auto_ptr( configRom ) ); + SlaveDevice( DeviceManager& d, ffado_smartptr( configRom ) ); virtual ~SlaveDevice(); static bool probe( Util::Configuration&, ConfigRom& configRom, bool generic = false ); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); bool discover(); Index: trunk/libffado/src/bounce/bounce_avdevice.cpp =================================================================== --- trunk/libffado/src/bounce/bounce_avdevice.cpp (revision 1805) +++ trunk/libffado/src/bounce/bounce_avdevice.cpp (revision 2691) @@ -43,5 +43,5 @@ namespace Bounce { -Device::Device( DeviceManager& d, std::auto_ptr< ConfigRom >( configRom ) ) +Device::Device( DeviceManager& d, ffado_smartptr< ConfigRom >( configRom ) ) : FFADODevice( d, configRom ) , m_samplerate (44100) @@ -75,5 +75,5 @@ FFADODevice * -Device::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { return new Device(d, configRom ); Index: trunk/libffado/src/bounce/bounce_avdevice.h =================================================================== --- trunk/libffado/src/bounce/bounce_avdevice.h (revision 1550) +++ trunk/libffado/src/bounce/bounce_avdevice.h (revision 2691) @@ -65,9 +65,9 @@ class BounceNotifier; public: - Device( DeviceManager& d, std::auto_ptr( configRom )); + Device( DeviceManager& d, ffado_smartptr( configRom )); virtual ~Device(); static bool probe( Util::Configuration&, ConfigRom& configRom, bool generic = false ); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual bool discover(); Index: trunk/libffado/src/bounce/bounce_slave_avdevice.cpp =================================================================== --- trunk/libffado/src/bounce/bounce_slave_avdevice.cpp (revision 1805) +++ trunk/libffado/src/bounce/bounce_slave_avdevice.cpp (revision 2691) @@ -38,5 +38,5 @@ namespace Bounce { -SlaveDevice::SlaveDevice( DeviceManager& d, std::auto_ptr< ConfigRom >( configRom ) ) +SlaveDevice::SlaveDevice( DeviceManager& d, ffado_smartptr< ConfigRom >( configRom ) ) : Device( d, configRom ) { @@ -56,5 +56,5 @@ FFADODevice * -SlaveDevice::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +SlaveDevice::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { return new SlaveDevice(d, configRom ); Index: trunk/libffado/src/fireworks/fireworks_device.h =================================================================== --- trunk/libffado/src/fireworks/fireworks_device.h (revision 2519) +++ trunk/libffado/src/fireworks/fireworks_device.h (revision 2691) @@ -50,9 +50,9 @@ public: - Device( DeviceManager& d, std::auto_ptr( configRom ) ); + Device( DeviceManager& d, ffado_smartptr( configRom ) ); virtual ~Device(); static bool probe( Util::Configuration&, ConfigRom& configRom, bool generic = false ); - static FFADODevice * createDevice( DeviceManager& d, std::auto_ptr( configRom )); + static FFADODevice * createDevice( DeviceManager& d, ffado_smartptr( configRom )); virtual bool discover(); Index: trunk/libffado/src/fireworks/audiofire/audiofire_device.cpp =================================================================== --- trunk/libffado/src/fireworks/audiofire/audiofire_device.cpp (revision 864) +++ trunk/libffado/src/fireworks/audiofire/audiofire_device.cpp (revision 2691) @@ -30,5 +30,5 @@ namespace ECHO { -AudioFire::AudioFire( DeviceManager& d, std::auto_ptr( configRom )) +AudioFire::AudioFire( DeviceManager& d, ffado_smartptr( configRom )) : FireWorks::Device( d, configRom) { Index: trunk/libffado/src/fireworks/audiofire/audiofire_device.h =================================================================== --- trunk/libffado/src/fireworks/audiofire/audiofire_device.h (revision 864) +++ trunk/libffado/src/fireworks/audiofire/audiofire_device.h (revision 2691) @@ -35,5 +35,5 @@ public: - AudioFire( DeviceManager& d, std::auto_ptr( configRom )); + AudioFire( DeviceManager& d, ffado_smartptr( configRom )); virtual ~AudioFire(); Index: trunk/libffado/src/fireworks/fireworks_device.cpp =================================================================== --- trunk/libffado/src/fireworks/fireworks_device.cpp (revision 2599) +++ trunk/libffado/src/fireworks/fireworks_device.cpp (revision 2691) @@ -50,5 +50,5 @@ namespace FireWorks { -Device::Device(DeviceManager& d, std::auto_ptr( configRom )) +Device::Device(DeviceManager& d, ffado_smartptr( configRom )) : GenericAVC::Device( d, configRom) , m_poll_lock( new Util::PosixMutex("DEVPOLL") ) @@ -183,5 +183,5 @@ FFADODevice * -Device::createDevice(DeviceManager& d, std::auto_ptr( configRom )) +Device::createDevice(DeviceManager& d, ffado_smartptr( configRom )) { unsigned int vendorId = configRom->getNodeVendorId(); Index: trunk/libffado/tests/scan-devreg.cpp =================================================================== --- trunk/libffado/tests/scan-devreg.cpp (revision 2587) +++ trunk/libffado/tests/scan-devreg.cpp (revision 2691) @@ -29,4 +29,5 @@ #include "debugmodule/debugmodule.h" +#include "ffadodevice.h" // Needed for ffado_smartptr #include "libieee1394/configrom.h" @@ -231,6 +232,6 @@ } for (fb_nodeid_t node = n1; node < n2; node++) { - std::auto_ptr configRom = - std::auto_ptr( new ConfigRom(*tmp1394, node)); + ffado_smartptr configRom = + ffado_smartptr( new ConfigRom(*tmp1394, node)); if (!configRom->initialize()) { continue; Index: trunk/libffado/support/firmware/fireworks-downloader.cpp =================================================================== --- trunk/libffado/support/firmware/fireworks-downloader.cpp (revision 2651) +++ trunk/libffado/support/firmware/fireworks-downloader.cpp (revision 2691) @@ -245,5 +245,5 @@ DeviceManager d = DeviceManager(); - Device *dev = new Device(d, std::auto_ptr(configRom) ); + Device *dev = new Device(d, ffado_smartptr(configRom) ); if (dev == NULL) { printMessage("Could not create FireWorks::Device\n");