18 #ifndef SHEVEK_REFBASE_HH
19 #define SHEVEK_REFBASE_HH
21 #include <sigc++/sigc++.h>
22 #include <glibmm/refptr.h>
32 {
return Glib::RefPtr <_T>::cast_dynamic (refptr_this <refbase> ()); }
42 template <
typename T> Glib::RefPtr <T>
refptr_this ();
48 virtual void reference ();
49 virtual void unreference ();
51 template <
typename T>
friend class Glib::RefPtr;
66 return Glib::RefPtr <T> (dynamic_cast <T *> (
this) );
Base class for classes which want reference counting through Glib::RefPtr.
Definition: refbase.hh:27
Glib::RefPtr< _T > cast_dynamic()
Identical to GLib::RefPtr <>::cast_dynamic, but nicer to type.
Definition: refbase.hh:31
refbase()
Constructor, increments reference count.
virtual ~refbase()
Destructor, decrements reference count and destroys the object if it reaches 0.
Glib::RefPtr< T > refptr_this()
Get a RefPtr to this, protected because only members should need it.
Definition: refbase.hh:57