dxd - dynax driver framework 2.1.0d49
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::coreaudio::driver< device_t > Class Template Reference

#include <dx_coreaudio.h>

+ Inheritance diagram for dx::coreaudio::driver< device_t >:
+ Collaboration diagram for dx::coreaudio::driver< device_t >:

Public Types

typedef decltype(matching_dictionaries) match
 

Public Member Functions

 __dx_cf_string_comparator (!=)
 
 __dx_cf_string_comparator (<)
 
 __dx_cf_string_comparator (<=)
 
 __dx_cf_string_comparator (==)
 
 __dx_cf_string_comparator (>)
 
 __dx_cf_string_comparator (>=)
 
virtual void conclude () noexcept
 
::CFStringRef copy () const
 
 driver (const match &matching_dictionaries, const char *id, dx::log log=dx::log{{ .bus={ .setup=log::level::error,.operation=log::level::error,},.interface={ .setup=log::level::error,.operation=log::level::error}}})
 the driver interface class constructor
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
CFTypeID id () noexcept
 
reference & initialize (cf_object_t cf_object, bool retain=true)
 
virtual void launch ()
 
 operator bool () const noexcept
 
 operator cf_object_t () const noexcept
 
 operator const char * () const
 
 operator double () const noexcept
 Skips whitespace; returns 0.0 on error.
 
 operator int32_t () const noexcept
 Skips whitespace; returns 0 on error, MAX or -MAX on overflow.
 
 operator std::string () const
 
bool operator!= (::CFStringRef value) const noexcept
 
bool operator!= (cf_object_t cf_object) const noexcept
 
::CFMutableStringRef operator+ (::CFStringRef value) const noexcept
 
::CFMutableStringRef operator+ (const char *value) const noexcept
 
 operator::CFDataRef () const noexcept
 
 operator::CFTypeID () const noexcept
 
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <!std::is_same_v<petty_t, ::CFTypeRef>>>
 operator::CFTypeRef () const noexcept
 
bool operator< (::CFStringRef value) const noexcept
 
bool operator<= (::CFStringRef value) const noexcept
 
bool operator== (::CFStringRef value) const noexcept
 
bool operator== (cf_object_t cf_object) const noexcept
 
bool operator> (::CFStringRef value) const noexcept
 
bool operator>= (::CFStringRef value) const noexcept
 
reference & release () noexcept
 
reference & retain () noexcept
 
virtual ~driver ()
 

Static Public Member Functions

::CFTypeID id () noexcept
 

Public Attributes

::CFStringRef cf_type_desc = nullptr
 
::CFStringRef cf_type_id = nullptr
 
elements
 STL member.
 
keys
 STL member.
 
bool launched = false
 
log log {}
 
cf::preference preference
 

Protected Attributes

cf_object_t cf_object = nullptr
 

Private Member Functions

 operator bool () const noexcept
 
dx_coreaudio_property_catchall_rethrow operator std::string () const
 

Member Typedef Documentation

◆ match

template<class device_t >
typedef decltype(matching_dictionaries) dx::coreaudio::driver< device_t >::match

Constructor & Destructor Documentation

◆ driver()

template<class device_t >
dx::coreaudio::driver< device_t >::driver ( const match & matching_dictionaries,
const char * id,
dx::log log = dx::log{{ .bus={ .setup= log::level::error, .operation= log::level::error,}, .interface={ .setup= log::level::error, .operation= log::level::error}}} )
inline

the driver interface class constructor

Todo
handle kext blocking https://developer.apple.com/library/content/technotes/tn2459/_index.html
Parameters
matching_dictionariesthe matching dictionaries identifying the driver interface
iddrivers bundle ID

◆ ~driver()

template<class device_t >
virtual dx::coreaudio::driver< device_t >::~driver ( )
inlinevirtual
+ Here is the call graph for this function:

Member Function Documentation

◆ __dx_cf_string_comparator() [1/6]

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::__dx_cf_string_comparator ( ! )
inherited

◆ __dx_cf_string_comparator() [2/6]

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::__dx_cf_string_comparator ( )
inherited

◆ __dx_cf_string_comparator() [3/6]

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::__dx_cf_string_comparator ( <= )
inherited

◆ __dx_cf_string_comparator() [4/6]

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::__dx_cf_string_comparator ( )
inherited

◆ __dx_cf_string_comparator() [5/6]

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::__dx_cf_string_comparator ( )
inherited

◆ __dx_cf_string_comparator() [6/6]

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::__dx_cf_string_comparator ( >= )
inherited

◆ conclude()

template<class device_t >
virtual void dx::coreaudio::driver< device_t >::conclude ( )
inlinevirtualnoexcept
+ Here is the caller graph for this function:

◆ copy()

template<typename cf_object_t >
::CFStringRef dx::cf::__string< cf_object_t >::copy ( ) const
inlineinherited

◆ id() [1/11]

template<typename cf_object_t >
::CFTypeID dx::cf::reference< cf_object_t >::id ( )
staticnoexceptinherited
+ Here is the caller graph for this function:

◆ id() [2/11]

CFTypeID dx::cf::reference<::CFDictionaryRef >::id ( )
inlinenoexceptinherited

◆ id() [3/11]

CFTypeID dx::cf::reference<::CFMutableDictionaryRef >::id ( )
inlinenoexceptinherited

◆ id() [4/11]

CFTypeID dx::cf::reference<::CFNumberRef >::id ( )
inlinenoexceptinherited

◆ id() [5/11]

CFTypeID dx::cf::reference<::CFStringRef >::id ( )
inlinenoexceptinherited

