Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
#define P6REFCOUNTEDCLASS (   classname)
Value:
public: \
{ P6R::P6INT32 tmp = P6R::p6AtomicInc32(&m_cRef.value); \
P6R::p6TraceAddref(#classname,sizeof(*this),this,tmp,NULL); \
return tmp; } \
{ P6R::P6INT32 tmp = P6R::p6AtomicDec32(&m_cRef.value); \
P6R::p6TraceRelease(#classname,this,tmp,NULL); \
if(0 == tmp) { delete this; } \
return tmp; } \
P6API P6INT32 P6CCALL p6AtomicDec32(P6INT32 volatile *pVar)
Atomically decrements the variable pointed to by pVar by one.
P6API P6INT32 P6CCALL p6AtomicInc32(P6INT32 volatile *pVar)
Atomically increments the variable pointed to by pVar by one.
struct P6R::P6AUTO_INT32 P6AUTO_INT32
Auto initializing INT32.
#define P6COMMETHOD_(type)
Definition: p6defs.h:181
int32_t P6INT32
Definition: p6types.h:76

Depricated.

Definition at line 621 of file p6comhlpr.h.