13 #ifndef __SGREFOBJECT_H__
14 #define __SGREFOBJECT_H__
29 #ifdef USE_REFERENCE_COUNTING
30 #define SG_REF(x) { if (x) (x)->ref(); }
31 #define SG_UNREF(x) { if (x) { if ((x)->unref()==0) (x)=NULL; } }
32 #define SG_UNREF_NO_NULL(x) { if (x) { (x)->unref(); } }
36 #define SG_UNREF_NO_NULL(x)
58 #ifdef USE_REFERENCE_COUNTING
77 #endif //USE_REFERENCE_COUNTING
84 virtual const char*
get_name()
const = 0;
86 #ifdef TRACE_MEMORY_ALLOCS
87 static void list_memory_allocs()
89 shogun::list_memory_allocs();
101 #endif // __SGREFOBJECT_H__
Class SGRefObject is a reference count based memory management class.
virtual const char * get_name() const =0
all of classes and functions are contained in the shogun namespace