|
dxd - dynax driver framework 2.7.0d222
cross platform open source driver development framework
|
WASAPI client driver interface class. More...
#include <dx_wasapi_client_driver.h>
Classes | |
| struct | property |
Public Member Functions | |
| virtual DX_PRAGMA_IGNORE_RETURN_VALUE_END bool | boot () try |
| virtual DX_PRAGMA_IGNORE_RETURN_VALUE_END bool | boot () try |
| DX_PRAGMA_IGNORE_RETURN_VALUE_END void | exception (const class exception &exception, bool filtered=false) const noexcept override try |
| notification exception handler | |
| DX_PRAGMA_IGNORE_RETURN_VALUE_END void | exception (const class exception &exception, bool filtered=false) const noexcept override try |
| notification exception handler | |
| virtual void | exception (const exception &exception, bool filtered=false) const noexcept=0 |
| notification exception handler | |
| virtual void | exception (const exception &exception, bool filtered=false) const noexcept=0 |
| notification exception handler | |
| virtual bool | shutdown () try |
| client driver::shutdown/boot(): override to shutdown/boot host driver | |
| virtual bool | shutdown () try |
| client driver::shutdown/boot(): override to shutdown/boot host driver | |
| bool | try_conclude () noexcept |
| atomically conclude()s if currently launched; returns whether this call did it | |
| bool | try_conclude () noexcept |
| atomically conclude()s if currently launched; returns whether this call did it | |
| bool | try_launch () |
| atomically launch()es if not already launched; returns whether this call did it | |
| bool | try_launch () |
| atomically launch()es if not already launched; returns whether this call did it | |
Public Attributes | |
| T | elements |
| STL member. | |
| T | elements |
| STL member. | |
| dx::promoted< dx::log > | host |
| host logging control | |
| dx::promoted< dx::log > | host |
| host logging control | |
| K | keys |
| STL member. | |
| K | keys |
| STL member. | |
| std::atomic< bool > | launched |
| std::atomic< bool > | launched {} |
| log | log {} |
| log | log |
| preference_t | preference |
| decltype(device_t::preference) | preference |
| const char * | product_id |
| const char * | product_id |
| promoted< os_result > | status {driver_not_connected} |
| promoted< os_result > | status |
| uint32_t | version = DX_VERSION32 |
| uint32_t | version |
Protected Types | |
| typedef decltype(device_t::id) | device_id_t |
Protected Member Functions | |
| virtual void | add (const device_id_t &)=0 |
| adds a new device to the device list | |
| virtual void | add (const decltype(device_t::id) &)=0 |
| adds a new device to the device list | |
| void | add (const device_id_t &device_id) override |
| adds a new device to the device list | |
| virtual void | arrived () |
| notify device arrivals completed stub | |
| virtual void | arrived (device_t &) |
| notify specific device arrival stub | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| DX_PRAGMA_IGNORE_RETURN_VALUE_BEGIN | catch (const dx::exception &__dx_exception) |
| DX_PRAGMA_IGNORE_RETURN_VALUE_BEGIN | catch (const dx::exception &__dx_exception) |
| DX_PRAGMA_IGNORE_RETURN_VALUE_BEGIN | catch (const dx::exception &__dx_exception) |
| catch (const std::exception &__std_exception) | |
| catch (const std::exception &__std_exception) | |
| catch (const std::exception &__std_exception) | |
| virtual DX_PRAGMA_IGNORE_RETURN_VALUE_END void | clear () noexcept try |
| replaces std::map::clear to call virtual notification methods | |
| void | conclude () noexcept override |
| conclude notification: object will be removed. If you overwrite conclude() you also need to overwrite destructor and check if its needed to be called from there. Called only through try_conclude() - never call this directly from outside the class hierarchy. | |
| driver (const match &matching_ids, const char *product_id, const decltype(super::preference)&preference, dx::log log={}) | |
| the WASAPI client driver interface class constructor | |
| driver (const match &matching_ids, const char *product_id, dx::log log={}) | |
| dx_catchall_handler (this,) virtual driver &operator<<(std | |
| restores device settings | |
| void | info (std::ostream &os) noexcept override |
| log object class information | |
| void | launch () override |
| launch notification: object mounted and ready to use. Called only through try_launch() - never call this directly from outside the class hierarchy. | |
| bool | matches (::IMMDevice *endpoint) const |
| virtual | operator bool () const noexcept |
| virtual driver & | operator<< (const char *file) |
| virtual driver & | operator>> (const char *file) const |
| virtual driver & | operator>> (std::ostream &ostream) const |
| saves device tree | |
| virtual void | remove (const device_id_t &)=0 |
| finds and removes a device from the device list | |
| virtual void | remove (const decltype(device_t::id) &)=0 |
| finds and removes a device from the device list | |
| void | remove (const device_id_t &device_id) override try |
| finds and removes a device from the device list | |
| virtual void | removed () noexcept |
| notify device removals completed stub | |
| virtual void | removed (device_t &) noexcept |
| notify specific device removal stub | |
| virtual void | scan () try |
| void | sleep () override |
| < notify system will sleep | |
| void | wake () override |
| ~driver () override | |
Protected Attributes | |
| promoted< uint32_t > | connection_id |
| dx_catchall_rethrow() public typedef decltype(matching_ids) | match |
| std::set< std::string > | matching_ids |
| case-insensitive substrings of the KS filter device interface ID; empty matches every endpoint | |
WASAPI client driver interface class.
One device per active endpoint (render and capture endpoints of one audio adapter are separate devices), identified by the MMDevice endpoint ID and matched by substrings of the endpoint's KS filter device interface ID. Arrival and removal come from the endpoint notification callback.
| in | case of an error returned by the underlaying API the driver class throws a dx::exception. |
|
protectedinherited |
|
inlineprotected |
the WASAPI client driver interface class constructor
| matching_ids | the matching KS filter device interface ID substrings |
| product_id | WASAPI client driver ID |
| preference | preference |
| log | log settings |
|
inlineprotected |
|
inlineoverrideprotected |
|
protectedpure virtualinherited |
adds a new device to the device list
| dx::exception |
|
protectedpure virtualinherited |
adds a new device to the device list
| dx::exception |
|
inlineoverrideprotectedinherited |
adds a new device to the device list
| dx::exception |
|
protectedvirtualinherited |
notify device arrivals completed stub
Reimplemented from dx::driver< device_id_t, preference_t >.
|
inlineprotectedvirtualinherited |
notify specific device arrival stub
Reimplemented in dx::stream::driver< dx::map::driver< device_t > >, and dx::stream::driver< map::driver< device_t > >.
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedvirtualnoexceptinherited |
replaces std::map::clear to call virtual notification methods
|
inlineoverrideprotectedvirtualnoexcept |
conclude notification: object will be removed. If you overwrite conclude() you also need to overwrite destructor and check if its needed to be called from there. Called only through try_conclude() - never call this directly from outside the class hierarchy.
Reimplemented from dx::map::driver< device_t >.
|
inlineprotectedinherited |
restores device settings
|
inlineoverridenoexceptinherited |
notification exception handler
|
inlineoverridenoexceptinherited |
notification exception handler
|
pure virtualnoexceptinherited |
notification exception handler
|
pure virtualnoexceptinherited |
notification exception handler
Implemented in dx::asio::client::_device< desc, preference, stream< device< desc, preference, stream > > >, dx::device< id_t, preference_t >, dx::device< dx::guid, preference >, dx::device< std::string, dx::preference >, dx::device< std::string, preference >, dx::device< std::string, preference_t >, dx::device<::AudioObjectID, cf::preference >, dx::device<::io_service_t, dx::preference >, dx::device<::io_service_t, preference_t >, dx::device<::MIDIDeviceRef, cf::preference >, dx::device<>, dx::proxy::device< preference_t >, dx::proxy::device< dx::preference >, dx::service::app, dx::stream::pin< device_t, _circular_t >, dx::usb::platform::device< preference_t >, dx::usb::platform::device< dx::preference >, dx::usb::platform::device< preference_t >, dx::usb::stream::pipe< device_t, circular_t, stream_t >, dx::virtuel::stream::_device< desc, dx::preference, dx::stream::shared::stream< device< desc, dx::preference, dx::stream::shared::stream > > >, and dx::wasapi::client::_device< desc, preference, dx::stream::stream< device< desc, preference, dx::stream::stream > > >.
|
inlineoverrideprotectedvirtualnoexcept |
log object class information
Reimplemented from dx::map::driver< device_t >.
|
inlineoverrideprotectedvirtual |
launch notification: object mounted and ready to use. Called only through try_launch() - never call this directly from outside the class hierarchy.
Reimplemented from dx::map::driver< device_t >.
|
inlineprotected |
|
inlineprotectedvirtualnoexcept |
|
inlineprotectedvirtualinherited |
|
inlineprotectedvirtualinherited |
|
inlineprotectedvirtualinherited |
saves device tree
Reimplemented in dx::coreaudio::driver< device_t >.
|
protectedpure virtualinherited |
finds and removes a device from the device list
|
protectedpure virtualinherited |
finds and removes a device from the device list
|
inlineoverrideprotectedinherited |
finds and removes a device from the device list
| dx::exception |
|
protectedvirtualinherited |
notify device removals completed stub
Reimplemented from dx::driver< device_id_t, preference_t >.
|
inlineprotectedvirtualnoexceptinherited |
notify specific device removal stub
|
inlineprotectedvirtual |
|
inlinevirtualinherited |
client driver::shutdown/boot(): override to shutdown/boot host driver
Reimplemented in dx::coreaudio::driver< device_t >.
|
inlinevirtualinherited |
client driver::shutdown/boot(): override to shutdown/boot host driver
|
inlineoverrideprotectedinherited |
< notify system will sleep
notify system wake completed stub
|
inlinenoexceptinherited |
atomically conclude()s if currently launched; returns whether this call did it
|
inlinenoexceptinherited |
atomically conclude()s if currently launched; returns whether this call did it
|
inlineinherited |
atomically launch()es if not already launched; returns whether this call did it
|
inlineinherited |
atomically launch()es if not already launched; returns whether this call did it
|
inlineoverrideprotectedinherited |
|
protected |
|
inherited |
STL member.
|
inherited |
STL member.
|
inherited |
host logging control
|
inherited |
host logging control
|
inherited |
STL member.
|
inherited |
STL member.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
protected |
|
protected |
case-insensitive substrings of the KS filter device interface ID; empty matches every endpoint
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
| (c) copyright 2009 dynamic acoustics e.U. | generated on |