dxd - dynax driver framework 2.1.0d49
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t > Class Template Reference

#include <dx_stream_usb_device.h>

+ Inheritance diagram for dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >:
+ Collaboration diagram for dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >:

Public Types

typedef _circular_t circular_t
 
typedef _desc_t desc_t
 
typedef _device_t device_t
 

Public Member Functions

pinabort ()
 
template<unsigned int channels, typename channel_t >
pinattach (channel_t **io[2], uint64_t channel_map[(channels+63)/64])
 
pinclear ()
 
virtual float encoder (dx::stream::encoder::index::type type, int index) const
 
virtual bool encoder (dx::stream::encoder::index::type type, int index, float value)
 
pinflush () noexcept
 
 operator circular_t * () const noexcept
 
circular_toperator-> () const noexcept
 
 pin (device_t &device, const typename desc_t::stream::desc &stream_desc, const typename desc_t::stream::pin::desc &pin_desc)
 
pinreset ()
 
uint32_t samplerate () const
 
uint32_t samplerate (uint32_t samplerate)
 
pinsignal ()
 
virtual void start ()
 
virtual void stop (bool force=false) noexcept
 
pinwait ()
 
virtual ~pin () noexcept
 

Public Attributes

dx::stream::channel::controlcontrol = nullptr
 
pipe_t & stream
 

Protected Member Functions

virtual void received (os_result status, size_t size, int64_t timestamp)
 
virtual void transmitted (os_result status, size_t size, int64_t timestamp)
 

Protected Attributes

std::atomic< int32_tstarted {}
 

Member Typedef Documentation

◆ circular_t

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
typedef _circular_t dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::circular_t

◆ desc_t

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
typedef _desc_t dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::desc_t

◆ device_t

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
typedef _device_t dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::device_t

Constructor & Destructor Documentation

◆ pin()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::pin ( device_t & device,
const typename desc_t::stream::desc & stream_desc,
const typename desc_t::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::desc & pin_desc )
inline
Todo
pin::control: find descriptive, scoping name; evaluate presence in non-kernel interface

◆ ~pin()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
virtual dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::~pin ( )
inlinevirtualnoexcept

Member Function Documentation

◆ abort()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
pin & dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::abort ( )
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ attach()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
template<unsigned int channels, typename channel_t >
pin & dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::attach ( channel_t ** io[2],
uint64_t channel_map[(channels+63)/64] )
inline

◆ clear()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
pin & dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::clear ( )
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ encoder() [1/2]

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
virtual float dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::encoder ( dx::stream::encoder::index::type type,
int index ) const
inlinevirtual

◆ encoder() [2/2]

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
virtual bool dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::encoder ( dx::stream::encoder::index::type type,
int index,
float value )
inlinevirtual

◆ flush()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
pin & dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::flush ( )
inlinenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator circular_t *()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::operator circular_t * ( ) const
inlinenoexcept

◆ operator->()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
circular_t * dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::operator-> ( ) const
inlinenoexcept

◆ received()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
virtual void dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::received ( os_result status,
size_t size,
int64_t timestamp )
inlineprotectedvirtual

◆ reset()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
pin & dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::reset ( )
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ samplerate() [1/2]

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
uint32_t dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::samplerate ( ) const
inline

◆ samplerate() [2/2]

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
uint32_t dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::samplerate ( uint32_t samplerate)
inline

◆ signal()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
pin & dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::signal ( )
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ start()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
virtual void dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::start ( )
inlinevirtual

◆ stop()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
virtual void dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::stop ( bool force = false)
inlinevirtualnoexcept

◆ transmitted()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
virtual void dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::transmitted ( os_result status,
size_t size,
int64_t timestamp )
inlineprotectedvirtual

◆ wait()

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
pin & dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::wait ( )
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ control

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
dx::stream::channel::control* dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::control = nullptr

◆ started

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
std::atomic<int32_t> dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::started {}
protected

◆ stream

template<typename _desc_t , typename _circular_t , typename _device_t , typename pipe_t >
pipe_t& dx::usb::stream::pin< _desc_t, _circular_t, _device_t, pipe_t >::stream

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

(c) copyright 2009 dynamic acoustics e.U. generated on Wed Feb 28 2024

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.