KDECore
Go to the documentation of this file.
30 #include <QtCore/QExplicitlySharedDataPointer>
31 #include <QtCore/QAtomicPointer>
32 #include <kdemacros.h>
77 :
d(p) {
if(
d)
d->ref.ref(); }
84 :
d(o.
d) {
if(
d)
d->ref.ref(); }
106 inline operator bool()
const {
return (
d != 0 ); }
116 inline const T*
data()
const {
return d; }
144 inline int count()
const {
return d ?
static_cast<int>(
d->ref) : 0; }
151 inline bool isNull()
const {
return (
d == 0); }
213 if (
d && !
d->ref.deref())
222 attach(static_cast<T*>(0));
Q_INLINE_TEMPLATE bool operator==(const T *p, const KSharedPtr< T > &o)
Can be used to control the lifetime of an object that has derived QSharedData.
const T & operator*() const
void clear()
Clear the pointer, i.e.
KSharedPtr()
Creates a null pointer.
KSharedPtr(const KSharedPtr &o)
Copies a pointer.
bool operator!=(const KSharedPtr &o) const
~KSharedPtr()
Unreferences the object that this pointer points to.
static KSharedPtr< T > dynamicCast(const KSharedPtr< U > &o)
Convert KSharedPtr to KSharedPtr, using a dynamic_cast.
Q_INLINE_TEMPLATE bool operator!=(const T *p, const KSharedPtr< T > &o)
bool isNull() const
Test if the shared pointer is null.
KSharedPtr(T *p)
Creates a new pointer.
const T * operator->() const
const T * constData() const
bool operator==(const KSharedPtr &o) const
KSharedPtr< T > & operator=(const KSharedPtr &o)
static KSharedPtr< T > staticCast(const KSharedPtr< U > &o)
Convert KSharedPtr to KSharedPtr, using a static_cast.
int count() const
Returns the number of references.
void attach(T *p)
Attach the given pointer to the current KSharedPtr.
bool operator<(const KSharedPtr &o) const
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Thu Nov 13 2014 11:50:21 by
doxygen 1.8.8 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.