Public Member Functions | Static Public Member Functions

# USpeedGameEngine::Lua Class Reference

Classe d'interprêteur du langage Lua. More...

List of all members.

## Public Member Functions

| Lua ()
| Constructeur par défaut.
| ~Lua ()
| Destructeur par défaut.
bool | prepare ()
| Préparation de l'interprêteur.
void | finish ()
| Libération de l'interprêteur.
bool | isLoaded ()
| État du chargement d'un script.
bool | isReady ()
| État de la machine Lua.
bool | addFunction (std::string const &fctName, int(*theFct)(void *aState))
| Ajout d'une fonction "C" disponible dans le script Lua.
bool | addFunction (std::string const &group, std::string const &fctName, int(*theFct)(void *aState))
| Ajout d'une fonction "C" disponible dans le script Lua incluse dans un éventuel groupe.
bool | load (const char *filename)
| Chargement du script depuis un fichier.
bool | loadFromBuffer (const char *script)
| Chargement du script depuis un tampon mémoire.
bool | run ()
| Exécution script préalablement chargé.

## Static Public Member Functions

static unsigned int | getParametersCount (void *state)
| Retourne le nombre de paramètres passés à la fonction "C".
static void | getString (void *state, unsigned int index, std::string &target)
| Retourne le paramètre spécifié sous forme de chaîne de caractères (si possible).
static double | getNumber (void *state, unsigned int index)
| Retourne le paramètre spécifié sous forme de nombre (si possible).
static bool | getBool (void *state, unsigned int index)
| Retourne le paramètre spécifié sous forme de bouléen (si possible).
static const void * | getPointer (void *state, unsigned int index)
| Retourne le paramètre spécifié sous forme de pointeur (si possible).
static bool | returnString (void *state, std::string const &str)
| Ajoute la variable spécifiée sous forme de chaîne de caractères.
static bool | returnNumber (void *state, double nbr)
| Ajoute la variable spécifiée sous forme de nombre.
static bool | returnBool (void *state, bool aBool)
| Ajoute la variable spécifiée sous forme de bouléen.
static bool | returnPointer (void *state, void *ptr)
| Ajoute la variable spécifiée sous forme de pointeur.
static bool | returnTable (void *state, std::vector< std::string > const &table)
| Ajoute la variable spécifiée sous forme de tableau de chaînes de caractères.

## Detailed Description

Classe d'interprêteur du langage Lua.

Author:
  U.Speed

## Constructor & Destructor Documentation

Lua::Lua | ( |  | ) |

Constructeur par défaut.

Author:
  U.Speed

Lua::~Lua | ( |  | ) |

Destructeur par défaut.

Author:
  U.Speed

## Member Function Documentation

bool Lua::addFunction | ( | std::string const & | fctName,
|  | int(*)(void *aState) | theFct |
| ) |  |  |

Ajout d'une fonction "C" disponible dans le script Lua.

Il faut que l'état de la machine Lua soit prêt (Lua::prepare() == true) et qu'aucun script ne soit chargé (Lua::isLoaded() == false).

Author:
  U.Speed

See also:
  bool Lua::addFunction(std::string const &group, std::string const &fctName, int(*theFct)(void *aState))

Parameters:

  | fctName | std::string const& : nom de la fonction
  | theFct | int(*)(void *aState) : le pointeur de fonction

Returns:
  bool : `true` pour un ajout réussi

bool Lua::addFunction | ( | std::string const & | group,
|  | std::string const & | fctName,
|  | int(*)(void *aState) | theFct |
| ) |  |  |

Ajout d'une fonction "C" disponible dans le script Lua incluse dans un éventuel groupe.

Il faut que l'état de la machine Lua soit prêt (Lua::prepare() == true) et qu'aucun script ne soit chargé (Lua::isLoaded() == false).
Par le biais du groupe, il est possible de créer une liste de fonction sous un "namespace".
Par exemple, avec l'appel suivant : `addFunction("groupe", "fonction", ptrFunction);`, il sera possible d'appeler dans le code Lua la fonction `groupe.function()`.

Author:
  U.Speed

Parameters:

  | group | std::string const& : le groupe (peut être vide)
  | fctName | std::string const& : nom de la fonction
  | theFct | int(*)(void *aState) : le pointeur de fonction

Returns:
  bool : `true` pour un ajout réussi

void Lua::finish | ( |  | ) |

Libération de l'interprêteur.

Author:
  U.Speed

bool Lua::getBool | ( | void * | state,
|  | unsigned int | index |
| ) |  |  | `[static]`

Retourne le paramètre spécifié sous forme de bouléen (si possible).

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | index | unsigned int : le n° du paramètre (entre 1 et le nombre de paramètres compris)

Returns:
  bool : `true` ou `false` (fpar défaut, retourne `false`)

double Lua::getNumber | ( | void * | state,
|  | unsigned int | index |
| ) |  |  | `[static]`

