|
libqi-api
2.4.3.28
|
#include <structtypeinterface.hxx>
Public Types | |
| typedef DefaultTypeImplMethods < T, TypeByPointerPOD< T > > | Methods |
Public Member Functions | |
| StructTypeInterface * | bounceType () |
| virtual void | adaptStorage (void **storage, void **adapted)=0 |
| virtual std::vector < TypeInterface * > | memberTypes () |
| virtual void * | get (void *storage, unsigned int index) |
| Get the field storage at index (not a copy) More... | |
| virtual std::vector< void * > | get (void *storage) |
| Get all the fields storages of the struct (not a copy) More... | |
| virtual void | set (void **storage, const std::vector< void * > &vals) |
| Set all the fields of the struct (copies the values given in the vector) More... | |
| virtual void | set (void **storage, unsigned int index, void *valStorage) |
| Set the fields of the struct at index (copies the value given) More... | |
| virtual std::vector< std::string > | elementsName () |
| Get the names of the fields of the struct. More... | |
| virtual bool | fillMissingFields (std::map< std::string,::qi::AnyValue > &fields, const std::vector< std::string > &missing) |
| _QI_BOUNCE_TYPE_METHODS (Methods) | |
Public Member Functions inherited from qi::StructTypeInterface | |
| AnyReferenceVector | values (void *storage) |
| Get all the fields of the structure. More... | |
| virtual TypeKind | kind () |
| virtual std::string | className () |
| Get the type name of the struct. More... | |
| virtual bool | canDropFields (void *storage, const std::vector< std::string > &fieldNames) |
Return whether struct accepts field-name-based conversion that drops fieldNames. More... | |
| virtual bool | fillMissingFields (std::map< std::string, AnyValue > &fields, const std::vector< std::string > &missing) |
| Fill missing fields caused by conversion from a different struct. Return whether fill succeeded. More... | |
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 402 of file structtypeinterface.hxx.
| typedef DefaultTypeImplMethods<T, TypeByPointerPOD<T> > qi::StructTypeInterfaceBouncer< T, TO >::Methods |
Definition at line 415 of file structtypeinterface.hxx.
| qi::StructTypeInterfaceBouncer< T, TO >::_QI_BOUNCE_TYPE_METHODS | ( | Methods | ) |
|
pure virtual |
|
inline |
Definition at line 405 of file structtypeinterface.hxx.
|
inlinevirtual |
Get the names of the fields of the struct.
Reimplemented from qi::StructTypeInterface.
Definition at line 449 of file structtypeinterface.hxx.
|
inlinevirtual |
Definition at line 454 of file structtypeinterface.hxx.
|
inlinevirtual |
Get the field storage at index (not a copy)
Implements qi::StructTypeInterface.
Definition at line 421 of file structtypeinterface.hxx.
|
inlinevirtual |
Get all the fields storages of the struct (not a copy)
Reimplemented from qi::StructTypeInterface.
Definition at line 428 of file structtypeinterface.hxx.
|
inlinevirtual |
Get all the member types
Note that this function does not recieve a storage argument. There must be one instance of StructTypeInterface per type of struct. If you need dynamic structs, look at makeTupleType().
Implements qi::StructTypeInterface.
Definition at line 416 of file structtypeinterface.hxx.
|
inlinevirtual |
Set all the fields of the struct (copies the values given in the vector)
Reimplemented from qi::StructTypeInterface.
Definition at line 435 of file structtypeinterface.hxx.
|
inlinevirtual |
Set the fields of the struct at index (copies the value given)
Implements qi::StructTypeInterface.
Definition at line 442 of file structtypeinterface.hxx.