dxd - dynax driver framework 2.1.0d71
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::cf::dictionary<::CFDictionaryRef, cf_object_t > Class Template Reference

#include <dx_mach.h>

+ Inheritance diagram for dx::cf::dictionary<::CFDictionaryRef, cf_object_t >:
+ Collaboration diagram for dx::cf::dictionary<::CFDictionaryRef, cf_object_t >:

Public Types

typedef std::map<::CFStringRef, ::CFTypeRef, __string<::CFStringRef >::less > container
 

Public Member Functions

::CFDictionaryRef copy () const noexcept
 create immutable dictionary copy
 
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
 dictionary (::CFDictionaryRef cf_dictionary, ::CFStringRef key=nullptr)
 
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
 dictionary (::CFStringRef key, ::CFTypeRef properties, ::CFDictionaryKeyCallBacks *key_callbacks=nullptr, ::CFDictionaryValueCallBacks *value_callbacks=nullptr)
 
template<typename value_t , typename = enable_if_convertible<value_t>>
 dictionary (::CFStringRef key, value_t value)
 
 dictionary (const dictionary<::CFDictionaryRef > &copy)
 create a dictionary copy The keys and values from the dictionary are copied as pointers into the new dictionary. However, the keys and values are also retained by the new dictionary. The count of the new dictionary is the same as the count of cf_dictionary. The new dictionary uses the same callbacks as cf_dictionary.
 
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
 dictionary (const std::map<::CFStringRef, ::CFTypeRef > &key_value_pairs, ::CFDictionaryKeyCallBacks *key_callbacks=nullptr, ::CFDictionaryValueCallBacks *value_callbacks=nullptr)
 
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
 dictionary (const std::map<::CFStringRef, cf::type<> > &key_value_pairs, ::CFDictionaryKeyCallBacks *key_callbacks=nullptr, ::CFDictionaryValueCallBacks *value_callbacks=nullptr)
 
template<typename key_t , typename = enable_if_convertible<key_t>>
 dictionary (key_t key, ::CFTypeRef properties)
 
template<typename key_t , typename value_t , typename = enable_if_convertible<key_t>, typename = enable_if_convertible<value_t>>
 dictionary (key_t key, value_t value)
 
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
 
referenceinitialize (cf_object_t cf_object, bool retain=true)
 
 operator bool () const noexcept
 
 operator cf_object_t () const noexcept
 
 operator container () const try
 
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <!std::is_same_v<petty_t, ::CFTypeRef>>>
 operator type<> () const noexcept
 
template<typename value_t , typename = std::enable_if_t< is_convertible<value_t>() || is_compatible<value_t>(), value_t>>
 operator value_t () const
 
bool operator!= (cf_object_t cf_object) const noexcept
 
::CFTypeRef operator() (::CFTypeRef dflt) const noexcept
 
template<typename value_t , typename = enable_if_convertible<value_t>>
value_t operator() (const value_t &dflt) const noexcept
 
template<typename value_t , typename = enable_if_convertible<value_t>>
::CFTypeRef operator() (const value_t &dflt) const noexcept
 
 operator::CFTypeID () const noexcept
 
 operator::CFTypeRef () const
 
bool operator== (::CFDictionaryRef dictionary) const noexcept
 
bool operator== (cf_object_t cf_object) const noexcept
 
bool operator== (const self &dictionary) const noexcept
 
referencerelease () noexcept
 
referenceretain () noexcept
 

Static Public Member Functions

::CFTypeID id () noexcept
 

Public Attributes

::CFStringRef cf_type_desc = nullptr
 
::CFStringRef cf_type_id = nullptr
 

Protected Attributes

cf_object_t cf_object = nullptr
 
reference<::CFStringRef > key
 

Member Typedef Documentation

◆ container

template<typename cf_object_t >
typedef std::map<::CFStringRef, ::CFTypeRef, __string<::CFStringRef>::less> dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::container

Constructor & Destructor Documentation

◆ dictionary() [1/8]

template<typename cf_object_t >
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( const dictionary<::CFDictionaryRef > & copy)
inline

