dxd - dynax driver framework 2.6.0d178
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::proxy Namespace Reference

OS proxy interface class. More...

Namespaces

namespace  stream
 stream interface
 

Classes

class  device
 OS proxy device interface class. More...
 
class  driver
 

Typedefs

template<typename type_t >
using enable_if_ptr = std::enable_if<std::is_pointer_v<type_t>, type_t>::type
 
template<typename type_t >
using enable_if_scalar = std::enable_if<std::is_scalar_v<type_t> && !std::is_pointer_v<type_t>, type_t>::type
 
template<typename type_t >
using hide_if_ptr = std::enable_if<!std::is_pointer_v<type_t>, type_t>::type
 OS proxy device interface class.
 
template<typename type_t >
using hide_if_scalar_or_ptr = std::enable_if<!(std::is_scalar_v<type_t> || std::is_pointer_v<type_t>), type_t>::type
 

Detailed Description

OS proxy interface class.

Typedef Documentation

◆ enable_if_ptr

template<typename type_t >
using dx::proxy::enable_if_ptr = std::enable_if<std::is_pointer_v<type_t>, type_t>::type

◆ enable_if_scalar

template<typename type_t >
using dx::proxy::enable_if_scalar = std::enable_if<std::is_scalar_v<type_t> && !std::is_pointer_v<type_t>, type_t>::type

◆ hide_if_ptr

template<typename type_t >
using dx::proxy::hide_if_ptr = std::enable_if<!std::is_pointer_v<type_t>, type_t>::type

OS proxy device interface class.

This is the OS proxy device interface class. This class is used for a platform independent way of accessing kernel/driverkit devices. The device class uses the driver interface helper class to construct the device object and to bind the device to the driver identified by the io_service.

example:

try() { // guard the block
// choose a driver
// enumerate devices
std::cout<< driver.size()<< " device(s) found:"<< std::endl;
// go thru all devices; you have to lock the driver if this multi-threaded
for (auto device: driver){
// return an int32_t from an IOCTL served by the driver
int32_t my_data= device.ioctl<int32_t>(kMyIoctl);
}
} cd_catchall()
abstract base driver interface class This is the abstract base interface to a driver.
Definition dx_driver.h:62
OS proxy device interface class.
Definition macOS/dx_proxy_device.h:137
size_t ioctl(unsigned int ioctl, const tx_t &tx, rx_t &rx) const
Definition windows/dx_proxy_device.h:147
Definition macOS/dx_proxy_driver.h:54
int int32_t
Definition wdk/dxd_platform.h:109
Exceptions
Incase of an error returned by the underlaying API the device class throws a dx::exception.

◆ hide_if_scalar_or_ptr

template<typename type_t >
using dx::proxy::hide_if_scalar_or_ptr = std::enable_if<!(std::is_scalar_v<type_t> || std::is_pointer_v<type_t>), type_t>::type

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