Retourne le paramètre spécifié sous forme de nombre (si possible).

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | index | unsigned int : le n° du paramètre (entre 1 et le nombre de paramètres compris)

Returns:
  double : le nombre (peut être 0.0f)

unsigned int Lua::getParametersCount | ( | void * | state | ) | `[static]`

Retourne le nombre de paramètres passés à la fonction "C".

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)

Returns:
  le nombre de paramètre

const void * Lua::getPointer | ( | void * | state,
|  | unsigned int | index |
| ) |  |  | `[static]`

Retourne le paramètre spécifié sous forme de pointeur (si possible).

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | index | unsigned int : le n° du paramètre (entre 1 et le nombre de paramètres compris)

Returns:
  bool : le pointeur (peut être nul)

void Lua::getString | ( | void * | state,
|  | unsigned int | index,
|  | std::string & | target |
| ) |  |  | `[static]`

Retourne le paramètre spécifié sous forme de chaîne de caractères (si possible).

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | index | unsigned int : le n° du paramètre (entre 1 et le nombre de paramètres compris)
  | target | std::string& : le "<code>string</code>" d'accueil (cible)

bool Lua::isLoaded | ( |  | ) |

État du chargement d'un script.

Author:
  U.Speed

Returns:
  bool : `true` si un script est prêt à l'exécution.

bool Lua::isReady | ( |  | ) |

État de la machine Lua.

Author:
  U.Speed

Returns:
  bool : `true` si la machine est prête.

bool Lua::load | ( | const char * | filename | ) |

Chargement du script depuis un fichier.

Author:
  U.Speed

See also:
  bool Lua::loadFromBuffer(const char *script)

Parameters:

  | filename | const char* : le nom du fichier à lire.

Returns:
  bool : `true` chargement terminé sans erreur.

bool Lua::loadFromBuffer | ( | const char * | script | ) |

Chargement du script depuis un tampon mémoire.

Author:
  U.Speed

Parameters:

  | script | const char* : le script à exécuter.

Returns:
  bool : `true` chargement terminé sans erreur.

bool Lua::prepare | ( |  | ) |

Préparation de l'interprêteur.

Author:
  U.Speed

Returns:
  bool : `true` si l'initialisation a réussi

bool Lua::returnBool | ( | void * | state,
|  | bool | aBool |
| ) |  |  | `[static]`

Ajoute la variable spécifiée sous forme de bouléen.

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | aBool | bool : le bouléen

Returns:
  bool : `true` si l'ajout a été réalisé.

bool Lua::returnNumber | ( | void * | state,
|  | double | nbr |
| ) |  |  | `[static]`

Ajoute la variable spécifiée sous forme de nombre.

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | nbr | double : le nombre

Returns:
  bool : `true` si l'ajout a été réalisé.

bool Lua::returnPointer | ( | void * | state,
|  | void * | ptr |
| ) |  |  | `[static]`

Ajoute la variable spécifiée sous forme de pointeur.

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | ptr | void* : le pointeur

Returns:
  bool : `true` si l'ajout a été réalisé.

bool Lua::returnString | ( | void * | state,
|  | std::string const & | str |
| ) |  |  | `[static]`

Ajoute la variable spécifiée sous forme de chaîne de caractères.

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | str | std::string const& : la chaîne de caractères

Returns:
  bool : `true` si l'ajout a été réalisé.

bool Lua::returnTable | ( | void * | state,
|  | std::vector< std::string > const & | table |
| ) |  |  | `[static]`

Ajoute la variable spécifiée sous forme de tableau de chaînes de caractères.

Author:
  U.Speed

Parameters:

  | state | void* : l'état LUA (passé obligatoirement à la fonction)
  | table | std::vector<std::string> const& : la chaîne de caractères

Returns:
  bool : `true` si l'ajout a été réalisé.

bool Lua::run | ( |  | ) |

Exécution script préalablement chargé.

Il faut que l'état de la machine Lua soit OK et qu'un script soit chargé.

Author:
  U.Speed

Returns:
  bool : `true` exécution terminée sans erreur.

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

- src/Lua/Lua.hpp
- src/Lua/Lua.cpp
- src/Lua/Lua_addFunction.cpp
- src/Lua/Lua_finish.cpp
- src/Lua/Lua_getBool.cpp
- src/Lua/Lua_getNumber.cpp
- src/Lua/Lua_getParametersCount.cpp
- src/Lua/Lua_getPointer.cpp
- src/Lua/Lua_getString.cpp
- src/Lua/Lua_isLoaded.cpp
- src/Lua/Lua_isReady.cpp
- src/Lua/Lua_load.cpp
- src/Lua/Lua_loadFromBuffer.cpp
- src/Lua/Lua_prepare.cpp
- src/Lua/Lua_returnBool.cpp
- src/Lua/Lua_returnNumber.cpp
- src/Lua/Lua_returnPointer.cpp
- src/Lua/Lua_returnString.cpp
- src/Lua/Lua_returnTable.cpp
- src/Lua/Lua_run.cpp