- Aldebaran documentation |
- C++ Libraries |
- index

libqi-api 2.8.7.4

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- Class List
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | List of all members
qi::DefaultTypeImpl< T, _Access > Class Template Reference

`#include <typeimpl.hxx>`

## Public Types
using | MethodsImpl = DefaultTypeImplMethods< T, _Access >

## Public Member Functions
const ::qi::TypeInfo & | info () override
| Get the TypeInfo corresponding to this type. More...
void * | initializeStorage (void *ptr=0) override
void * | ptrFromStorage (void **s) override
bool | less (void *a, void *b) override
void * | clone (void *ptr) override
| Allocate a storage and copy the value given as an argument. More...
void | destroy (void *ptr) override
| Free all resources of a storage. More...
Public Member Functions inherited from qi::TypeInterface
virtual | ~TypeInterface ()=default
virtual TypeKind | kind ()
const char * | infoString ()
qi::Signature | signature (void *storage=nullptr, 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, typename _Access = TypeByPointer<T>>
class qi::DefaultTypeImpl< T, _Access >

Definition at line 287 of file typeimpl.hxx.

## Member Typedef Documentation

template<typename T, typename _Access = TypeByPointer<T>>

using qi::DefaultTypeImpl< T, _Access >::MethodsImpl = DefaultTypeImplMethods<T, _Access>

Definition at line 291 of file typeimpl.hxx.

## Member Function Documentation

template<typename T, typename _Access = TypeByPointer<T>>

void* qi::DefaultTypeImpl< T, _Access >::clone | ( | void * |  | ) |
| inline override virtual

Allocate a storage and copy the value given as an argument.

Implements qi::TypeInterface.

Definition at line 292 of file typeimpl.hxx.

template<typename T, typename _Access = TypeByPointer<T>>

void qi::DefaultTypeImpl< T, _Access >::destroy | ( | void * |  | ) |
| inline override virtual

Free all resources of a storage.

Implements qi::TypeInterface.

Definition at line 292 of file typeimpl.hxx.

template<typename T, typename _Access = TypeByPointer<T>>

const ::qi::TypeInfo& qi::DefaultTypeImpl< T, _Access >::info | ( |  | ) |
| inline override virtual

Get the TypeInfo corresponding to this type.

Implements qi::TypeInterface.

Definition at line 292 of file typeimpl.hxx.

template<typename T, typename _Access = TypeByPointer<T>>

void* qi::DefaultTypeImpl< T, _Access >::initializeStorage | ( | void * | ptr = `0` | ) |
| inline override virtual

Initialize and return a new storage, from nothing or a T*.

If ptr is not null, it should be used as a storage (the method can usually just return ptr in that case).

Implements qi::TypeInterface.

Definition at line 292 of file typeimpl.hxx.

template<typename T, typename _Access = TypeByPointer<T>>

bool qi::DefaultTypeImpl< T, _Access >::less | ( | void * | a,
|  | void * | b
| ) |  |
| inline override virtual

Return true if a is less than b

Less must always work: compare pointers if you have to.

Implements qi::TypeInterface.

Definition at line 292 of file typeimpl.hxx.

template<typename T, typename _Access = TypeByPointer<T>>

void* qi::DefaultTypeImpl< T, _Access >::ptrFromStorage | ( | void ** |  | ) |
| inline override virtual

Get pointer to type from pointer to storage.

This allows for storing an integer value (for instance) directily into the pointer and avoid an allocation.

This method should be called on storage before casting it to a specific type.

Implements qi::TypeInterface.

Definition at line 292 of file typeimpl.hxx.

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

- /home/opennao/work/release-2.8/sdk/libqi/qi/type/detail/typeimpl.hxx