|
dxd - dynax driver framework 2.6.0d205
cross platform open source driver development framework
|
CoreAudio stream client device. More...
#include <dx_coreaudio_stream_device.h>
Public Types | |
| typedef dx::virtuel::stream::desc | desc_t |
| typedef dx::event< dx::kernel > | event |
| typedef dx::stream::stream< device< dx::virtuel::stream::desc, cf::preference, dx::stream::stream > > | stream_t |
| typedef desc | value_t |
Public Member Functions | |
| struct stream * | align (struct stream *sync_reference) |
| uint32_t | align (uint32_t sync_reference) const |
| DX_PRAGMA_IGNORE_RETURN_VALUE_BEGIN | catch (const dx::exception &__dx_exception) |
| 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. | |
| device (decltype(super::driver)&driver, decltype(super::id)&id) | |
| dx_catchall_handler (this,) void conclude() noexcept override | |
| uint32_t | enumerate (const format &format=any) const |
| enumerate typified pins | |
| uint32_t | enumerate (const format &format=any) const |
| enumerate typified pins | |
| void | exception (const dx::exception &exception, bool filtered=false) const noexcept override |
| notification exception handler | |
| struct stream * | find (const decltype(stream::target.idx())&target) |
| struct stream * | find (const format &format=any, enum direction::direction direction=direction::any) |
| struct stream * | find (const target &target) |
| struct stream * | find (uint32_t &pin, const format &format=any, enum direction::direction direction=direction::any) |
| finds and returns the stream description and pin idx into this stream | |
| struct stream * | find (const format &format=any, enum direction::direction direction=direction::any) |
| struct stream * | find (uint32_t &pin, const format &format=any, enum direction::direction direction=direction::any) |
| finds and returns the stream description and pin idx into this stream | |
| virtual uint64_t | frame () const |
| DX_PRAGMA_IGNORE_RETURN_VALUE_END void | halt () noexcept override |
| virtual bool | hw_clock () const noexcept |
| virtual void | hw_clock (abstract::event *hw_clock) |
| void | info (std::ostream &os) noexcept override |
| log object class information | |
| virtual void | launch () |
| launch notification: object mounted and ready to use | |
| bool | operator== (const desc &desc) const |
| bool | operator== (const desc &desc) const |
| virtual device & | operator>> (std::ostream &) const |
| virtual _device & | reset () |
| virtual void | sleep () |
| notify system will sleep stub | |
| DX_PRAGMA_IGNORE_RETURN_VALUE_END bool | start (uint64_t frame=0, unsigned int started=1) override try |
| virtual unsigned int | stop (bool force=false) noexcept |
| std::string | string (uint8_t idx) try |
| uint32_t | sync_reference (struct stream *sync_reference) |
| struct stream * | sync_reference (uint32_t sync_reference) |
| void | wake () override |
Public Attributes | |
| enum dx::stream::desc::bus | bus |
| promoted::property< typename super::client_map, typename super::client_map::value_t, false > | clients |
| abstract::event * | clock |
| uint32_t | clocks |
| number of independent clocks [currenlty only single clock support] | |
| promoted< uint32_t >::preference< decltype(dx::stream::control< dx::device<::AudioObjectID, cf::preference > >::preference)> | clocksource |
| std::atomic< size_t > | counter |
| bool | dflt |
| can be selected as default (OS audio) device | |
| dx::driver< decltype(id), cf::preference > & | driver |
| bool | editable |
| can be edited | |
| bool | hidden |
| hide device | |
| struct { | |
| abstract::event * clock | |
| std::atomic< size_t > counter | |
| uint32_t iosize | |
| } | hw |
| promoted::property< icon, ::CFURLRef, false > | icon |
| dx::coreaudio::_device::clocksource | id |
| promoted< uint32_t >::preference< decltype(dx::stream::control< dx::device<::AudioObjectID, cf::preference > >::preference)> | iosize |
| uint32_t | iosize |
| bool | launched |
| struct dx::stream::desc::name_id | model |
| dx::stream::device::monitor | monitor |
| std::deque< std::function< void(control &)> > | notify |
| bool | persistence |
| device has capability to store persistent settings (i.e. sample rate; clock source; etc.) | |
| cf::preference | 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< decltype(dx::stream::control< dx::device<::AudioObjectID, cf::preference > >::preference)> | safety_offset [direction::directions] |
| promoted::property<::Float64 > | samplerate |
| direction::direction | start_stop_order |
| std::atomic< unsigned int > | started |
| struct dx::stream::desc::stream | stream [max_streams] |
| std::map< decltype(dx::virtuel::stream::desc::stream::target.idx()), std::weak_ptr< dx::stream::stream< device< dx::virtuel::stream::desc, cf::preference, dx::stream::stream > > > > | streams |
| promoted< uint32_t >::preference< decltype(dx::stream::control< dx::device<::AudioObjectID, cf::preference > >::preference)> | sync_cycle_ticks |
| promoted< structdesc_t::stream * >::template preference< decltype(dx::stream::control< dx::device<::AudioObjectID, cf::preference > >::preference), uint32_t > | sync_reference |
| struct dx::stream::desc::name_id | vendor |
| dx::stream::device::monitor | version |
Protected Member Functions | |
| virtual void | flush () |
| void | process (const ::AudioTimeStamp *now, const ::AudioBufferList *input, const ::AudioTimeStamp *, ::AudioBufferList *output, const ::AudioTimeStamp *) override |
Protected Attributes | |
| decltype(super::iosize) ::chain | iosize_server |
| iosize_server The iosize is handled by CoreAudio - not the CoreAudio server plugin hence the coreaudio::stream::device is responsible to align and store | |
| std::recursive_mutex | start_stop_in_progress |
| start/stop operation in progress | |
CoreAudio stream client device.
| inherited |
| typedef dx::event<dx::kernel> dx::coreaudio::stream::device< desc_t, preference_t, stream_t >::event |
| inherited |
|
inherited |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
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.
|
inlineoverridenoexceptinherited |
|
inlineinherited |
enumerate typified pins
|
inlineinherited |
enumerate typified pins
|
inlineoverridenoexceptinherited |
notification exception handler
|
inlineinherited |
|
inlineinherited |
| format | search stream format filter |
| direction | search stream direction filter |
|
inlineinherited |
|
inlineinherited |
finds and returns the stream description and pin idx into this stream
| pin | in: global pin index, out: pin index into returned stream description |
| format | search stream format filter |
| direction | search stream direction filter |
|
inlineinherited |
| format | search stream format filter |
| direction | search stream direction filter |
|
inlineinherited |
finds and returns the stream description and pin idx into this stream
| pin | in: global pin index, out: pin index into returned stream description |
| format | search stream format filter |
| direction | search stream direction filter |
|
inlineprotectedvirtualinherited |
|
inlinevirtualinherited |
|
inlineoverridenoexceptinherited |
|
inlinevirtualnoexceptinherited |
|
inlinevirtualinherited |
|
inlineoverridevirtualnoexcept |
log object class information
Reimplemented from dx::coreaudio::_device< dx::virtuel::stream::desc, cf::preference, stream< device< dx::virtuel::stream::desc, cf::preference, stream > > >.
|
inlinevirtualinherited |
launch notification: object mounted and ready to use
|
inlineinherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlineoverrideprotected |
take timestamp on cycle boundary
|
inlinevirtualinherited |
|
inlinevirtualinherited |
notify system will sleep stub
|
inlineoverrideinherited |
result indicates if start changed the state.
|
inlinevirtualnoexceptinherited |
result indicates the amount of stopped start references
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineoverrideinherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
number of independent clocks [currenlty only single clock support]
|
inherited |
|
inherited |
|
inherited |
can be selected as default (OS audio) device
|
inherited |
|
inherited |
can be edited
|
inherited |
hide device
| struct { ... } dx::stream::device< dx::stream::control< dx::device<::AudioObjectID, cf::preference > >, dx::virtuel::stream::desc, dx::stream::stream< device< dx::virtuel::stream::desc, cf::preference, dx::stream::stream > > >::hw |
|
inherited |
|
inherited |
|
inherited |
|
protected |
iosize_server The iosize is handled by CoreAudio - not the CoreAudio server plugin hence the coreaudio::stream::device is responsible to align and store
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
device has capability to store persistent settings (i.e. sample rate; clock source; etc.)
|
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 |
|
inherited |
|
inherited |
|
inherited |
| (c) copyright 2009 dynamic acoustics e.U. | generated on |