dxd - dynax driver framework 2.2.0d91
cross platform open source driver development framework
|
virtual streaming device interface class More...
#include <dx_virtual_stream_device.h>
Public Types | |
typedef desc_t | desc |
Public Member Functions | |
_device (decltype(super::driver)&driver, decltype(super::id)&id) | |
the virtual stream device class constructor | |
_device (decltype(super::driver)&driver, decltype(super::id)&id, const desc_t &desc) | |
catch (...) | |
catch (const dx::exception &__dx_exception) | |
catch (const std::exception &__std_exception) | |
virtual uint32_t | clocksource () |
virtual uint32_t | clocksource (uint32_t clocksource) try |
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 | info (std::ostream &os) noexcept override |
log object class information | |
virtual int32_t | iosize () const try |
virtual int32_t | iosize (uint32_t iosize) try |
int32_t | iosize (uint32_t, dx::event< user > &) override try |
virtual void | launch () |
launch notification: object mounted and ready to use | |
virtual bool | monitor () noexcept |
monitor_t * | monitor (bool force=false) |
virtual device & | reset () |
virtual uint32_t | safety_offset (dx::stream::direction::direction direction) const try |
obtain persistent number of rx safety offset ticks - defaults to stream desc config setting | |
virtual uint32_t | safety_offset (dx::stream::direction::direction direction, uint32_t safety_offset) try |
set persistent number of rx/tx safety offset ticks | |
template<typename observer_t = uint32_t> | |
observer_t * | samplerate () const |
virtual uint32_t | samplerate (uint32_t samplerate) try |
virtual bool | start (uint64_t=0, unsigned int starting=1) |
virtual unsigned int | stop (bool force=false) noexcept |
virtual uint32_t | sync_cycle_ticks () const try |
obtain persistent number of ticks per sync cycle - defaults to sync_cycle.hw_min_ticks with an absolute minimum of 2 ticks | |
virtual int32_t | sync_reference () const try |
virtual int32_t | sync_reference (uint32_t sync_reference) try |
~_device () override | |
Public Attributes | ||
dx::event< user > * | clock | |
std::atomic< size_t > | counter | |
dx::driver< decltype(id)> & | driver | |
struct { | ||
dx::event< user > * clock | ||
std::atomic< size_t > counter | ||
uint32_t iosize | ||
} | hw | |
const std::string | id | |
uint32_t | iosize | |
bool | launched {} | |
std::deque< std::function< void(control &)> | notify ) | |
decltype(driver.preference) | preference | |
std::string | puid | |
persistent UID (i.e. serial number) | ||
std::string | puuid | |
persistent universal UID | ||
shared::memory< dx::stream::clock::monitor > | shared_monitor | |
std::atomic< unsigned int > | started | |
std::map< decltype(desc_t::stream::target.idx()), std::weak_ptr< stream_t > > | streams | |
uint32_t | version | |
Protected Member Functions | |
virtual void | halt () |
Protected Attributes | |
std::recursive_mutex | start_stop_in_progress |
start/stop operation in progress | |
virtual streaming device interface class
In | case of an error returned by the underlaying API the device class throws a dx::exception. |
|
inherited |
|
inline |
the virtual stream device class constructor
|
inline |
|
inlineoverride |
|
inline |
|
inline |
|
inline |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
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, stream_t >, dx::usb::pipe< device_t >, dx::usb::pipe< device_t >, dx::proxy::device, dx::proxy::device, dx::map::driver< device >, and dx::map::driver< device_t >.
|
inlineoverridenoexceptinherited |
|
inlineoverridevirtualnoexcept |
notification exception handler
Reimplemented from dx::device< std::string >.
|
inlinevirtual |
|
inlineprotectedvirtualinherited |
|
inlineoverridevirtualnoexcept |
log object class information
Reimplemented from dx::stream::device< dx::stream::control< dx::device< std::string > >, desc_t, stream_t >.
|
inlinevirtualinherited |
<
|
inlinevirtualinherited |
|
inlineoverridevirtual |
|
inlinevirtualinherited |
launch notification: object mounted and ready to use
Reimplemented in dx::stream::stream< device< desc_t, pipe >, dx::circular, usb::pipe< device< desc_t, pipe > > >, dx::stream::stream< device_t, dx::circular, usb::pipe< device_t > >, dx::usb::stream::_device< desc_t, stream_t >, dx::virtuel::driver< device_t >, dx::coreaudio::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 >.
|
inlinevirtualnoexceptinherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
obtain persistent number of rx safety offset ticks - defaults to stream desc config setting
|
inlinevirtualinherited |
set persistent number of rx/tx safety offset ticks
|
inlinevirtual |
Reimplemented from dx::stream::device< dx::stream::control< dx::device< std::string > >, desc_t, stream_t >.
|
inlinevirtualinherited |
|
inlinevirtualinherited |
result indicates if start changed the state.
|
inlinevirtualnoexceptinherited |
result indicates the amount of stopped start references
|
inlinevirtualinherited |
obtain persistent number of ticks per sync cycle - defaults to sync_cycle.hw_min_ticks with an absolute minimum of 2 ticks
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inherited |
|
inherited |
|
inherited |
struct { ... } dx::stream::device< dx::stream::control< dx::device< std::string > > , desc_t, stream_t >::hw |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
persistent UID (i.e. serial number)
|
inherited |
persistent universal UID
|
inherited |
|
protectedinherited |
start/stop operation in progress
|
inherited |
|
inherited |
|
inherited |
(c) copyright 2009 dynamic acoustics e.U. | generated on Tue Mar 11 2025 |