dxd - dynax driver framework 2.2.0d109
cross platform open source driver development framework
|
CoreAudio server streaming device. More...
#include <dx_coreaudio_server_device.h>
Public Member Functions | |
virtual void | add_client (const ::AudioServerPlugInClientInfo *info) |
void | create_pins () |
device (decltype(super::driver)&driver, decltype(super::id)&id) | |
device (decltype(super::driver)&driver, decltype(super::id)&id, const typename super::desc &desc) | |
dx_catchall_rethrow () virtual void configure(target target | |
configure: handle device configuration change requests configure will only receive requests targetted to the device | |
dx_catchall_rethrow (io_stop();) virtual void io_stop() try | |
redirect::indent | indent (std::clog) |
virtual void | io_start () try |
void | launch () override |
pin_t & | pin (::AudioObjectID id) |
pin_t & | pin (target target) |
virtual uint32_t | property (target target, const ::AudioObjectPropertyAddress &address, void *property, ::UInt32 &size, bool set=false) try |
generic device property handler | |
virtual void | remove_client (const ::AudioServerPlugInClientInfo *info) |
host & | submit (::AudioObjectID id, ::UInt64 action, uint64_t data=0) |
host & | submit (::AudioObjectID id, const ::AudioObjectPropertyAddress &address) |
template<unsigned int count> | |
host & | submit (::AudioObjectID id, const ::AudioObjectPropertyAddress(&addresses)[count]) |
submit (target.id,{ .mSelector=static_cast<::AudioObjectPropertySelector >(action),.mScope=::kAudioObjectPropertyScopeGlobal}) | |
switch (action) | |
Public Attributes | |
::UInt64 | action |
std::map< pid_t, cf::reference<::CFStringRef > > | clients |
uint8_t | idx = 0 |
::UInt64 void * | info |
std::deque< pin_t > | pins |
Protected Attributes | |
const ::AudioServerPlugInHostInterface * | plugin |
CoreAudio server streaming device.
In contrast to the hierarchical dx device tree design the device keeps a list of all pins and all streams to better reflect the CoreAudio architecture.
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
creates pins from dx::device description and adds it as CoreAudio entity to the CoreAudio device
register all audio pins across all streams
dx::coreaudio::server::device< pin_t >::dx_catchall_rethrow | ( | ) |
configure: handle device configuration change requests configure will only receive requests targetted to the device
|
inline |
redirect::indent dx::coreaudio::server::device< pin_t >::indent | ( | std::clog | ) |
|
inlinevirtual |
|
inlineoverride |
|
inline |
|
inline |
|
inlinevirtual |
generic device property handler
|
inlinevirtual |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
dx::coreaudio::server::device< pin_t >::submit | ( | target. | id, |
{ .mSelector=static_cast<::AudioObjectPropertySelector >(action),.mScope=::kAudioObjectPropertyScopeGlobal} | ) |
|
inline |
::UInt64 dx::coreaudio::server::device< pin_t >::action |
pin_t::circular_t* dx::coreaudio::server::device< pin_t >::circular |
std::map<pid_t, cf::reference<::CFStringRef> > dx::coreaudio::server::device< pin_t >::clients |
uint64_t dx::coreaudio::server::device< pin_t >::count |
cached sync cycle count to evaluate timesamp generation
struct { ... } dx::coreaudio::server::device< pin_t >::cycle |
dx::stream::direction::direction dx::coreaudio::server::device< pin_t >::direction |
bool dx::coreaudio::server::device< pin_t >::engine_driven |
pins do not provide any means of driving streaming
uint8_t dx::coreaudio::server::device< pin_t >::idx = 0 |
::UInt64 void* dx::coreaudio::server::device< pin_t >::info |
uint32_t dx::coreaudio::server::device< pin_t >::lines |
sample lines per sync cycle (per timestamp generation)
uint32_t dx::coreaudio::server::device< pin_t >::linesize |
size of all channels in bytes per sample
uint32_t dx::coreaudio::server::device< pin_t >::offset |
timestamp generation offset to zero reference on seed change
std::deque<pin_t> dx::coreaudio::server::device< pin_t >::pins |
|
protectedinherited |
struct { ... } dx::coreaudio::server::device< pin_t >::reference |
uint32_t dx::coreaudio::server::device< pin_t >::safety_offset[2] |
RX/TX safety offsets;.
uint64_t dx::coreaudio::server::device< pin_t >::seed |
(c) copyright 2009 dynamic acoustics e.U. | generated on Mon Apr 21 2025 |