GATE
gate::IObjectBuilder< ObjectStruct, VtblStruct > Class Template Reference
Inheritance diagram for gate::IObjectBuilder< ObjectStruct, VtblStruct >:
gate::IObject

Classes

struct  cpp_object
 
struct  VtblObject
 

Public Types

typedef ObjectStruct obj_struct_t
 
typedef VtblStruct obj_vtbl_t
 
typedef IObjectBuilder< obj_struct_t, obj_vtbl_t > ObjectBuilder
 

Public Member Functions

virtual void release () noexcept
 
virtual int retain () noexcept
 
virtual String getInterfaceName () noexcept
 
virtual ObjectStruct * c_impl ()
 

Protected Member Functions

 IObjectBuilder (obj_vtbl_t const *vtbl_ptr, char const *name)
 

Static Protected Member Functions

static void object_release (void *obj_ptr) noexcept
 
static int object_retain (void *obj_ptr) noexcept
 
static char const * object_get_interface_name (void *obj_ptr) noexcept
 
template<class T >
static T * getInterface (cpp_object *obj)
 

Member Function Documentation

◆ getInterfaceName()

template<class ObjectStruct , class VtblStruct >
virtual String gate::IObjectBuilder< ObjectStruct, VtblStruct >::getInterfaceName ( )
inlinevirtualnoexcept

Implements gate::IObject.

◆ release()

template<class ObjectStruct , class VtblStruct >
virtual void gate::IObjectBuilder< ObjectStruct, VtblStruct >::release ( )
inlinevirtualnoexcept

Implements gate::IObject.

◆ retain()

template<class ObjectStruct , class VtblStruct >
virtual int gate::IObjectBuilder< ObjectStruct, VtblStruct >::retain ( )
inlinevirtualnoexcept

Implements gate::IObject.


The documentation for this class was generated from the following file: