carb::IObject¶
Defined in carb/IObject.h
Inheritance Relationships¶
Derived Types¶
public carb::events::IEvent
(carb::events::IEvent)public carb::events::IEventListener
(carb::events::IEventListener)public carb::events::IEventStream
(carb::events::IEventStream)public carb::events::ISubscription
(carb::events::ISubscription)public carb::variant::VariantArray
(carb::variant::VariantArray)public carb::variant::VariantMap
(carb::variant::VariantMap)
-
class
carb
::
IObject
¶ Reference-counted object base.
Subclassed by carb::events::IEvent, carb::events::IEventListener, carb::events::IEventStream, carb::events::ISubscription, carb::variant::VariantArray, carb::variant::VariantMap
Public Functions
-
virtual
~IObject
() = default¶ Destructor.
-
virtual size_t
addRef
() = 0¶ Atomically add one to the reference count.
- Returns
The current reference count after one was added, though this value may change before read if other threads are also modifying the reference count. The return value is guaranteed to be non-zero.
-
virtual size_t
release
() = 0¶ Atomically subtracts one from the reference count.
If the result is zero, carb::deleteHandler() is called for
this
.- Returns
The current reference count after one was subtracted. If zero is returned, carb::deleteHandler() was called for
this
.
Public Static Functions
-
static inline carb::InterfaceDesc
getInterfaceDesc
()¶ Returns information about this interface. Auto-generated by CARB_PLUGIN_INTERFACE(). *
- Returns
The carb::InterfaceDesc struct with information about this interface.
-
virtual