create a dictionary copy The keys and values from the dictionary are copied as pointers into the new dictionary. However, the keys and values are also retained by the new dictionary. The count of the new dictionary is the same as the count of cf_dictionary. The new dictionary uses the same callbacks as cf_dictionary.

https://developer.apple.com/documentation/corefoundation/1516796-cfdictionarycreatecopy?language=objc

◆ dictionary() [2/8]

template<typename cf_object_t >
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( ::CFDictionaryRef cf_dictionary,
::CFStringRef key = nullptr )
inline

◆ dictionary() [3/8]

template<typename cf_object_t >
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( ::CFStringRef key,
::CFTypeRef properties,
::CFDictionaryKeyCallBacks * key_callbacks = nullptr,
::CFDictionaryValueCallBacks * value_callbacks = nullptr )
inline

◆ dictionary() [4/8]

template<typename cf_object_t >
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( const std::map<::CFStringRef, ::CFTypeRef > & key_value_pairs,
::CFDictionaryKeyCallBacks * key_callbacks = nullptr,
::CFDictionaryValueCallBacks * value_callbacks = nullptr )
inline

◆ dictionary() [5/8]

template<typename cf_object_t >
template<typename petty_t = cf_object_t, typename = typename std::enable_if_t <std::is_same_v<petty_t, ::CFDictionaryRef>>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( const std::map<::CFStringRef, cf::type<> > & key_value_pairs,
::CFDictionaryKeyCallBacks * key_callbacks = nullptr,
::CFDictionaryValueCallBacks * value_callbacks = nullptr )
inline

◆ dictionary() [6/8]

template<typename cf_object_t >
template<typename key_t , typename = enable_if_convertible<key_t>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( key_t key,
::CFTypeRef properties )
inline

◆ dictionary() [7/8]

template<typename cf_object_t >
template<typename value_t , typename = enable_if_convertible<value_t>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( ::CFStringRef key,
value_t value )
inline

◆ dictionary() [8/8]

template<typename cf_object_t >
template<typename key_t , typename value_t , typename = enable_if_convertible<key_t>, typename = enable_if_convertible<value_t>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::dictionary ( key_t key,
value_t value )
inline

Member Function Documentation

◆ copy()

template<typename cf_object_t >
::CFDictionaryRef dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::copy ( ) const
inlinenoexcept

create immutable dictionary copy

◆ 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:

◆ 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 container()

template<typename cf_object_t >
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator container ( ) const
inline

◆ operator type<>()

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 type<> ( ) const
noexceptinherited

◆ operator value_t()

template<typename cf_object_t >
template<typename value_t , typename = std::enable_if_t< is_convertible<value_t>() || is_compatible<value_t>(), value_t>>
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator value_t ( ) const
inline

◆ operator!=()

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

◆ operator()() [1/3]

template<typename cf_object_t >
::CFTypeRef dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator() ( ::CFTypeRef dflt) const
inlinenoexcept

◆ operator()() [2/3]

template<typename cf_object_t >
template<typename value_t , typename = enable_if_convertible<value_t>>
value_t dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator() ( const value_t & dflt) const
inlinenoexcept

◆ operator()() [3/3]

template<typename cf_object_t >
template<typename value_t , typename = enable_if_convertible<value_t>>
::CFTypeRef dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator() ( const value_t & dflt) const
inlinenoexcept

◆ operator::CFTypeID()

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

◆ operator::CFTypeRef()

template<typename cf_object_t >
dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator::CFTypeRef ( ) const
inline

◆ operator==() [1/3]

template<typename cf_object_t >
bool dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator== ( ::CFDictionaryRef dictionary) const
inlinenoexcept

◆ operator==() [2/3]

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

◆ operator==() [3/3]

template<typename cf_object_t >
bool dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::operator== ( const self & dictionary) const
inlinenoexcept

◆ 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

◆ key

template<typename cf_object_t >
reference<::CFStringRef> dx::cf::dictionary<::CFDictionaryRef, cf_object_t >::key
protected

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

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