LibreOffice
LibreOffice 24.2 SDK C/C++ API Reference
|
The WeakReferenceHelper holds a weak reference to an object. More...
#include <weakref.hxx>
Public Member Functions | |
WeakReferenceHelper () | |
Default ctor. More... | |
WeakReferenceHelper (const WeakReferenceHelper &rWeakRef) | |
Copy ctor. More... | |
WeakReferenceHelper (const css::uno::Reference< css::uno::XInterface > &xInt) | |
Initialize this reference with the hard interface reference xInt. More... | |
~WeakReferenceHelper () | |
Releases this reference. More... | |
WeakReferenceHelper & | operator= (const WeakReferenceHelper &rWeakRef) |
Releases this reference and takes over rWeakRef. More... | |
WeakReferenceHelper & | operator= (const css::uno::Reference< css::uno::XInterface > &xInt) |
Releases this reference and takes over hard reference xInt. More... | |
bool | operator== (const WeakReferenceHelper &rObj) const |
Returns true if both weak refs reference to the same object. More... | |
css::uno::Reference< css::uno::XInterface > | get () const |
Gets a hard reference to the object. More... | |
operator Reference< XInterface > () const | |
Gets a hard reference to the object. More... | |
void | clear () |
Releases this reference. More... | |
The WeakReferenceHelper holds a weak reference to an object.
That object must implement the css::uno::XWeak interface.
The WeakReferenceHelper itself is not thread safe, just as Reference itself isn't, but the implementation of the listeners etc. behind it is thread-safe, so multiple threads can have their own WeakReferences to the same XWeak object.
|
inline |
Default ctor.
Creates an empty weak reference.
com::sun::star::uno::WeakReferenceHelper::WeakReferenceHelper | ( | const WeakReferenceHelper & | rWeakRef | ) |
Copy ctor.
Initialize this reference with the same interface as in rWeakRef.
rWeakRef | another weak ref |
com::sun::star::uno::WeakReferenceHelper::WeakReferenceHelper | ( | const css::uno::Reference< css::uno::XInterface > & | xInt | ) |
Initialize this reference with the hard interface reference xInt.
If the implementation behind xInt does not support XWeak or xInt is null then this reference will be null.
xInt | another hard interface reference |
com::sun::star::uno::WeakReferenceHelper::~WeakReferenceHelper | ( | ) |
Releases this reference.
void com::sun::star::uno::WeakReferenceHelper::clear | ( | ) |
Releases this reference.
css::uno::Reference< css::uno::XInterface > com::sun::star::uno::WeakReferenceHelper::get | ( | ) | const |
Gets a hard reference to the object.
|
inline |
Gets a hard reference to the object.
WeakReferenceHelper& com::sun::star::uno::WeakReferenceHelper::operator= | ( | const WeakReferenceHelper & | rWeakRef | ) |
Releases this reference and takes over rWeakRef.
rWeakRef | another weak ref |
WeakReferenceHelper& com::sun::star::uno::WeakReferenceHelper::operator= | ( | const css::uno::Reference< css::uno::XInterface > & | xInt | ) |
Releases this reference and takes over hard reference xInt.
If the implementation behind xInt does not support XWeak or XInt is null, then this reference is null.
xInt | another hard reference |
|
inline |
Returns true if both weak refs reference to the same object.
rObj | another weak ref |