1 #ifndef OZULIS_CORE_REF_COUNTED_OBJECT_HH
2 # define OZULIS_CORE_REF_COUNTED_OBJECT_HH
10 class RefCountedObject
13 inline RefCountedObject();
14 virtual ~RefCountedObject();
16 inline uint32_t refCount() const;
28 inline Ptr(const Ptr
<V
> &);
29 inline Ptr(const Ptr
<T
> &);
33 inline T
& operator*();
34 inline const T
& operator*() const;
36 inline T
* operator->();
37 inline const T
* operator->() const;
39 inline void operator=(T
const * ptr
);
41 inline void operator=(V
* ptr
);
43 inline void operator=(Ptr
<V
> const & ptr
);
44 inline void operator=(Ptr
<T
> const & ptr
);
46 inline operator T
*();
47 inline operator const T
*() const;
48 inline operator bool() const;
50 inline operator Ptr
<V
> ();
53 inline const T
* ptr() const;
65 # include "ref-counted-object.hxx"
67 #endif /* !OZULIS_CORE_REF_COUNTED_OBJECT_HH */