dxd - dynax driver framework 2.6.0d173
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::device< id_t, preference_t > Class Template Reference

abstract commom base device interface class More...

#include <dx_device.h>

+ Inheritance diagram for dx::device< id_t, preference_t >:
+ Collaboration diagram for dx::device< id_t, preference_t >:

Classes

class  client_map
 

Public Member Functions

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.
 
 device (decltype(driver)&driver, const id_t &id)
 the device class constructor
 
 device (decltype(driver)&driver, const id_t &id, preference_t &&preference)
 
void exception (const dx::exception &exception, bool filtered=false) noexcept override
 notification exception handler
 
void info (std::ostream &os) noexcept override
 log object class information
 
virtual void launch ()
 launch notification: object mounted and ready to use
 

Public Attributes

dx::driver< decltype(id), preference_t > & driver
 
const id_t id
 
bool launched {}
 
preference_t preference
 
std::string puid
 persistent UID - system unique - could change with location
 
std::string puuid
 persistent universal UID - universally unique ID (i.e. serial number)
 

Detailed Description

template<typename id_t, typename preference_t = dx::preference>
class dx::device< id_t, preference_t >

abstract commom base device interface class

Constructor & Destructor Documentation

◆ device() [1/2]

template<typename id_t , typename preference_t = dx::preference>
dx::device< id_t, preference_t >::device ( decltype(driver)& driver,
const id_t & id )
inline

the device class constructor

◆ device() [2/2]

template<typename id_t , typename preference_t = dx::preference>
dx::device< id_t, preference_t >::device ( decltype(driver)& driver,
const id_t & id,
preference_t && preference )
inline

Member Function Documentation

◆ conclude()

virtual void dx::object::conclude ( )
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, preference_t, stream_t >, dx::usb::pipe< device_t >, dx::virtuel::stream::_device< desc_t, preference_t, stream_t >, dx::coreaudio::stream::device< desc_t, preference_t, stream_t >, dx::proxy::device< dx::preference >, dx::proxy::device<>, dx::proxy::device< preference_t >, dx::map::driver< device<> >, and dx::map::driver< device_t >.

+ Here is the caller graph for this function:

◆ exception()

template<typename id_t , typename preference_t = dx::preference>
void dx::device< id_t, preference_t >::exception ( const dx::exception & exception,
bool filtered = false )
inlineoverridevirtualnoexcept

notification exception handler

Implements dx::object.

Reimplemented in dx::virtuel::stream::_device< desc_t, preference_t, stream_t >, dx::usb::platform::device< preference_t >, dx::asio::client::_device< desc_t, preference_t, stream_t >, dx::proxy::device<>, and dx::proxy::device< preference_t >.

+ Here is the call graph for this function:

◆ info()

◆ launch()

Member Data Documentation

◆ driver

template<typename id_t , typename preference_t = dx::preference>
dx::driver<decltype(id), preference_t>& dx::device< id_t, preference_t >::driver

◆ id

template<typename id_t , typename preference_t = dx::preference>
const id_t dx::device< id_t, preference_t >::id

◆ launched

bool dx::object::launched {}
inherited

◆ preference

template<typename id_t , typename preference_t = dx::preference>
preference_t dx::device< id_t, preference_t >::preference

◆ puid

template<typename id_t , typename preference_t = dx::preference>
std::string dx::device< id_t, preference_t >::puid

persistent UID - system unique - could change with location

◆ puuid

template<typename id_t , typename preference_t = dx::preference>
std::string dx::device< id_t, preference_t >::puuid

persistent universal UID - universally unique ID (i.e. serial number)


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

(c) copyright 2009 dynamic acoustics e.U. generated on Thu Nov 13 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.