dxd - dynax driver framework 2.1.0d58
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx_platform.h File Reference
#include <IOKit/IOKitLib.h>
#include <mach/mach.h>
#include <libkern/OSReturn.h>
#include <iostream>
+ Include dependency graph for macOS/dx_platform.h:

Classes

struct  dx::iobridge< type_t >
 ioctl bridge for 32/64bit user mode/kernel space big/little endian interface More...
 

Namespaces

namespace  dx
 dynax driver framework user mode interface namespace
 
namespace  dx::cf
 corefoundation namespace
 
namespace  dx::ioctl
 IOCTLs namespace.
 
namespace  dx::ioctl::stream
 stream IOCTLs namespace
 
namespace  dx::ioctl::stream::clock
 stream::clock domain IOCTLs namespace
 
namespace  dx::ioctl::usb
 USB IOCTLs namespace.
 

Macros

#define dx_enum_prefix   enum
 mock compiler idiosyncrasies
 
#define dx_packed   __attribute__((__packed__))
 
#define dx_packed_begin
 
#define dx_packed_end
 

Typedefs

typedef __scalar< int32_t, 24 > dx::int24
 
typedef void * dx::os_handle
 
typedef ::mach_error_t dx::os_result
 
typedef __scalar< uint32_t, 24 > dx::uint24
 

Enumerations

enum  : ::mach_error_t {
  dx::ok = kIOReturnSuccess , dx::not_initialized = kIOReturnNotReady , dx::not_implemented = kIOReturnUnsupported , dx::invalid = kIOReturnBadArgument ,
  dx::no_device = kIOReturnNoDevice , dx::device_error = kIOReturnDeviceError , dx::no_resources = kIOReturnNoResources , dx::invalid_data = kIOReturnNoSpace ,
  dx::version_mismatch = err_system(0x37)| err_sub(2)| 0x14 , dx::timeout = kIOReturnTimeout , dx::unknown = kIOReturnInvalid , dx::overflow = kIOReturnOverrun ,
  dx::driver_not_installed = kOSMetaClassNoKext , dx::internal_error = kIOReturnInternalError , dx::not_permitted = kIOReturnNotPermitted , dx::exclusive = kIOReturnExclusiveAccess ,
  dx::aborted = kIOReturnAborted , dx::busy = kIOReturnBusy
}
 
enum  dx::ioctl::ioctl { dx::ioctl::version = 'dver' , dx::ioctl::version = 'dver' }
 DX IOCTLs convetion char namespace indentifier: lower case user mode: upper case kernel. More...
 
enum  dx::ioctl::stream::ioctl {
  dx::ioctl::stream::enumerate = 'enum' , dx::ioctl::stream::open = 'open' , dx::ioctl::stream::close = 'clos' , dx::ioctl::stream::start = 'strt' ,
  dx::ioctl::stream::stop = 'stop' , dx::ioctl::stream::signal = 'sgnl' , dx::ioctl::stream::wait = 'wait' , dx::ioctl::stream::puid = 'puid' ,
  dx::ioctl::stream::channel = 'chnl' , dx::ioctl::stream::tx = 'sftx' , dx::ioctl::stream::rx = 'sfrx' , dx::ioctl::stream::clear = 'sclr' ,
  dx::ioctl::stream::abort = 'abrt' , dx::ioctl::stream::enumerate = 'enum' , dx::ioctl::stream::open = 'open' , dx::ioctl::stream::close = 'clos' ,
  dx::ioctl::stream::start = 'strt' , dx::ioctl::stream::stop = 'stop' , dx::ioctl::stream::signal = 'sgnl' , dx::ioctl::stream::puid = 'puid' ,
  dx::ioctl::stream::channel = 'chnl' , dx::ioctl::stream::position = DX_IOCTL('s',8) , dx::ioctl::stream::abort = 'abrt' , dx::ioctl::stream::clear = 'sclr' ,
  dx::ioctl::stream::rx = 'sfrx' , dx::ioctl::stream::tx = 'sftx'
}
 
enum  dx::ioctl::stream::clock::ioctl {
  dx::ioctl::stream::clock::start = 'clk+' , dx::ioctl::stream::clock::stop = 'clk-' , dx::ioctl::stream::clock::samplerate = 'clk|' , dx::ioctl::stream::clock::iosize = 'clk*' ,
  dx::ioctl::stream::clock::monitor = 'cmon' , dx::ioctl::stream::clock::start = 'clk+' , dx::ioctl::stream::clock::stop = 'clk-' , dx::ioctl::stream::clock::samplerate = 'clk|' ,
  dx::ioctl::stream::clock::iosize = 'clk*' , dx::ioctl::stream::clock::monitor = 'cmon'
}
 
enum  dx::ioctl::usb::ioctl {
  dx::ioctl::usb::request = 'durq' , dx::ioctl::usb::descriptor = 'dudc' , dx::ioctl::usb::string = 'dust' , dx::ioctl::usb::configuration = 'ducf' ,
  dx::ioctl::usb::clear = 'ducr' , dx::ioctl::usb::request = 'durq' , dx::ioctl::usb::descriptor = 'dudc' , dx::ioctl::usb::string = 'dust' ,
  dx::ioctl::usb::configuration = 'ducf' , dx::ioctl::usb::clear = 'ducr'
}
 
enum  dx::scope { dx::kernel , dx::user , dx::kernel , dx::user }
 template parameter defining origin of kernel object or destination of mapping More...
 

Functions

template<typename type_t , int resolution>
class dx::__attribute__ ((__packed__)) __scalar
 
std::string dx::cf::describe (os_result result) noexcept
 
std::string dx::describe (os_result result) noexcept
 
bool dx::os_error (os_result result) noexcept
 
inline ::CFStringRef dx::os_string (const char *string) noexcept
 

Macro Definition Documentation

◆ dx_enum_prefix

#define dx_enum_prefix   enum

mock compiler idiosyncrasies

◆ dx_packed

#define dx_packed   __attribute__((__packed__))

◆ dx_packed_begin

#define dx_packed_begin

◆ dx_packed_end

#define dx_packed_end

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