dxd - dynax driver framework 2.2.0d91
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::stream::device< super_device_t, desc_t, stream_t > Class Template Reference

#include <dx_stream_device.h>

+ Inheritance diagram for dx::stream::device< super_device_t, desc_t, stream_t >:
+ Collaboration diagram for dx::stream::device< super_device_t, desc_t, stream_t >:

Classes

struct  property
 

Public Types

typedef desc_t desc
 

Public Member Functions

 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 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)
 
virtual uint32_t clocksource ()
 
virtual uint32_t clocksource (uint32_t clocksource) try
 
 device (decltype(super::driver)&driver, const decltype(super::id)&id, const desc_t &desc={})
 
void info (std::ostream &os) noexcept override try
 
virtual int32_t iosize () const try
 
virtual int32_t iosize (uint32_t iosize) try
 
virtual int32_t iosize (uint32_t iosize, dx::event< user > &hw_clock) try
 
virtual bool monitor () noexcept
 
template<typename monitor_t = dx::stream::clock::monitor>
monitor_t * monitor (bool force=false)
 
virtual devicereset ()
 
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
 
virtual uint32_t samplerate () const
 
virtual uint32_t samplerate (uint32_t samplerate) try
 
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
 

Public Attributes

struct { 
 
   dx::event< user > *   clock 
 
   std::atomic< size_t >   counter 
 
