|
libqi-api
release-2.5.3-2016-11-18
|
#include <typeinterface.hpp>
Public Types | |
| enum | PointerKind { Raw, Shared } |
Public Member Functions | |
| virtual PointerKind | pointerKind ()=0 |
| Return whether the pointer has raw or shared semantics. More... | |
| virtual TypeInterface * | pointedType ()=0 |
| Get the type of the pointed element. More... | |
| virtual AnyReference | dereference (void *storage)=0 |
| Get the pointed element (must not be destroyed) More... | |
| virtual void | set (void **storage, AnyReference pointer)=0 |
| Set new pointee value. pointer must be a pointer to type pointedType() More... | |
| virtual void | setPointee (void **storage, void *pointer)=0 |
| Set new pointee value. pointer must be a pointer to type pointedType() More... | |
| TypeKind | kind () override |
Public Member Functions inherited from qi::TypeInterface | |
| virtual const TypeInfo & | info ()=0 |
| Get the TypeInfo corresponding to this type. More... | |
| virtual void * | initializeStorage (void *ptr=0)=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=0, bool resolveDynamic=false) |
Additional Inherited Members | |
Static Public Member Functions inherited from qi::TypeInterface | |
| static TypeInterface * | fromSignature (const qi::Signature &sig) |
Definition at line 136 of file typeinterface.hpp.
| Enumerator | |
|---|---|
| Raw | |
| Shared | |
Definition at line 139 of file typeinterface.hpp.
|
pure virtual |
Get the pointed element (must not be destroyed)
Implemented in qi::TypeSharedPointerImpl< T >, qi::TypeSharedPointerImpl< boost::shared_ptr< T > >, and qi::PointerTypeInterfaceImpl< T >.
|
inlineoverridevirtual |
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 154 of file typeinterface.hpp.
|
pure virtual |
Get the type of the pointed element.
Implemented in qi::TypeSharedPointerImpl< T >, qi::TypeSharedPointerImpl< boost::shared_ptr< T > >, and qi::PointerTypeInterfaceImpl< T >.
|
pure virtual |
Return whether the pointer has raw or shared semantics.
Implemented in qi::TypeSharedPointerImpl< T >, qi::TypeSharedPointerImpl< boost::shared_ptr< T > >, and qi::PointerTypeInterfaceImpl< T >.
|
pure virtual |
Set new pointee value. pointer must be a pointer to type pointedType()
Implemented in qi::TypeSharedPointerImpl< T >, qi::TypeSharedPointerImpl< boost::shared_ptr< T > >, and qi::PointerTypeInterfaceImpl< T >.
|
pure virtual |
Set new pointee value. pointer must be a pointer to type pointedType()
Implemented in qi::TypeSharedPointerImpl< T >, qi::TypeSharedPointerImpl< boost::shared_ptr< T > >, and qi::PointerTypeInterfaceImpl< T >.