free
Frees resources used by the IOAudioDevice instance
Declaration
virtual void free();Overview
This method will deactivate all audio audio engines and release the audioEngines OSSet. It will also deactivate all of the audio ports and release the audioPorts OSSet. It will release the timerEvents OSDictionary as well as cancel any outstanding timer callbacks. It will clean up all of the event sources and the workLoop.
Do not call this directly. This is called automatically by the system when the instance's refcount goes to 0. To decrement the refcount, call release() on the object.
See Also
Miscellaneous
activateAudioEngine(IOAudioEngine *)activateAudioEngine(IOAudioEngine *, bool)addTimerEventattachAudioPortaudioEngineStartingaudioEngineStoppedcompletePowerStateChangecompletePowerStateChangeActiondeactivateAllAudioEnginesdetachAllAudioPortsdispatchTimerEventsflushAudioControlsgetCommandGategetPendingPowerStategetPowerStategetWorkLoopinitinitHardwareinitiatePowerStateChangeperformPowerStateChangeprotectedCompletePowerStateChangeprotectedSetPowerStateremoveAllTimerEventsremoveTimerEventsetConfigurationApplicationBundlesetDeviceCanBeDefaultsetDeviceNamesetDeviceShortNamesetFamilyManagePowersetIdleAudioSleepTimesetManufacturerNamesetPowerStatesetPowerStateActionstartstoptimerFiredwaitForPendingPowerStateChange