dxd - dynax driver framework 2.5.0d148
cross platform open source driver development framework
|
CoreAudio client device. More...
#include <dx_coreaudio_device.h>
Public Types | |
typedef desc_t | desc_t |
Public Member Functions | |
virtual void | conclude () noexcept |
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. | |
dx_catchall_handler (this,) void conclude() noexcept override | |
void | exception (const dx::exception &exception, bool filtered=false) const noexcept override |
notification exception handler | |
virtual uint64_t | frame () const |
void | hw_clock (dx::event< user > &hw_clock) override |
void | info (std::ostream &os) noexcept override |
log object class information | |
virtual void | launch () |
launch notification: object mounted and ready to use | |
virtual _device & | reset () |
virtual bool | start (uint64_t=0, unsigned int starting=1) |
virtual unsigned int | stop (bool force=false) noexcept |
Public Attributes | ||
promoted::property< typename super::client_map, typename super::client_map::value_t, false > | clients {this->id, {.mSelector= property::device::clients}} | |
dx::event< user > * | clock | |
promoted< uint32_t >::preference< preference_t > | clocksource | |
std::atomic< size_t > | counter | |
dx::driver< decltype(id)> & | driver | |
struct { | ||
dx::event< user > * clock | ||
std::atomic< size_t > counter | ||
uint32_t iosize | ||
} | hw | |
dx::coreaudio::_device::clocksource | id | |
promoted::property< uint32_t > | iosize {this->id, {.mSelector= ::kAudioDevicePropertyBufferFrameSize}, [this](const uint32_t& value){this->hw.iosize= value;}} | |
bool | launched {} | |
dx::stream::device::monitor | monitor | |
std::deque< std::function< void(control &)> | notify ) | |
preference_t | preference | |
std::string | puid | |
persistent UID - system unique - could change with location | ||
std::string | puuid | |
persistent universal UID - universally unique ID (i.e. serial number) | ||
promoted< uint32_t >::preference< preference_t > | safety_offset [direction::directions] | |
promoted::property<::Float64 > | samplerate {this->id, {.mSelector= ::kAudioDevicePropertyNominalSampleRate}} | |
std::atomic< unsigned int > | started | |
std::map< decltype(_desc_t::stream::target.idx()), std::weak_ptr< stream_t > > | streams | |
promoted< uint32_t >::preference< preference_t > | sync_cycle_ticks | |
promoted< uint32_t >::preference< preference_t > | sync_reference | |
dx::stream::device::monitor | version | |
Protected Member Functions | |
virtual void | flush () |
virtual void | halt () |
Protected Attributes | |
std::recursive_mutex | start_stop_in_progress |
start/stop operation in progress | |
CoreAudio client device.
|
inherited |
|
inlinevirtualnoexceptinherited |
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.
Reimplemented in dx::proxy::stream::_device< desc_t, preference_t, stream_t >, dx::usb::pipe< device_t >, dx::usb::pipe< device_t >, dx::virtuel::stream::_device< desc_t, preference_t, stream_t >, dx::proxy::device, dx::map::driver< device >, and dx::map::driver< device_t >.
|
inlineoverridenoexceptinherited |
|
inlineoverridevirtualnoexceptinherited |
notification exception handler
Implements dx::object.
|
inlineprotectedvirtualinherited |
|
inlinevirtualinherited |
|
inlineprotectedvirtualinherited |
|
inlineoverridevirtualinherited |
Reimplemented from dx::stream::device< dx::stream::control< dx::device<::AudioObjectID > >, desc_t, preference_t, stream_t >.
|
inlineoverridevirtualnoexceptinherited |
log object class information
Reimplemented from dx::stream::device< dx::stream::control< dx::device<::AudioObjectID > >, desc_t, preference_t, stream_t >.
Reimplemented in dx::coreaudio::pod::device< desc_t, preference_t, stream_t >.
|
inlinevirtualinherited |
launch notification: object mounted and ready to use
Reimplemented in dx::stream::stream< device< desc_t, dx::preference, pipe >, dx::circular, usb::pipe< device< desc_t, dx::preference, pipe > > >, dx::stream::stream< device_t, dx::circular, usb::pipe< device_t > >, dx::usb::stream::_device< desc_t, preference_t, stream_t >, dx::virtuel::driver< device_t >, dx::map::driver< device >, dx::map::driver< device_t >, dx::proxy::driver< device< pin_t > >, dx::proxy::driver< device< stream_pin_t > >, dx::proxy::driver< device< super_device_t > >, dx::proxy::driver< device_t >, dx::proxy::driver< dx::test::device< super_device_t > >, dx::proxy::driver< dx::test::midi::device< super_device_t > >, dx::proxy::driver< device_t >, dx::proxy::driver< device< pin_t > >, dx::proxy::driver< device< stream_pin_t > >, dx::proxy::driver< device< super_device_t > >, dx::proxy::driver< device_t >, dx::proxy::driver< dx::test::device< super_device_t > >, dx::proxy::driver< dx::test::midi::device< super_device_t > >, and dx::proxy::driver< device_t >.
|
inlinevirtualinherited |
|
inlinevirtualinherited |
result indicates if start changed the state.
Reimplemented in dx::coreaudio::stream::device< desc_t, preference_t, stream_t >.
|
inlinevirtualnoexceptinherited |
result indicates the amount of stopped start references
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
struct { ... } dx::stream::device< dx::stream::control< dx::device<::AudioObjectID > > , desc_t , preference_t, stream_t >::hw |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
persistent UID - system unique - could change with location
|
inherited |
persistent universal UID - universally unique ID (i.e. serial number)
|
inherited |
|
inherited |
|
protectedinherited |
start/stop operation in progress
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
(c) copyright 2009 dynamic acoustics e.U. | generated on Fri Aug 22 2025 |