◆ id() [6/11]

CFTypeID dx::cf::reference<::CFArrayRef >::id ( )
inlinenoexceptinherited

◆ id() [7/11]

CFTypeID dx::cf::reference<::CFURLRef >::id ( )
inlinenoexceptinherited

◆ id() [8/11]

CFTypeID dx::cf::reference<::CFBundleRef >::id ( )
inlinenoexceptinherited

◆ id() [9/11]

CFTypeID dx::cf::reference<::CFDataRef >::id ( )
inlinenoexceptinherited

◆ id() [10/11]

CFTypeID dx::cf::reference<::CFUUIDRef >::id ( )
inlinenoexceptinherited

◆ id() [11/11]

CFTypeID dx::cf::reference<::SCPreferencesRef >::id ( )
inlinenoexceptinherited

◆ initialize()

template<typename cf_object_t >
reference & dx::cf::reference< cf_object_t >::initialize ( cf_object_t cf_object,
bool retain = true )
inlineinherited
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ launch()

template<class device_t >
virtual void dx::coreaudio::driver< device_t >::launch ( )
inlinevirtual

◆ operator bool()

template<typename cf_object_t >
dx::cf::reference< cf_object_t >::operator bool ( ) const
inlinenoexceptinherited

◆ operator cf_object_t()

template<typename cf_object_t >
dx::cf::reference< cf_object_t >::operator cf_object_t ( ) const
inlinenoexceptinherited

◆ operator const char *()

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::operator const char * ( ) const
inlineinherited

◆ operator double()

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::operator double ( ) const
inlinenoexceptinherited

Skips whitespace; returns 0.0 on error.

◆ operator int32_t()

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::operator int32_t ( ) const
inlinenoexceptinherited

Skips whitespace; returns 0 on error, MAX or -MAX on overflow.

◆ operator std::string()

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::operator std::string ( ) const
inlineinherited

◆ operator!=() [1/2]

template<typename cf_object_t >
bool dx::cf::__string< cf_object_t >::operator!= ( ::CFStringRef value) const
inlinenoexceptinherited

◆ operator!=() [2/2]

template<typename cf_object_t >
bool dx::cf::reference< cf_object_t >::operator!= ( cf_object_t cf_object) const
inlinenoexceptinherited

◆ operator+() [1/2]

template<typename cf_object_t >
::CFMutableStringRef dx::cf::__string< cf_object_t >::operator+ ( ::CFStringRef value) const
inlinenoexceptinherited

◆ operator+() [2/2]

template<typename cf_object_t >
::CFMutableStringRef dx::cf::__string< cf_object_t >::operator+ ( const char * value) const
inlinenoexceptinherited

◆ operator::CFDataRef()

template<typename cf_object_t >
dx::cf::__string< cf_object_t >::operator::CFDataRef ( ) const
inlinenoexceptinherited

◆ operator::CFTypeID()

template<typename cf_object_t >
dx::cf::reference< cf_object_t >::operator::CFTypeID ( ) const
inlinenoexceptinherited

◆ operator::CFTypeRef()

template<typename cf_object_t >
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <!std::is_same_v<petty_t, ::CFTypeRef>>>
dx::cf::reference< cf_object_t >::operator::CFTypeRef ( ) const
inlinenoexceptinherited

◆ operator<()

template<typename cf_object_t >
bool dx::cf::__string< cf_object_t >::operator< ( ::CFStringRef value) const
inlinenoexceptinherited

◆ operator<=()

template<typename cf_object_t >
bool dx::cf::__string< cf_object_t >::operator<= ( ::CFStringRef value) const
inlinenoexceptinherited

◆ operator==() [1/2]

template<typename cf_object_t >
bool dx::cf::__string< cf_object_t >::operator== ( ::CFStringRef value) const
inlinenoexceptinherited

◆ operator==() [2/2]

template<typename cf_object_t >
bool dx::cf::reference< cf_object_t >::operator== ( cf_object_t cf_object) const
inlinenoexceptinherited

◆ operator>()

template<typename cf_object_t >
bool dx::cf::__string< cf_object_t >::operator> ( ::CFStringRef value) const
inlinenoexceptinherited

◆ operator>=()

template<typename cf_object_t >
bool dx::cf::__string< cf_object_t >::operator>= ( ::CFStringRef value) const
inlinenoexceptinherited

◆ release()

template<typename cf_object_t >
reference & dx::cf::reference< cf_object_t >::release ( )
inlinenoexceptinherited
+ Here is the caller graph for this function:

◆ retain()

template<typename cf_object_t >
reference & dx::cf::reference< cf_object_t >::retain ( )
inlinenoexceptinherited
+ Here is the caller graph for this function:

Member Data Documentation

◆ cf_object

template<typename cf_object_t >
cf_object_t dx::cf::reference< cf_object_t >::cf_object = nullptr
protectedinherited

◆ cf_type_desc

template<typename cf_object_t >
::CFStringRef dx::cf::reference< cf_object_t >::cf_type_desc = nullptr
inherited

◆ cf_type_id

template<typename cf_object_t >
::CFStringRef dx::cf::reference< cf_object_t >::cf_type_id = nullptr
inherited

◆ elements

T std::map< K, T >::elements
inherited

STL member.

◆ keys

K std::map< K, T >::keys
inherited

STL member.

◆ launched

template<class device_t >
bool dx::coreaudio::driver< device_t >::launched = false

◆ log

template<class device_t >
log dx::coreaudio::driver< device_t >::log {}

◆ preference

template<class device_t >
cf::preference dx::coreaudio::driver< device_t >::preference

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

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