#include <mac_cfhelpers.h>
Reference for a CoreFoundation object which was created (and hence implicitely retained). The object will released when the CFStrongRef will be destructed.
Public Member Functions | |
CFStrongRef ()=default | |
MAXON_IMPLICIT | CFStrongRef (T *o) |
CFStrongRef (const CFStrongRef &src)=default | |
CFStrongRef (CFStrongRef &&src)=default | |
CFStrongRef & | operator= (T *src) |
CFStrongRef & | operator= (const CFStrongRef &src)=default |
CFStrongRef & | operator= (CFStrongRef &&src)=default |
CFStrongRef & | operator= (std::nullptr_t src) |
REF * | GetAddressOf () |
Public Member Functions inherited from BaseRef< std::remove_pointer< REF >::type, CoreFoundationCreatedPointerHandler > | |
BaseRef () | |
MAXON_IMPLICIT | BaseRef (std::nullptr_t)=delete |
MAXON_IMPLICIT | BaseRef (std::remove_pointer< REF >::type *o) |
BaseRef (ForwardResultPtr< PTR > o) | |
BaseRef (ResultPtr< std::remove_pointer< REF >::type > o, Int) | |
BaseRef (const BaseRef &src) | |
MAXON_IMPLICIT | BaseRef (const REF &src) |
MAXON_IMPLICIT | BaseRef (REF &src) |
BaseRef (BaseRef &&src) | |
MAXON_IMPLICIT | BaseRef (REF &&src) |
std::remove_pointer< REF >::type * | GetPointer () |
ConstReferencedType * | GetPointer () const |
std::remove_pointer< REF >::type * | operator-> () |
ConstReferencedType * | operator-> () const |
std::conditional< std::is_void< std::remove_pointer< REF >::type >::value, DeleteReturnType01, std::remove_pointer< REF >::type >::type & | operator* () |
std::conditional< std::is_void< ConstReferencedType >::value, DeleteReturnType01, std::remove_pointer< REF >::type >::type & | operator* () const |
operator std::remove_pointer< REF >::type * () | |
operator ConstReferencedType * () const | |
operator Bool () const | |
operator Bool () | |
const std::conditional< std::is_void< std::remove_pointer< REF >::type >::value, DeleteReturnType01, std::remove_pointer< REF >::type >::type & | operator[] (Int) const=delete |
ResultRef< typename std::remove_const< std::remove_pointer< REF >::type >::type > | MakeWritable (Bool resetOnError=true) |
std::conditional< std::is_void< std::remove_pointer< REF >::type >::value, DeleteReturnType01, std::remove_pointer< REF >::type >::type & | GetOrNull () const |
BaseRef & | operator= (std::remove_pointer< REF >::type *src) |
BaseRef & | operator= (std::nullptr_t src) |
BaseRef & | operator= (const BaseRef &src) |
BaseRef & | operator= (const REF &src) |
BaseRef & | operator= (REF &src) |
BaseRef & | operator= (BaseRef &&src) |
BaseRef & | operator= (REF &&src) |
~BaseRef () | |
Bool | operator== (const BaseRef &b) const |
Bool | operator== (const std::remove_pointer< REF >::type *b) const |
Bool | operator== (typename std::remove_const< std::remove_pointer< REF >::type >::type *b) const |
Bool | operator== (std::nullptr_t) const |
Bool | operator!= (const BaseRef &b) const |
Bool | operator!= (const std::remove_pointer< REF >::type *b) const |
Bool | operator!= (typename std::remove_const< std::remove_pointer< REF >::type >::type *b) const |
Bool | operator!= (std::nullptr_t) const |
Bool | operator< (const BaseRef &b) const |
MAXON_OPERATOR_INEQUALITY (BaseRef) | |
HashInt | GetHashCode () const |
UniqueHash | GetUniqueHashCode () const |
std::remove_pointer< REF >::type * | Disconnect () |
void | PrivateSetTarget (ResultPtr< std::remove_pointer< REF >::type > src) |
void | PrivateSetPointer (std::remove_pointer< REF >::type *ptr) |
Private Types | |
using | T = typename std::remove_pointer< REF >::type |
using | Super = BaseRef< T, CoreFoundationCreatedPointerHandler > |
|
private |
|
default |
MAXON_IMPLICIT CFStrongRef | ( | T * | o | ) |
Assignment of an already retained object (returned by a create or copy method). Objects which are returned by other methods have to be retained before assigning them to a CFStrongRef. See https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFMemoryMgmt/Concepts/Ownership.html#//apple_ref/doc/uid/20001148-CJBEJBHH
|
default |
|
default |
CFStrongRef& operator= | ( | T * | src | ) |
Assignment of an already retained object (returned by a create or copy method). Objects which are returned by other methods have to be retained before assigning them to a CFStrongRef. See https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFMemoryMgmt/Concepts/Ownership.html#//apple_ref/doc/uid/20001148-CJBEJBHH
|
default |
|
default |
CFStrongRef& operator= | ( | std::nullptr_t | src | ) |
REF* GetAddressOf | ( | ) |
Returns the address of the REF. This is often used by CF methods which return the retained reference of a copy.