ICF 3.0.5.47
Technical documentation of ICF Libraries
istd::TPointerBase< Type > Class Template Reference

Implementation of pointer wrapper. More...

#include <TPointerBase.h>

Inheritance diagram for istd::TPointerBase< Type >:
Collaboration diagram for istd::TPointerBase< Type >:

Public Member Functions

 TPointerBase (Type *ptr=nullptr)
 Construct and assign internal pointer.
 
void SetPtr (Type *ptr)
 Set value of internal stored pointer.
 
void Reset ()
 Set internal pointer value to nullptr.
 
Type * get () const
 Return access to internal stored pointer.
 
bool IsValid () const
 Check if internal pointer not nullptr.
 
Type & operator* () const
 Get an access to object pointed at.
 
template<class CastedType >
CastedType Cast () const
 
Type * operator-> () const
 
bool operator== (const TPointerBase< Type > &ptr) const
 
bool operator!= (const TPointerBase< Type > &ptr) const
 
bool operator< (const TPointerBase< Type > &ptr) const
 
bool operator> (const TPointerBase< Type > &ptr) const
 
bool operator<= (const TPointerBase< Type > &ptr) const
 
bool operator>= (const TPointerBase< Type > &ptr) const
 
bool operator== (const Type *ptr) const
 
bool operator!= (const Type *ptr) const
 
bool operator< (const Type *ptr) const
 
bool operator> (const Type *ptr) const
 
bool operator<= (const Type *ptr) const
 
bool operator>= (const Type *ptr) const
 
 operator bool () const
 

Protected Member Functions

TPointerBase< Type > & operator= (const TPointerBase< Type > ptr)
 
Type *& GetPtrRef ()
 
void Swap (TPointerBase &ptr)
 Swap two pointers.
 

Protected Attributes

Type * m_ptr
 

Detailed Description

template<class Type>
class istd::TPointerBase< Type >

Implementation of pointer wrapper.

Definition at line 53 of file TPointerBase.h.

Constructor & Destructor Documentation

◆ TPointerBase()

template<class Type >
istd::TPointerBase< Type >::TPointerBase ( Type * ptr = nullptr)
inline

Construct and assign internal pointer.

Definition at line 252 of file TPointerBase.h.

Member Function Documentation

◆ Cast()

template<class Type >
template<class CastedType >
CastedType istd::TPointerBase< Type >::Cast ( ) const
inline

Definition at line 87 of file TPointerBase.h.

References istd::TPointerBase< Type >::get().

◆ get()

template<class Type >
Type * istd::TPointerBase< Type >::get ( ) const
inline

Return access to internal stored pointer.

Definition at line 136 of file TPointerBase.h.

Referenced by istd::TPointerBase< Type >::Cast().

◆ GetPtrRef()

template<class Type >
Type *& istd::TPointerBase< Type >::GetPtrRef ( )
inlineprotected

Definition at line 275 of file TPointerBase.h.

◆ IsValid()

template<class Type >
bool istd::TPointerBase< Type >::IsValid ( ) const
inline

Check if internal pointer not nullptr.

Returns
true, if internal pointer not nullptr and can be used to access pointed members.

Definition at line 143 of file TPointerBase.h.

◆ operator bool()

template<class Type >
istd::TPointerBase< Type >::operator bool ( ) const
inline

Definition at line 106 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator!=() [1/2]

template<class Type >
bool istd::TPointerBase< Type >::operator!= ( const TPointerBase< Type > & ptr) const
inline

Definition at line 173 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator!=() [2/2]

template<class Type >
bool istd::TPointerBase< Type >::operator!= ( const Type * ptr) const
inline

Definition at line 215 of file TPointerBase.h.

◆ operator*()

template<class Type >
Type & istd::TPointerBase< Type >::operator* ( ) const
inline

Get an access to object pointed at.

Definition at line 150 of file TPointerBase.h.

◆ operator->()

template<class Type >
Type * istd::TPointerBase< Type >::operator-> ( ) const
inline

Definition at line 159 of file TPointerBase.h.

◆ operator<() [1/2]

template<class Type >
bool istd::TPointerBase< Type >::operator< ( const TPointerBase< Type > & ptr) const
inline

Definition at line 180 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator<() [2/2]

template<class Type >
bool istd::TPointerBase< Type >::operator< ( const Type * ptr) const

Definition at line 222 of file TPointerBase.h.

◆ operator<=() [1/2]

template<class Type >
bool istd::TPointerBase< Type >::operator<= ( const TPointerBase< Type > & ptr) const
inline

Definition at line 194 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator<=() [2/2]

template<class Type >
bool istd::TPointerBase< Type >::operator<= ( const Type * ptr) const

Definition at line 236 of file TPointerBase.h.

◆ operator=()

template<class Type >
TPointerBase< Type > & istd::TPointerBase< Type >::operator= ( const TPointerBase< Type > ptr)
inlineprotected

Definition at line 266 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator==() [1/2]

template<class Type >
bool istd::TPointerBase< Type >::operator== ( const TPointerBase< Type > & ptr) const
inline

Definition at line 166 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator==() [2/2]

template<class Type >
bool istd::TPointerBase< Type >::operator== ( const Type * ptr) const
inline

Definition at line 208 of file TPointerBase.h.

◆ operator>() [1/2]

template<class Type >
bool istd::TPointerBase< Type >::operator> ( const TPointerBase< Type > & ptr) const
inline

Definition at line 187 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator>() [2/2]

template<class Type >
bool istd::TPointerBase< Type >::operator> ( const Type * ptr) const

Definition at line 229 of file TPointerBase.h.

◆ operator>=() [1/2]

template<class Type >
bool istd::TPointerBase< Type >::operator>= ( const TPointerBase< Type > & ptr) const
inline

Definition at line 201 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

◆ operator>=() [2/2]

template<class Type >
bool istd::TPointerBase< Type >::operator>= ( const Type * ptr) const

Definition at line 243 of file TPointerBase.h.

◆ Reset()

template<class Type >
void istd::TPointerBase< Type >::Reset ( )
inline

Set internal pointer value to nullptr.

Definition at line 129 of file TPointerBase.h.

◆ SetPtr()

template<class Type >
void istd::TPointerBase< Type >::SetPtr ( Type * ptr)
inline

Set value of internal stored pointer.

Definition at line 259 of file TPointerBase.h.

◆ Swap()

template<class Type >
void istd::TPointerBase< Type >::Swap ( TPointerBase< Type > & ptr)
protected

Swap two pointers.

Definition at line 282 of file TPointerBase.h.

References istd::TPointerBase< Type >::m_ptr.

Member Data Documentation

◆ m_ptr


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

© Witold Gantzke and Kirill Lepskiy