X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fstructure%2FSGReferenced.hxx;h=67e4fb1ed18ba36b7d42d206dfd9155047d0a0ee;hb=b2c3a90adfb6c0285d02355fd8ab061b7f2f1e6c;hp=6a3038f3576494619e6590144ce3d638d547be31;hpb=0f7b65a9216458b290113bae0ff75bd3ec4dce36;p=simgear.git diff --git a/simgear/structure/SGReferenced.hxx b/simgear/structure/SGReferenced.hxx index 6a3038f3..67e4fb1e 100644 --- a/simgear/structure/SGReferenced.hxx +++ b/simgear/structure/SGReferenced.hxx @@ -26,7 +26,9 @@ /// Base class for all reference counted SimGear objects /// Classes derived from this one are meant to be managed with /// the SGSharedPtr class. -/// For more info see @SGSharedPtr. +/// +/// For more info see SGSharedPtr. For using weak references see +/// SGWeakReferenced. class SGReferenced { public: @@ -40,11 +42,11 @@ public: { return *this; } static unsigned get(const SGReferenced* ref) - { if (ref) return ++(ref->_refcount); else return ~0u; } + { if (ref) return ++(ref->_refcount); else return 0; } static unsigned put(const SGReferenced* ref) - { if (ref) return --(ref->_refcount); else return ~0u; } + { if (ref) return --(ref->_refcount); else return 0; } static unsigned count(const SGReferenced* ref) - { if (ref) return ref->_refcount; else return ~0u; } + { if (ref) return ref->_refcount; else return 0; } static bool shared(const SGReferenced* ref) { if (ref) return 1u < ref->_refcount; else return false; }