   uint32_t   iosize 
 
hw 
 
std::string puid
 persistent UID (i.e. serial number)
 
std::string puuid
 persistent universal UID
 
shared::memory< dx::stream::clock::monitorshared_monitor
 
std::map< decltype(desc_t::stream::target.idx()), std::weak_ptr< stream_t > > streams
 

Member Typedef Documentation

◆ desc

template<typename super_device_t , typename desc_t , typename stream_t >
typedef desc_t dx::stream::device< super_device_t, desc_t, stream_t >::desc

Constructor & Destructor Documentation

◆ device()

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::device ( decltype(super::driver)& driver,
const decltype(super::id)& id,
const desc_t & desc = {} )
inline

Member Function Documentation

◆ catch() [1/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [2/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [3/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [4/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [5/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [6/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [7/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [8/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [9/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [10/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( ...)
inline

◆ catch() [11/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [12/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [13/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [14/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [15/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [16/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [17/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [18/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [19/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [20/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const dx::exception & __dx_exception)
inline

◆ catch() [21/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [22/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [23/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [24/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [25/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [26/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [27/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [28/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [29/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ catch() [30/30]

template<typename super_device_t , typename desc_t , typename stream_t >
dx::stream::device< super_device_t, desc_t, stream_t >::catch ( const std::exception & __std_exception)
inline

◆ clocksource() [1/2]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual uint32_t dx::stream::device< super_device_t, desc_t, stream_t >::clocksource ( )
inlinevirtual

◆ clocksource() [2/2]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual uint32_t dx::stream::device< super_device_t, desc_t, stream_t >::clocksource ( uint32_t clocksource)
inlinevirtual

◆ info()

template<typename super_device_t , typename desc_t , typename stream_t >
void dx::stream::device< super_device_t, desc_t, stream_t >::info ( std::ostream & os)
inlineoverridenoexcept

Reimplemented in dx::proxy::stream::_device< desc_t, stream_t >, dx::usb::stream::_device< desc_t, stream_t >, dx::virtuel::stream::_device< desc_t, stream_t >, and dx::coreaudio::_device< desc_t, stream_t >.

+ Here is the call graph for this function:

◆ iosize() [1/3]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual int32_t dx::stream::device< super_device_t, desc_t, stream_t >::iosize ( ) const
inlinevirtual

<

Todo
stream::device calculate default iosize from desc
+ Here is the call graph for this function:

◆ iosize() [2/3]

◆ iosize() [3/3]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual int32_t dx::stream::device< super_device_t, desc_t, stream_t >::iosize ( uint32_t iosize,
dx::event< user > & hw_clock )
inlinevirtual

◆ monitor() [1/2]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual bool dx::stream::device< super_device_t, desc_t, stream_t >::monitor ( )
inlinevirtualnoexcept

Reimplemented in dx::proxy::stream::_device< dx::stream::desc<>, stream< device< dx::stream::desc<>, stream > > >, and dx::proxy::stream::_device< desc_t, stream_t >.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ monitor() [2/2]

template<typename super_device_t , typename desc_t , typename stream_t >
template<typename monitor_t = dx::stream::clock::monitor>
monitor_t * dx::stream::device< super_device_t, desc_t, stream_t >::monitor ( bool force = false)
inline
+ Here is the call graph for this function:

◆ reset()

template<typename super_device_t , typename desc_t , typename stream_t >
virtual device & dx::stream::device< super_device_t, desc_t, stream_t >::reset ( )
inlinevirtual
+ Here is the caller graph for this function:

◆ safety_offset() [1/2]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual uint32_t dx::stream::device< super_device_t, desc_t, stream_t >::safety_offset ( dx::stream::direction::direction direction) const
inlinevirtual

obtain persistent number of rx safety offset ticks - defaults to stream desc config setting

Reimplemented in dx::proxy::stream::_device< dx::stream::desc<>, stream< device< dx::stream::desc<>, stream > > >, and dx::proxy::stream::_device< desc_t, stream_t >.

◆ safety_offset() [2/2]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual uint32_t dx::stream::device< super_device_t, desc_t, stream_t >::safety_offset ( dx::stream::direction::direction direction,
uint32_t safety_offset )
inlinevirtual

set persistent number of rx/tx safety offset ticks

+ Here is the caller graph for this function:

◆ samplerate() [1/2]

◆ samplerate() [2/2]

◆ sync_cycle_ticks()

template<typename super_device_t , typename desc_t , typename stream_t >
virtual uint32_t dx::stream::device< super_device_t, desc_t, stream_t >::sync_cycle_ticks ( ) const
inlinevirtual

obtain persistent number of ticks per sync cycle - defaults to sync_cycle.hw_min_ticks with an absolute minimum of 2 ticks

◆ sync_reference() [1/2]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual int32_t dx::stream::device< super_device_t, desc_t, stream_t >::sync_reference ( ) const
inlinevirtual

◆ sync_reference() [2/2]

template<typename super_device_t , typename desc_t , typename stream_t >
virtual int32_t dx::stream::device< super_device_t, desc_t, stream_t >::sync_reference ( uint32_t sync_reference)
inlinevirtual

Member Data Documentation

◆ clock

template<typename super_device_t , typename desc_t , typename stream_t >
dx::event<user>* dx::stream::device< super_device_t, desc_t, stream_t >::clock

◆ counter

template<typename super_device_t , typename desc_t , typename stream_t >
std::atomic<size_t> dx::stream::device< super_device_t, desc_t, stream_t >::counter

◆ [struct]

struct { ... } dx::stream::device< super_device_t, desc_t, stream_t >::hw

◆ iosize

template<typename super_device_t , typename desc_t , typename stream_t >
uint32_t dx::stream::device< super_device_t, desc_t, stream_t >::iosize

◆ puid

template<typename super_device_t , typename desc_t , typename stream_t >
std::string dx::stream::device< super_device_t, desc_t, stream_t >::puid

persistent UID (i.e. serial number)

◆ puuid

template<typename super_device_t , typename desc_t , typename stream_t >
std::string dx::stream::device< super_device_t, desc_t, stream_t >::puuid

persistent universal UID

◆ shared_monitor

template<typename super_device_t , typename desc_t , typename stream_t >
shared::memory<dx::stream::clock::monitor> dx::stream::device< super_device_t, desc_t, stream_t >::shared_monitor

◆ streams

template<typename super_device_t , typename desc_t , typename stream_t >
std::map<decltype(desc_t::stream::target.idx()), std::weak_ptr<stream_t> > dx::stream::device< super_device_t, desc_t, stream_t >::streams

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

(c) copyright 2009 dynamic acoustics e.U. generated on Tue Mar 11 2025

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.