Public Member Functions | |
Miscellaneous | |
virtual asIScriptEngine * | GetEngine () const =0 |
Returns a pointer to the script engine. | |
virtual const char * | GetConfigGroup () const =0 |
Returns the config group in which the type was registered. | |
Memory management | |
virtual int | AddRef () const =0 |
Increases the reference counter. | |
virtual int | Release () const =0 |
Decrease reference counter. | |
Type info | |
virtual const char * | GetName () const =0 |
Returns a temporary pointer to the name of the datatype. | |
virtual asIObjectType * | GetBaseType () const =0 |
Returns the object type that this type derives from. | |
virtual asDWORD | GetFlags () const =0 |
Returns the object type flags. | |
virtual asUINT | GetSize () const =0 |
Returns the size of the object type. | |
virtual int | GetTypeId () const =0 |
Returns the type id for the object type. | |
virtual int | GetSubTypeId () const =0 |
Returns the type id of the template sub type. | |
Interfaces | |
virtual asUINT | GetInterfaceCount () const =0 |
Returns the number of interfaces implemented. | |
virtual asIObjectType * | GetInterface (asUINT index) const =0 |
Returns a temporary pointer to the specified interface or null if none are found. | |
Factories | |
virtual asUINT | GetFactoryCount () const =0 |
Returns the number of factory functions for the object type. | |
virtual int | GetFactoryIdByIndex (asUINT index) const =0 |
Returns the factory id by index. | |
virtual int | GetFactoryIdByDecl (const char *decl) const =0 |
Returns the factory id by declaration. | |
Methods | |
virtual asUINT | GetMethodCount () const =0 |
Returns the number of methods for the object type. | |
virtual int | GetMethodIdByIndex (asUINT index, bool getVirtual=true) const =0 |
Returns the method id by index. | |
virtual int | GetMethodIdByName (const char *name, bool getVirtual=true) const =0 |
Returns the method id by name. | |
virtual int | GetMethodIdByDecl (const char *decl, bool getVirtual=true) const =0 |
Returns the method id by declaration. | |
virtual asIScriptFunction * | GetMethodDescriptorByIndex (asUINT index, bool getVirtual=true) const =0 |
Returns the function descriptor for the script method. | |
Properties | |
virtual asUINT | GetPropertyCount () const =0 |
Returns the number of properties that the object contains. | |
virtual int | GetProperty (asUINT index, const char **name, int *typeId=0, bool *isPrivate=0, int *offset=0, bool *isReference=0) const =0 |
Returns the attributes of the property. | |
virtual const char * | GetPropertyDeclaration (asUINT index) const =0 |
Returns the declaration of the property. | |
Behaviours | |
virtual asUINT | GetBehaviourCount () const =0 |
Returns the number of behaviours. | |
virtual int | GetBehaviourByIndex (asUINT index, asEBehaviours *outBehaviour) const =0 |
Returns the function id and type of the behaviour. |
virtual int asIObjectType::AddRef | ( | ) | const [pure virtual] |
virtual asIObjectType* asIObjectType::GetBaseType | ( | ) | const [pure virtual] |
This does not increase the reference count of the returned object type.
virtual int asIObjectType::GetBehaviourByIndex | ( | asUINT | index, | |
asEBehaviours * | outBehaviour | |||
) | const [pure virtual] |
[in] | index | The index of the behaviour. |
[out] | outBehaviour | Receives the type of the behaviour. |
asINVALID_ARG | The index is too large. |
virtual asUINT asIObjectType::GetBehaviourCount | ( | ) | const [pure virtual] |
virtual const char* asIObjectType::GetConfigGroup | ( | ) | const [pure virtual] |
virtual asIScriptEngine* asIObjectType::GetEngine | ( | ) | const [pure virtual] |
virtual asUINT asIObjectType::GetFactoryCount | ( | ) | const [pure virtual] |
virtual int asIObjectType::GetFactoryIdByDecl | ( | const char * | decl | ) | const [pure virtual] |
[in] | decl | The factory signature. |
asNO_FUNCTION | Didn't find any matching functions. | |
asINVALID_DECLARATION | decl is not a valid declaration. | |
asERROR | The module for the type was not built successfully. |
id = type->GetFactoryIdByDecl("object@ object(int arg1, int arg2)");
virtual int asIObjectType::GetFactoryIdByIndex | ( | asUINT | index | ) | const [pure virtual] |
[in] | index | The index of the factory function. |
asINVALID_ARG | index is out of bounds. |
virtual asDWORD asIObjectType::GetFlags | ( | ) | const [pure virtual] |
virtual asIObjectType* asIObjectType::GetInterface | ( | asUINT | index | ) | const [pure virtual] |
[in] | index | The interface index. |
virtual asUINT asIObjectType::GetInterfaceCount | ( | ) | const [pure virtual] |
virtual asUINT asIObjectType::GetMethodCount | ( | ) | const [pure virtual] |
virtual asIScriptFunction* asIObjectType::GetMethodDescriptorByIndex | ( | asUINT | index, | |
bool | getVirtual = true | |||
) | const [pure virtual] |
[in] | index | The index of the method. |
[in] | getVirtual | Set to true if the virtual method or the real method should be retrieved. |
virtual int asIObjectType::GetMethodIdByDecl | ( | const char * | decl, | |
bool | getVirtual = true | |||
) | const [pure virtual] |
[in] | decl | The method signature. |
[in] | getVirtual | Set to true if the virtual method or the real method should be retrieved. |
asMULTIPLE_FUNCTIONS | Found multiple matching methods. | |
asNO_FUNCTION | Didn't find any matching method. | |
asINVALID_DECLARATION | decl is not a valid declaration. | |
asERROR | The module for the type was not built successfully. |
The method will find the script method with the exact same declaration.
virtual int asIObjectType::GetMethodIdByIndex | ( | asUINT | index, | |
bool | getVirtual = true | |||
) | const [pure virtual] |
[in] | index | The index of the method. |
[in] | getVirtual | Set to true if the virtual method or the real method should be retrieved. |
asINVALID_ARG | index is out of bounds. |
By default this returns the virtual method for script classes. This will allow you to call the virtual method on classes, and rely on the polymorphism to call the correct implementation. If you wish to inspect the real method, then you should set the second parameter to false to retrieve the real method.
virtual int asIObjectType::GetMethodIdByName | ( | const char * | name, | |
bool | getVirtual = true | |||
) | const [pure virtual] |
[in] | name | The name of the method. |
[in] | getVirtual | Set to true if the virtual method or the real method should be retrieved. |
asMULTIPLE_FUNCTIONS | Found multiple matching methods. | |
asNO_FUNCTION | Didn't find any matching method. |
virtual const char* asIObjectType::GetName | ( | ) | const [pure virtual] |
virtual int asIObjectType::GetProperty | ( | asUINT | index, | |
const char ** | name, | |||
int * | typeId = 0 , |
|||
bool * | isPrivate = 0 , |
|||
int * | offset = 0 , |
|||
bool * | isReference = 0 | |||
) | const [pure virtual] |
[in] | index | The index of the property |
[out] | name | The name of the property |
[out] | typeId | The type of the property |
[out] | isPrivate | Whether the property is private or not |
[out] | offset | The offset into the object where the property is stored |
[out] | isReference | True is the property is not stored inline |
asINVALID_ARG | The index is out of bounds |
virtual asUINT asIObjectType::GetPropertyCount | ( | ) | const [pure virtual] |
virtual const char* asIObjectType::GetPropertyDeclaration | ( | asUINT | index | ) | const [pure virtual] |
[in] | index | The index of the property |
virtual asUINT asIObjectType::GetSize | ( | ) | const [pure virtual] |
virtual int asIObjectType::GetSubTypeId | ( | ) | const [pure virtual] |
asERROR | The type is not a template type. |
virtual int asIObjectType::GetTypeId | ( | ) | const [pure virtual] |
virtual int asIObjectType::Release | ( | ) | const [pure virtual] |