dxd - dynax driver framework 2.2.0d81
cross platform open source driver development framework
|
OS proxy streaming pin class. More...
#include <dx_proxy_stream_device.h>
Public Types | |
typedef _circular_t | circular_t |
typedef _desc_t | desc_t |
typedef _device_t | device_t |
Public Member Functions | |
channel_t void | attach (channel_t **io[2], uint64_t channel_map[(channels+63)/64]) try |
virtual void | callback () |
catch (...) | |
catch (...) | |
catch (...) | |
catch (...) | |
catch (const dx::exception &__dx_exception) | |
catch (const dx::exception &__dx_exception) | |
catch (const dx::exception &__dx_exception) | |
catch (const dx::exception &__dx_exception) | |
catch (const std::exception &__std_exception) | |
catch (const std::exception &__std_exception) | |
catch (const std::exception &__std_exception) | |
catch (const std::exception &__std_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. | |
dx_catchall_rethrow () virtual pin &wait() | |
dx_catchall_rethrow () virtual uint32_t samplerate() const | |
dx_catchall_rethrow () void stop(bool force | |
virtual float | encoder (dx::stream::encoder::index::type type, int index) const |
virtual void | info (std::ostream &os) |
log object class information | |
virtual pin & | initialize () |
virtual void | launch () |
launch notification: object mounted and ready to use | |
virtual | operator circular_t * () const noexcept |
operator os_event () noexcept | |
virtual circular_t * | operator-> () const noexcept |
pin (device_t &device, const typename desc_t::stream::desc &stream_desc, const typename desc_t::stream::pin::desc &pin_desc) | |
proxy::stream::pin constructor | |
event & | reset (uint64_t count=0) try |
event & | signal (uint64_t count=1) try |
uint64_t | signalled () const |
void | start (uint64_t) override try |
virtual void | stop (bool force=false) noexcept |
event & | wait (bool reset=false) try |
template<typename rep_t , typename period_t > | |
bool | wait (const std::chrono::duration< rep_t, period_t > &timeout, bool reset=false) try |
virtual | ~pin () noexcept |
closes the pin | |
Public Attributes | |
dx::stream::channel::control * | control = nullptr |
bool | launched {} |
stream_t & | stream |
Static Public Attributes | |
static constexpr auto | scope = kernel |
Protected Types | |
typedef decltype(desc_t::stream::target) | bus_t |
OS proxy streaming pin class.
example:
in | case of an error returned by the underlaying API the device class throws a dx::exception. |
|
protected |
|
inherited |
|
inherited |
|
inherited |
|
inline |
proxy::stream::pin constructor
n/a |
|
inlinevirtualnoexcept |
closes the pin
|
inline |
The default implementation is based on event<user> which is signalled when triggered via callback() from kernel. This is to achieve compatibility with Windows events. Its probably more adequate to overwrite callback() and do the work here if feasible.
|
inlineinherited |
|
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.
Reimplemented in dx::proxy::device, dx::proxy::device, dx::map::driver< device >, and dx::map::driver< device_t >.
|
inlineinherited |
|
inlineinherited |
|
virtual |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
log object class information
Reimplemented in dx::device< std::string >, dx::device<::AudioObjectID >, dx::device<::io_service_t >, dx::device< id_t >, dx::virtuel::driver< dx::test::device< typename audio_pin_t::circular_t, super_device_t > >, dx::virtuel::driver< device_t >, dx::coreaudio::driver< device_t >, dx::proxy::device, dx::proxy::driver< device< pin_t > >, dx::proxy::driver< device< typename audio_pin_t::circular_t, super_device_t > >, dx::proxy::driver< device_t >, dx::proxy::driver< dx::test::midi::device< typename audio_pin_t::circular_t, super_device_t, typename midi_pin_t::circular_t > >, dx::proxy::driver< device_t >, and dx::proxy::device.
|
inlinevirtualinherited |
|
inlinevirtualinherited |
launch notification: object mounted and ready to use
Reimplemented in dx::stream::stream< device_t, circular_t >, dx::stream::stream< dx::stream::device >, dx::usb::stream::device< desc_t >, dx::virtuel::driver< dx::test::device< typename audio_pin_t::circular_t, super_device_t > >, dx::virtuel::driver< device_t >, dx::coreaudio::driver< device_t >, dx::proxy::driver< device< pin_t > >, dx::proxy::driver< device< typename audio_pin_t::circular_t, super_device_t > >, dx::proxy::driver< device_t >, dx::proxy::driver< dx::test::midi::device< typename audio_pin_t::circular_t, super_device_t, typename midi_pin_t::circular_t > >, dx::proxy::driver< device_t >, dx::proxy::driver< device< pin_t > >, dx::proxy::driver< device< typename audio_pin_t::circular_t, super_device_t > >, dx::proxy::driver< device_t >, dx::proxy::driver< dx::test::midi::device< typename audio_pin_t::circular_t, super_device_t, typename midi_pin_t::circular_t > >, and dx::proxy::driver< device_t >.
|
inlinevirtualnoexceptinherited |
Reimplemented in dx::coreaudio::pin< desc_t, circular_t, device_t >.
|
inlinevirtualnoexceptinherited |
Reimplemented in dx::coreaudio::pin< desc_t, circular_t, device_t >.
|
inlineoverride |
|
inlinevirtualnoexceptinherited |
|
inlineinherited |
wait with duration timeout returns true: signalled false: timed out
dx::stream::channel::control* dx::proxy::stream::pin< desc_t, circular_t, device_t >::control = nullptr |
|
inherited |
|
inherited |
(c) copyright 2009 dynamic acoustics e.U. | generated on Fri Dec 20 2024 |