libqi-api  2.5.11.14a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | List of all members
qi::PointerTypeInterfaceImpl< T > Class Template Reference

#include <pointertypeinterface.hxx>

Public Types

using TypeMethodsImpl = DefaultTypeImplMethods< T *, TypeByValue< T * >>
 
- Public Types inherited from qi::PointerTypeInterface
enum  PointerKind { Raw, Shared }
 

Public Member Functions

TypeInterface * pointedType () override
 Get the type of the pointed element. More...
 
PointerKind pointerKind () override
 Return whether the pointer has raw or shared semantics. More...
 
AnyReference dereference (void *storage) override
 Get the pointed element (must not be destroyed) More...
 
void set (void **storage, AnyReference pointer) override
 Set new pointee value. pointer must be a pointer to type pointedType() More...
 
void setPointee (void **storage, void *pointer) override
 Set new pointee value. pointer must be a pointer to type pointedType() More...
 
 _QI_BOUNCE_TYPE_METHODS (TypeMethodsImpl)
 
- Public Member Functions inherited from qi::PointerTypeInterface
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)
 

Detailed Description

template<typename T>
class qi::PointerTypeInterfaceImpl< T >

Definition at line 14 of file pointertypeinterface.hxx.

Member Typedef Documentation

Definition at line 41 of file pointertypeinterface.hxx.

Member Function Documentation

template<typename T >
qi::PointerTypeInterfaceImpl< T >::_QI_BOUNCE_TYPE_METHODS ( TypeMethodsImpl  )
template<typename T >
AnyReference qi::PointerTypeInterfaceImpl< T >::dereference ( void *  storage)
inlineoverridevirtual

Get the pointed element (must not be destroyed)

Implements qi::PointerTypeInterface.

Definition at line 23 of file pointertypeinterface.hxx.

template<typename T >
TypeInterface* qi::PointerTypeInterfaceImpl< T >::pointedType ( )
inlineoverridevirtual

Get the type of the pointed element.

Implements qi::PointerTypeInterface.

Definition at line 17 of file pointertypeinterface.hxx.

template<typename T >
PointerKind qi::PointerTypeInterfaceImpl< T >::pointerKind ( )
inlineoverridevirtual

Return whether the pointer has raw or shared semantics.

Implements qi::PointerTypeInterface.

Definition at line 22 of file pointertypeinterface.hxx.

template<typename T >
void qi::PointerTypeInterfaceImpl< T >::set ( void **  storage,
AnyReference  pointer 
)
inlineoverridevirtual

Set new pointee value. pointer must be a pointer to type pointedType()

Implements qi::PointerTypeInterface.

Definition at line 30 of file pointertypeinterface.hxx.

template<typename T >
void qi::PointerTypeInterfaceImpl< T >::setPointee ( void **  storage,
void *  pointer 
)
inlineoverridevirtual

Set new pointee value. pointer must be a pointer to type pointedType()

Implements qi::PointerTypeInterface.

Definition at line 36 of file pointertypeinterface.hxx.


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