|
dxd - dynax driver framework 2.6.0d170
cross platform open source driver development framework
|
#include <dx_test.h>
Inheritance diagram for dx::test::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >:
Collaboration diagram for dx::test::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >:Classes | |
| class | clog |
| struct | match_helper |
| struct | match_helper< std::vector< std::string > > |
| struct | parameter |
Public Types | |
| typedef std::deque< std::string > | args |
| typedef device_t::desc_t | desc |
| typedef decltype(matching_ids) | match |
| typedef decltype(matching_ids) | match |
Public Member Functions | |
| void | add (const device_id_t &device_id) override try |
| dx_catchall_rethrow() using super void | add (const std::string &, const typename device_t::desc_t &) |
| void | add (const std::string &, const typename device_t::desc_t &) |
| dx::test::parser::dictionary std::map bind help or detailed help on specific | arguments (s)" |
| virtual bool | boot () try |
| virtual void | detach () noexcept |
| driver (const typename super::match &match, const char *id, std::map< std::deque< std::string >, dispatch > dictionary={}) | |
| dx_catchall_rethrow () virtual operator bool() const noexcept | |
| void | exception (const class exception &exception, bool filtered=false) noexcept override try |
| notification exception handler | |
| virtual void | exception (const exception &exception, bool filtered=false) noexcept=0 |
| notification exception handler | |
| virtual void | free () noexcept |
| void | halt () noexcept override |
| stop streaming engine | |
| virtual void | help (args &args) |
| virtual void | help_head () |
| virtual void | help_listparameter (const std::map< std::deque< std::string >, dispatch > &dictionary) const |
| virtual void | help_subparameter (const std::map< std::deque< std::string >, dispatch > &dictionary) const |
| void | info (std::ostream &os) noexcept override try |
| log object class information | |
| template<unsigned int max_channels> | |
| void | initialize (uint32_t iosize, const uint64_t(&channel_map)[2][(max_channels+63)/64]) try |
| void | launch () override try |
| launch notification: object mounted and ready to use | |
| virtual void | launch () try |
| launch notification: object mounted and ready to use | |
| virtual void | operator<< (args &args) try |
| virtual void | operator<< (const args &args) |
| virtual void | parse_subparameter (const std::map< std::deque< std::string >, dispatch > &dictionary, args &args) const |
| virtual void | quiet (const args &={}) noexcept |
| dx_catchall_rethrow() using super void | remove (const std::string &) |
| void | run () override try |
| start streaming engine | |
| uint32_t | samplerate () const try |
| void | samplerate (uint32_t samplerate) try |
| virtual bool | shutdown () try |
| client driver::shutdown/boot(): override to shutdown/boot host driver | |
| virtual void | version (const args &={}) noexcept |
Public Attributes | |
| class redirect::indent::streambuf dx::test::driver::clog | cerr |
| cf::type< const char * > | connection_id = ::IOObjectCopyBundleIdentifierForClass(cf::type<const char*>{this->product_id}.retain()) |
| class redirect::indent::streambuf dx::test::driver::clog | cout |
| T | elements |
| STL member. | |
| dx::test::parser::dictionary | h |
| dx::test::parser::dictionary | help |
| K | keys |
| STL member. | |
| bool | launched {} |
| log | log |
| const char * | product_id |
| io::registry | registry |
| std::deque< setup > | setup |
| dx::test::parser::dictionary std::map bind help or detailed help on specific | true |
| uint32_t | version |
Static Public Attributes | |
| static constexpr auto | connection_id = class_name |
Protected Types | |
| typedef decltype(device_t::id) | device_id_t |
Protected Member Functions | |
| dx_catchall_handler(this,) using super void | arrived () override try |
| notify device arrivals completed stub | |
| virtual void | arrived (device_t &) |
| notify specific device arrival stub | |
| template<typename data_t > | |
| void | buffer (size_t size=0x1000, uint32_t rx=1, uint32_t tx=1, const std::chrono::high_resolution_clock::duration &duration=3s) const |
| void | buffer_header () const |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| catch (...) | |
| 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 dx::exception &__dx_exception) | |
| 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 dx::exception &__dx_exception) | |
| 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 dx::exception &__dx_exception) | |
| 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 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) | |
| catch (const std::exception &__std_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) | |
| catch (const std::exception &__std_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) | |
| catch (const std::exception &__std_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) | |
| catch (const std::exception &__std_exception) | |
| catch (const std::exception &__std_exception) | |
| catch (const std::exception &__std_exception) | |
| catch (const std::exception &__std_exception) | |
| void | clear () noexcept try |
| replaces std::map::clear to call virtual notification methods | |
| void | clock_monitor (device_t &device, std::chrono::high_resolution_clock::duration duration) try |
| void | clocksource (const args &args={}) try |
| void | conclude () noexcept override try |
| 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. | |
| void | device_arrival_removal (const args &={}) try |
| void | device_reset (const args &={}) try |
| dx_catchall_handler (this,) virtual void operator<<(std | |
| restores device settings | |
| void | enumerate_os_audio (const args &args={}) try |
| void | filter (const args &cargs={}) try |
| bool | head () const noexcept override |
| void | help_scope () override |
| void | iosize (const args &args) try |
| set/get I/O streaming block size | |
| void | list (const args &={}) |
| void | loglevel (args &args) try |
| void | meta_buffer (size_t size, uint32_t rx, uint32_t tx, const std::chrono::high_resolution_clock::duration &duration) const |
| void | notify () noexcept override |
| virtual void | notify (uint32_t) noexcept |
| notify sample rate change from device | |
| virtual void | operator>> (std::ostream &ostream) const |
| saves device tree | |
| virtual void | overload () noexcept |
| void | process (int64_t) noexcept override |
| void | remove (const device_id_t &device_id) override try |
| finds and removes a device from the device list | |
| void | removed (device_t &device) noexcept override |
| notify specific device removal stub | |
| void | safety_offset (args &args) try |
| set/get streaming safety offset | |
| void | samplerate (const args &args={}) try |
| void | streaming_generator (args &args) try |
| void | streaming_monitor (const args &args) try |
| void | streaming_reset (const args &={}) try |
| void | sync (const std::chrono::high_resolution_clock::time_point &now) override try |
| void | sync_reference (const args &args) try |
| set/get I/O streaming block size | |
| void | unittest (const args &args) try |
| void | unittest_align (const args &={}) try |
| void | unittest_buffer (const args &args={}) try |
| void | unittest_format (const args &={}) try |
| void | unittest_mask (args &args) try |
| void | unittest_preference (const args &={}) try |
| void | unittest_preference_erase (const decltype(device_t::preference)&preferences, uint32_t &leaves) try |
| void | unittest_preference_write (const decltype(device_t::preference)&preference, const std::chrono::high_resolution_clock::time_point &timeout, uint32_t &leaves) try |
| void | unittest_stream_duration (args &args) try |
| void | update () noexcept try |
Static Protected Member Functions | |
| static void | abort (int) noexcept |
| static void | sig (int) noexcept |
Protected Attributes | ||
| struct { | ||
| circular_t * circular [direction::directions] | ||
| force_read force_read | ||
| force_write force_write | ||
| struct { | ||
| struct { | ||
| uint32_t interval | ||
| clock resolution: HW stream frame size in samples More... | ||
| uint32_t linesize | ||
| uint32_t safety_offset | ||
| } io [direction::directions] | ||
| direction::direction reference | ||
| uint32_t samplerate | ||
| int64_t trigger | ||
| resync condition More... | ||
| } sync | ||
| } | cache | |
| std::shared_ptr< device_t > | device | |
| uint32_t | dropout = 0 | |
| uint64_t | frame = 0 | |
| std::deque< typename parameter::generator > | generator | |
| bool | hw_clock = false | |
| io_t ** | io [direction::directions][2] {} | |
| uint32_t | iosize = 0 | |
| bool | kernel_streaming = false | |
| std::deque< typename parameter::mask > | loopback | |
| dx_catchall_handler(this,) public typedef std::map< device_id_t, std::shared_ptr< device_t > > | map | |
| std::vector<::GUID > | matching_ids | |
| dx::stream::clock::monitor * | monitor = nullptr | |
| io[directions][double buffer][channel][sample] | ||
| struct dx::proxy::driver::notification | notification | |
| struct dx::test::driver::parameter | parameter | |
| std::deque< typename parameter::mask > | pattern | |
| std::shared_ptr< pin_t > | pin [direction::directions] | |
| uint64_t | tick = 0 | |
| struct { | ||
| uint64_t mask = ULLONG_MAX | ||
| std::chrono::high_resolution_clock::duration stream_duration = 0s | ||
| } | unit_test | |
Friends | |
| class | surprise< driver > |
|
inherited |
|
inherited |
|
protectedinherited |
|
inherited |
|
inherited |
|
inline |
|
inlinestaticprotectednoexcept |
Here is the caller graph for this function:
|
inlineoverridevirtualinherited |
Reimplemented from dx::map::driver< device_t >.
|
inlineinherited |
Here is the caller graph for this function:
|
inlineinherited |
|
inherited |
|
inlineoverrideprotectedvirtualinherited |
notify device arrivals completed stub
pin creation exception caught here to allow device inspection even if streaming is not possible - most likely due to exclusive access.
Reimplemented from dx::map::driver< device_t >.
Here is the call graph for this function:
|
inlineprotectedvirtualinherited |
notify specific device arrival stub
Reimplemented in dx::coremidi::server::plugin< stream_pin_t, device_t, driver_t >, dx::coreaudio::driver< device_t >, and dx::coreaudio::server::plugin< pin_t, device_t, driver_t >.
|
inlinevirtualinherited |
|
inlineprotected |
Here is the call graph for this function:
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotectednoexceptinherited |
replaces std::map::clear to call virtual notification methods
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
|
inlineoverrideprotectedvirtualnoexceptinherited |
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 from dx::object.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinevirtualnoexceptinherited |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
|
inlineprotected |
|
inlineprotectedinherited |
restores device settings
|
inlinenoexceptinherited |
Here is the caller graph for this function:
|
inlineprotected |
|
inlineoverridenoexceptinherited |
notification exception handler
|
pure virtualnoexceptinherited |
notification exception handler
Implemented in dx::device< dx::guid >, dx::device< std::string >, dx::device<::AudioObjectID >, dx::device<::io_service_t >, dx::device<::MIDIDeviceRef >, dx::device< id_t >, dx::stream::pin< device_t, _circular_t >, dx::virtuel::stream::_device< desc_t, preference_t, stream_t >, dx::usb::platform::device, dx::asio::client::_device< desc_t, preference_t, stream_t >, and dx::proxy::device.
Here is the caller graph for this function:
|
inlineprotected |
|
inlinevirtualnoexceptinherited |
Here is the caller graph for this function:
|
inlineoverridenoexceptinherited |
stop streaming engine
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineoverrideprotectedvirtualnoexcept |
Reimplemented from dx::test::parser.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlineoverrideprotectedvirtual |
Reimplemented from dx::test::parser.
|
inlinevirtualinherited |
|
inlineoverridevirtualnoexcept |
log object class information
Reimplemented from dx::stream::engine< device_t, pin_t, driver_t, io_t, circular_t >.
Reimplemented in dx::test::usb::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >.
Here is the call graph for this function:
|
inlineinherited |
Here is the call graph for this function:
|
inlineprotected |
set/get I/O streaming block size
Here is the call graph for this function:
|
inlineoverridevirtualinherited |
launch notification: object mounted and ready to use
Reimplemented from dx::map::driver< device_t >.
Here is the caller graph for this function:
|
inlinevirtualinherited |
launch notification: object mounted and ready to use
Reimplemented from dx::map::driver< device_t >.
Reimplemented in dx::coremidi::server::plugin< stream_pin_t, device_t, driver_t >.
Here is the call graph for this function:
|
inlineprotected |
|
inlineprotected |
Here is the call graph for this function:
|
inlineprotected |
Here is the call graph for this function:
|
inlineoverrideprotectednoexcept |
|
inlineprotectedvirtualnoexceptinherited |
notify sample rate change from device
Reimplemented in dx::asio::driver< device_t, pin_t, driver_t >.
Here is the caller graph for this function:
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlineprotectedvirtualinherited |
saves device tree
Here is the call graph for this function:
|
inlineprotectedvirtualnoexceptinherited |
Reimplemented in dx::asio::driver< device_t, pin_t, driver_t >.
Here is the caller graph for this function:
|
inlinevirtualinherited |
|
inlineoverrideprotectedvirtualnoexcept |
|
inlinevirtualnoexceptinherited |
|
inlineoverrideprotectedvirtualinherited |
finds and removes a device from the device list
| dx::exception |
Implements dx::driver< decltype(device_t::id)>.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
|
inlineoverrideprotectedvirtualnoexceptinherited |
notify specific device removal stub
Reimplemented from dx::map::driver< device_t >.
Here is the call graph for this function:
|
inlineoverrideinherited |
start streaming engine
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
set/get streaming safety offset
Here is the call graph for this function:
|
inlineinherited |
|
inlineprotected |
|
inlineinherited |
Here is the call graph for this function:
|
inlinevirtualinherited |
client driver::shutdown/boot(): override to shutdown/boot host driver
|
inlinestaticprotectednoexcept |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
Here is the call graph for this function:
|
inlineprotected |
Here is the call graph for this function:
|
inlineprotected |
|
inlineoverrideprotectedinherited |
Here is the call graph for this function:
|
inlineprotected |
set/get I/O streaming block size
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
Here is the call graph for this function:
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
Here is the call graph for this function:
|
inlineprotected |
|
inlineprotected |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprotected |
Here is the call graph for this function:
|
inlineprotectednoexceptinherited |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinevirtualnoexceptinherited |
|
friend |
| struct { ... } dx::stream::engine< device_t, pin_t, driver_t, io_t, circular_t >::cache |
| class redirect::indent::streambuf dx::test::driver::clog dx::test::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >::cerr |
|
inherited |
|
inherited |
|
staticconstexprinherited |
| class redirect::indent::streambuf dx::test::driver::clog dx::test::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >::cout |
|
protectedinherited |
|
protected |
|
inherited |
STL member.
|
inherited |
|
inherited |
|
protectedinherited |
|
protected |
|
inherited |
|
inherited |
|
protectedinherited |
|
inherited |
clock resolution: HW stream frame size in samples
| struct { ... } dx::stream::engine< device_t, pin_t, driver_t, io_t, circular_t >::io[direction::directions] |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
inherited |
STL member.
|
inherited |
|
inherited |
|
inherited |
|
protected |
|
protectedinherited |
| uint64_t dx::test::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >::mask = ULLONG_MAX |
|
protectedinherited |
|
protectedinherited |
io[directions][double buffer][channel][sample]
|
protectedinherited |
|
protected |
|
protected |
|
protectedinherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
| std::chrono::high_resolution_clock::duration dx::test::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >::stream_duration = 0s |
| struct { ... } dx::stream::engine< device_t, pin_t, driver_t, io_t, circular_t >::sync |
|
protected |
|
inherited |
resync condition
|
inherited |
| struct { ... } dx::test::driver< super_device_t, audio_pin_t, io_t, device_t, driver_t, engine_t >::unit_test |
|
inherited |
| (c) copyright 2009 dynamic acoustics e.U. | generated on Fri Oct 31 2025 |