dxd - dynax driver framework 2.6.0d205
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::stream::control< object_t > Class Template Reference

#include <dx_stream_control.h>

Inheritance diagram for dx::stream::control< object_t >:
Collaboration diagram for dx::stream::control< object_t >:

Classes

class  pause

Public Member Functions

 dx_catchall_handler (this,) void conclude() noexcept override
void info (std::ostream &os) noexcept override try
virtual bool start (uint64_t=0, unsigned int starting=1)
virtual unsigned int stop (bool force=false) noexcept
 ~control () override

Public Attributes

std::deque< std::function< void(control &)> > notify
std::atomic< unsigned int > started {}

Protected Member Functions

virtual void flush ()
virtual void halt ()

Protected Attributes

std::recursive_mutex start_stop_in_progress
 start/stop operation in progress

Friends

class pause

Constructor & Destructor Documentation

◆ ~control()

template<typename object_t>
dx::stream::control< object_t >::~control ( )
inlineoverride

Member Function Documentation

◆ dx_catchall_handler()

template<typename object_t>
dx::stream::control< object_t >::dx_catchall_handler ( this )
inlineoverridenoexcept

◆ flush()

template<typename object_t>
virtual void dx::stream::control< object_t >::flush ( )
inlineprotectedvirtual

◆ halt()

◆ info()

template<typename object_t>
void dx::stream::control< object_t >::info ( std::ostream & os)
inlineoverridenoexcept

Reimplemented in dx::stream::device< dx::stream::control< dx::device< dx::guid, dx::preference > >, desc, dx::stream::stream< device< desc, dx::preference, dx::stream::stream > > >, dx::stream::device< dx::stream::control< dx::device< std::string, dx::preference > >, desc, dx::stream::shared::stream< device< desc, dx::preference, dx::stream::shared::stream > > >, 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 > > >, dx::stream::device< dx::stream::control< dx::device<::AudioObjectID, cf::preference > >, dx::virtuel::stream::desc, stream< device< dx::virtuel::stream::desc, cf::preference, stream > > >, dx::stream::device< dx::stream::control< dx::device<::MIDIDeviceRef, cf::preference > >, desc, stream< device< desc, cf::preference, stream > > >, dx::stream::device< dx::stream::control< dx::proxy::device< dx::preference > >, dx::stream::desc<>, stream< device< dx::stream::desc<>, dx::preference, stream > > >, dx::stream::device< dx::stream::control< usb::device< dx::preference > >, desc_t, pipe< device< desc_t, dx::preference, pipe > > >, dx::stream::pin< device_t, _circular_t >, dx::stream::stream< device_t, dx::circular, usb::pipe< device_t > >, dx::usb::pipe< device_t >, dx::usb::pipe< device_t >, dx::usb::stream::_device< desc_t, dx::preference, pipe< device< desc_t, dx::preference, pipe > > >, dx::usb::stream::pipe< device_t, circular_t, stream_t >, and dx::virtuel::stream::_device< desc, dx::preference, dx::stream::shared::stream< device< desc, dx::preference, dx::stream::shared::stream > > >.

Here is the caller graph for this function:

◆ start()

◆ stop()

template<typename object_t>
virtual unsigned int dx::stream::control< object_t >::stop ( bool force = false)
inlinevirtualnoexcept

result indicates the amount of stopped start references

◆ pause

template<typename object_t>
friend class pause
friend

Member Data Documentation

◆ notify

template<typename object_t>
std::deque<std::function<void(control&)> > dx::stream::control< object_t >::notify

◆ start_stop_in_progress

template<typename object_t>
std::recursive_mutex dx::stream::control< object_t >::start_stop_in_progress
protected

start/stop operation in progress

◆ started

template<typename object_t>
std::atomic<unsigned int> dx::stream::control< object_t >::started {}

The documentation for this class was generated from the following file:

(c) copyright 2009 dynamic acoustics e.U. generated on

a closed source license may be obtained by requesting a written permission from dynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.