24#ifndef __XPLC_IOBJECT_H__
25#define __XPLC_IOBJECT_H__
27#if defined(__GNUC__) && __GNUC__ > 3
28# pragma GCC system_header
46#define UNSTABLE_INTERFACE static bool UNSTABLE_INTERFACE = true;
48#define UNSTABLE_INTERFACE
128 {0xb0, 0x56, 0x8b, 0x9d, 0xde, 0x9a, 0xbe, 0x9d}});
The basic interface which is included by all other XPLC interfaces and objects.
virtual IWeakRef * getWeakRef()=0
Return a weak reference to this object.
virtual unsigned int addRef()=0
Indicate you are using this object.
virtual IObject * getInterface(const UUID &)=0
Returns the requested XPLC interface.
virtual unsigned int release()=0
Indicate that you are finished using this object.
Represents a weak reference to another object.
#define DEFINE_IID(iface, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11)
Used to define the IID of an interface.
#define UNSTABLE_INTERFACE
Used to mark an interface as unstable.
The structure underlying UUIDs.