libqi-api  2.8.7.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Attributes | List of all members
qi::ObjectTypeInterface Class Referenceabstract

#include <typeobject.hpp>

Public Member Functions

virtual const MetaObjectmetaObject (void *instance)=0
 
virtual ObjectUid uid (void *instance) const =0
 
virtual qi::Future< AnyReferencemetaCall (void *instance, AnyObject context, unsigned int method, const GenericFunctionParameters &params, MetaCallType callType=MetaCallType_Auto, Signature returnSig=Signature())=0
 
virtual void metaPost (void *instance, AnyObject context, unsigned int signal, const GenericFunctionParameters &params)=0
 
virtual qi::Future< SignalLinkconnect (void *instance, AnyObject context, unsigned int event, const SignalSubscriber &subscriber)=0
 
virtual qi::Future< void > disconnect (void *instance, AnyObject context, SignalLink linkId)=0
 Disconnect an event link. Returns if disconnection was successful. More...
 
virtual const std::vector
< std::pair< TypeInterface
*, std::ptrdiff_t > > & 
parentTypes ()=0
 
virtual qi::Future< AnyValueproperty (void *instance, AnyObject context, unsigned int id)=0
 
virtual qi::Future< void > setProperty (void *instance, AnyObject context, unsigned int id, AnyValue value)=0
 
virtual TypeKind kind ()
 
std::ptrdiff_t inherits (TypeInterface *other)
 
- Public Member Functions inherited from qi::TypeInterface
virtual ~TypeInterface ()=default
 
virtual const TypeInfoinfo ()=0
 Get the TypeInfo corresponding to this type. More...
 
virtual void * initializeStorage (void *ptr=nullptr)=0
 
virtual void * ptrFromStorage (void **)=0
 
virtual void * clone (void *)=0
 Allocate a storage and copy the value given as an argument. More...
 
virtual void destroy (void *)=0
 Free all resources of a storage. More...
 
virtual bool less (void *a, void *b)=0
 
const char * infoString ()
 
qi::Signature signature (void *storage=nullptr, bool resolveDynamic=false)
 

Static Public Attributes

static const auto INHERITS_FAILED = PTRDIFF_MAX
 

Additional Inherited Members

- Static Public Member Functions inherited from qi::TypeInterface
static TypeInterfacefromSignature (const qi::Signature &sig)
 

Detailed Description

Definition at line 48 of file typeobject.hpp.

Member Function Documentation

virtual qi::Future<SignalLink> qi::ObjectTypeInterface::connect ( void *  instance,
AnyObject  context,
unsigned int  event,
const SignalSubscriber &  subscriber 
)
pure virtual
virtual qi::Future<void> qi::ObjectTypeInterface::disconnect ( void *  instance,
AnyObject  context,
SignalLink  linkId 
)
pure virtual

Disconnect an event link. Returns if disconnection was successful.

Implemented in qi::TypeProxy< InterfaceType, ProxyType >, and qi::detail::StaticObjectTypeBase.

std::ptrdiff_t qi::ObjectTypeInterface::inherits ( TypeInterface other)
Returns
INHERITS_FAILED if there is no inheritance, or the pointer offset
virtual TypeKind qi::ObjectTypeInterface::kind ( )
inlinevirtual

Get the kind of the data.

This is used to downcast the TypeInterface object to a specialized interface.

Reimplemented from qi::TypeInterface.

Definition at line 62 of file typeobject.hpp.

virtual qi::Future<AnyReference> qi::ObjectTypeInterface::metaCall ( void *  instance,
AnyObject  context,
unsigned int  method,
const GenericFunctionParameters params,
MetaCallType  callType = MetaCallType_Auto,
Signature  returnSig = Signature() 
)
pure virtual
virtual const MetaObject& qi::ObjectTypeInterface::metaObject ( void *  instance)
pure virtual
virtual void qi::ObjectTypeInterface::metaPost ( void *  instance,
AnyObject  context,
unsigned int  signal,
const GenericFunctionParameters params 
)
pure virtual
virtual const std::vector<std::pair<TypeInterface*, std::ptrdiff_t> >& qi::ObjectTypeInterface::parentTypes ( )
pure virtual
Returns
parent types with associated pointer offset

Implemented in qi::TypeProxy< InterfaceType, ProxyType >, and qi::detail::StaticObjectTypeBase.

virtual qi::Future<AnyValue> qi::ObjectTypeInterface::property ( void *  instance,
AnyObject  context,
unsigned int  id 
)
pure virtual
virtual qi::Future<void> qi::ObjectTypeInterface::setProperty ( void *  instance,
AnyObject  context,
unsigned int  id,
AnyValue  value 
)
pure virtual
virtual ObjectUid qi::ObjectTypeInterface::uid ( void *  instance) const
pure virtual

Member Data Documentation

const auto qi::ObjectTypeInterface::INHERITS_FAILED = PTRDIFF_MAX
static

Definition at line 63 of file typeobject.hpp.


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