libmoldeo (Moldeo 1.0 Core)
1.0
libmoldeo is the group of objects and functions that executes the basic operations of Moldeo 1.0 Platform.
|
#include <moScript.h>
Public Types | |
typedef int(* | Function )(moLuaVirtualMachine &vm) |
Public Member Functions | |
moScript () | |
virtual | ~moScript (void) |
void | InitScript () |
void | FinishScript () |
bool | IsInitialized () |
bool | CompileFile (const char *strFilename) |
bool | CompileBuffer (unsigned char *pbBuffer, size_t szLen) |
int | RegisterFunction (const char *strFuncName, moScript::Function &fun) |
int | RegisterFunction (const char *strFuncName) |
int | RegisterBaseFunction (const char *strFuncName) |
bool | SelectScriptFunction (const char *strFuncName) |
void | AddFunctionParam (int iInt) |
void | AddFunctionParam (float fFloat) |
void | AddFunctionParam (char *string) |
bool | RunSelectedFunction (int nReturns=0) |
bool | ScriptHasFunction (const char *strScriptName) |
int | methods (void) |
virtual int | ScriptCalling (moLuaVirtualMachine &vm, int iFunctionNumber)=0 |
virtual int | ResetScriptCalling () |
virtual int | NextScriptCalling () |
virtual void | HandleReturns (moLuaVirtualMachine &vm, const char *strFunc)=0 |
moLuaVirtualMachine & | mvm (void) |
Public Attributes | |
Function | Functions [255] |
Protected Attributes | |
bool | m_initialized |
int | m_nMethods |
int | m_iThisRef |
int | m_nArgs |
const char * | m_strFunctionName |
int | m_iMethodBase |
int | m_iMethodBaseIterator |
actual class index method base More... | |
int | m_iMethodBaseAncestors |
actual class iterator index method base More... | |
int | m_MethodBases [256] |
increment on each call to RegisterFunctions More... | |
Static Protected Attributes | |
static moLuaVirtualMachine | m_vm |
static moLuaDebugger | m_dbg |
Esta clase implementa la funcionalidad necesaria para crear clases scripteables con LUA. Una clase que descienda de moScript puede ser asociada a un script de LUA, y desde el mismo pueden ser llamados métodos de la clase (siempre y cuando sean registrados en la máquina virtual).
Definition at line 48 of file moScript.h.
typedef int(* moScript::Function)(moLuaVirtualMachine &vm) |
Definition at line 52 of file moScript.h.
moScript::moScript | ( | ) |
El constructor por defecto.
Definition at line 137 of file moScript.cpp.
|
virtual |
El destructor por defecto.
Definition at line 164 of file moScript.cpp.
void moScript::AddFunctionParam | ( | int | iInt | ) |
Agrega un parámetro entero a la lista de parámetros para pasar a la función del script seleccionada actualmente.
iInt | valor del parámetro entero. |
Definition at line 481 of file moScript.cpp.
void moScript::AddFunctionParam | ( | float | fFloat | ) |
Agrega un parámetro flotante a la lista de parámetros para pasar a la función del script seleccionada actualmente.
fFloat | valor del parámetro flotante. |
Definition at line 505 of file moScript.cpp.
void moScript::AddFunctionParam | ( | char * | string | ) |
Agrega un parámetro de texto a la lista de parámetros para pasar a la función del script seleccionada actualmente.
string | valor del parámetro de texto. |
Definition at line 456 of file moScript.cpp.
bool moScript::CompileBuffer | ( | unsigned char * | pbBuffer, |
size_t | szLen | ||
) |
Compila el búfer pbBuffer.
pbBuffer | búfer a compilar. |
szLen | tamaño del búfer. |
Definition at line 235 of file moScript.cpp.
bool moScript::CompileFile | ( | const char * | strFilename | ) |
Compila el archivo strFilename.
strFilename | nombre del archivo de script. |
Definition at line 261 of file moScript.cpp.
void moScript::FinishScript | ( | ) |
Finaliza el script.
Definition at line 204 of file moScript.cpp.
|
pure virtual |
Esta función es llamada cuando termina la ejecución de una función del script, de manera que da la oportunidad de utilizar los valores devueltos por dicha función.
vm | referencia a la máquina virtual. |
strFunc | nombre de la función en el script. |
Implemented in moMoldeoObject.
void moScript::InitScript | ( | ) |
Inicializa el script con la máquina virtual .
Inicializamos el moLuaVirtualMachine con la funcion estatica del moScriptManager
Definition at line 183 of file moScript.cpp.
|
inline |
Definition at line 74 of file moScript.h.
|
inline |
Devuelve cuantos métodos de la clase han sido registrados en la máquina virtual con RegisterFunction.
Definition at line 153 of file moScript.h.
|
inline |
Devuelve una referencia a la máquina virtual utilizada por este script.
Definition at line 195 of file moScript.h.
|
inlinevirtual |
Definition at line 178 of file moScript.h.
int moScript::RegisterBaseFunction | ( | const char * | strFuncName | ) |
Registra la primera función (método) de la clase en la máquina virtual de LUA. Se debe llamar primero esta función para registrar los métodos dentro e la instancia de una clase Además esta función guarda un registro de la cantidad de veces que se llamo a RegisterFunctions para heredar los métodos de las clases de las que se deriva el objeto
strFuncName | nombre de la función. |
Function was correctly registered so beginning new MethodBase for this derivation
Definition at line 340 of file moScript.cpp.
int moScript::RegisterFunction | ( | const char * | strFuncName, |
moScript::Function & | fun | ||
) |
Registra una función (método) de la clase en la máquina virtual de LUA.
strFuncName | nombre de la función. |
Definition at line 286 of file moScript.cpp.
int moScript::RegisterFunction | ( | const char * | strFuncName | ) |
Definition at line 313 of file moScript.cpp.
|
inlinevirtual |
Esta función es llamada cuando se quiere reiniciar el indice iterativo de métodos una vez encontrada la función para que de esta manera la siguiente búsqueda
vm | referencia a la máquina virtual. |
iFunctionNumber | índice del método siendo llamado. |
Definition at line 172 of file moScript.h.
bool moScript::RunSelectedFunction | ( | int | nReturns = 0 | ) |
Ejecuta la función del script LUA seleccionada con SelectScriptFunction.
nReturns | número esperado de valores a devolver por la función. |
Definition at line 529 of file moScript.cpp.
|
pure virtual |
Esta función es llamada cuando en el LUA script un método registrado de la clase es ejecutado.
vm | referencia a la máquina virtual. |
iFunctionNumber | índice del método siendo llamado. |
Implemented in moMoldeoObject, moConsole, and moEffect.
bool moScript::ScriptHasFunction | ( | const char * | strScriptName | ) |
Revisa que el script tenga la función especificada.
strFuncName | nombre de la función. |
Definition at line 417 of file moScript.cpp.
bool moScript::SelectScriptFunction | ( | const char * | strFuncName | ) |
Selecciona una función del script LUA para ejecutar con RunSelectedFunction.
strFuncName | nombre de la función a seleccionar. |
Definition at line 370 of file moScript.cpp.
Function moScript::Functions[255] |
Definition at line 54 of file moScript.h.
|
staticprotected |
Definition at line 200 of file moScript.h.
|
protected |
Definition at line 206 of file moScript.h.
|
protected |
actual class iterator index method base
Definition at line 209 of file moScript.h.
|
protected |
actual class index method base
Definition at line 207 of file moScript.h.
|
protected |
Definition at line 197 of file moScript.h.
|
protected |
Definition at line 201 of file moScript.h.
|
protected |
increment on each call to RegisterFunctions
Definition at line 210 of file moScript.h.
|
protected |
Definition at line 202 of file moScript.h.
|
protected |
Definition at line 198 of file moScript.h.
|
protected |
Definition at line 203 of file moScript.h.
|
staticprotected |
Definition at line 199 of file moScript.h.