NCBI C++ ToolKit
|
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx. More...
#include <corelib/ncbicntr.hpp>
#include <corelib/ncbiatomic.hpp>
#include <corelib/ddumpable.hpp>
#include <corelib/ncbi_os_mswin.hpp>
Go to the source code of this file.
Go to the SVN repository for this file.
Classes | |
class | CObjectException |
CObjectException –. More... | |
class | CObjectCounterLocker |
class | CLockerTraits< C > |
class | CObject |
CObject –. More... | |
class | CInterfaceObjectLocker< Interface > |
class | CRef< C, Locker > |
CRef –. More... | |
class | CConstRef< C, Locker > |
CConstRef –. More... | |
class | CIRef< Interface, Locker > |
class | CConstIRef< Interface, Locker > |
class | CObjectFor< T > |
CObjectFor –. More... | |
class | CPtrToObjectProxy |
CPtrToObjectProxy –. More... | |
class | CWeakObject |
CWeakObject –. More... | |
class | CObjectEx |
CObjectEx –. More... | |
class | CWeakObjectLocker< C > |
CWeakObjectLocker –. More... | |
class | CWeakInterfaceLocker< Interface > |
CWeakInterfaceLocker –. More... | |
class | CWeakLockerTraits< C > |
class | CWeakRef< C, Locker > |
CWeakRef –. More... | |
class | CWeakIRef< Interface, Locker > |
CWeakIRef –. More... | |
Macros | |
#define | NCBI_OBJECT_LOCKER_EXPORT NCBI_XNCBI_EXPORT |
CObjectCounterLocker – Default locker class for CRef/CConstRef templates, all other locker classes should be subclasses of CObjectCounterLocker and use its locking methods. More... | |
Functions | |
template<class T , class L > | |
bool | operator== (const CRef< T, L > &r1, ENull) |
Comparison operators for CRef<> and CConstRef<> with ENull. More... | |
template<class T , class L > | |
bool | operator== (ENull, const CRef< T, L > &r1) |
Template operator == function for CRef objects – lhs is null. More... | |
template<class T , class L > | |
bool | operator!= (const CRef< T, L > &r1, ENull) |
Template operator != function for CRef objects – rhs is null. More... | |
template<class T , class L > | |
bool | operator!= (ENull, const CRef< T, L > &r1) |
Template operator != function for CRef objects – lhs is null. More... | |
template<class T , class L > | |
bool | operator== (const CConstRef< T, L > &r1, ENull) |
Template operator == function for CConstRef objects – rhs is null. More... | |
template<class T , class L > | |
bool | operator== (ENull, const CConstRef< T, L > &r1) |
Template operator == function for CConstRef objects – lhs is null. More... | |
template<class T , class L > | |
bool | operator!= (const CConstRef< T, L > &r1, ENull) |
Template operator != function for CConstRef objects – rhs is null. More... | |
template<class T , class L > | |
bool | operator!= (ENull, const CConstRef< T, L > &r1) |
Template operator != function for CConstRef objects – lhs is null. More... | |
template<class C > | |
CRef< C > | Ref (C *object) |
Helper functions to get CRef<> and CConstRef<> objects. More... | |
template<class C > | |
CConstRef< C > | ConstRef (const C *object) |
Template function for conversion of const object pointer to CConstRef. More... | |
template<class C , class L > | |
BEGIN_STD_SCOPE void | swap (NCBI_NS_NCBI::CRef< C, L > &ref1, NCBI_NS_NCBI::CRef< C, L > &ref2) |
template<class C , class L > | |
void | swap (NCBI_NS_NCBI::CConstIRef< C, L > &ref1, NCBI_NS_NCBI::CConstIRef< C, L > &ref2) |
template<class C , class L > | |
void | swap (NCBI_NS_NCBI::CIRef< C, L > &ref1, NCBI_NS_NCBI::CIRef< C, L > &ref2) |
template<class C , class L > | |
void | swap (NCBI_NS_NCBI::CConstRef< C, L > &ref1, NCBI_NS_NCBI::CConstRef< C, L > &ref2) |
template<class C , class L > | |
void | swap (NCBI_NS_NCBI::CWeakRef< C, L > &ref1, NCBI_NS_NCBI::CWeakRef< C, L > &ref2) |
template<class C , class L > | |
void | swap (NCBI_NS_NCBI::CWeakIRef< C, L > &ref1, NCBI_NS_NCBI::CWeakIRef< C, L > &ref2) |
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.
Definition in file ncbiobj.hpp.