#include <Scene.h>
Inherits CExpatImpl< Scene >.
Public Member Functions | |
Scene (const char *filename) | |
Cree une scene a partir d'un fichier de scene. | |
vector< char * > | getHeightmapsNames () |
Renvoie la liste des heightmaps de la scene. | |
unsigned int | getSizeX () |
Renvoie le nombre de heightmaps de la scene selon X. | |
unsigned int | getSizeY () |
Renvoie le nombre de heightmaps de la scene selon Y. | |
unsigned int | getNbPatchX () |
Renvoie le nombre de patchs du terrain selon X. | |
unsigned int | getNbPatchY () |
Renvoie le nombre de patchs du terrain selon Y. | |
float * | getSunPosition () |
Renvoie la position du soleil pour la scene. | |
void | OnStartElement (const XML_Char *pszName, const XML_Char **papszAttrs) |
Fonction de parsing d'une balise. | |
void | OnEndElement (const XML_Char *pszName) |
Callback indiquant la fermeture d'une balise. | |
Static Public Member Functions | |
static void | initStates () |
Initialise la liste des etats du parser. | |
Private Member Functions | |
void | onEnter__Scene (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <scene>. | |
void | onEnter__AllowedShaders (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <allowedshaders>. | |
void | onEnter__Shader (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <shader>. | |
void | onEnter__ForceTexture (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <forcetexture>. | |
void | onEnter__Terrain (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <terrain>. | |
void | onEnter__OnLatitude (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <onlatitude>. | |
void | onEnter__OnLongitude (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <onlongitude>. | |
void | onEnter__File (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <file>. | |
void | onEnter__Sun (const XML_Char **papszAttrs) |
Fonction de lecture de la balise <sun>. | |
Static Private Member Functions | |
static void | addState (const char *name, unsigned int enterState, unsigned int ownState, unsigned int endState, void(*action)(void *, const XML_Char **)) |
Fonction d'ajout d'un etat au parser. | |
static void | stat_onEnter__Scene (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <scene>. | |
static void | stat_onEnter__AllowedShaders (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <allowedshaders>. | |
static void | stat_onEnter__Shader (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <shader>. | |
static void | stat_onEnter__ForceTexture (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <forcetexture>. | |
static void | stat_onEnter__Terrain (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <terrain>. | |
static void | stat_onEnter__OnLatitude (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <onlatitude>. | |
static void | stat_onEnter__OnLongitude (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <onlongitude>. | |
static void | stat_onEnter__File (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <file>. | |
static void | stat_onEnter__Sun (void *obj, const XML_Char **papszAttrs) |
Callback de lecture de la balise <sun>. | |
Private Attributes | |
vector< heightMapInfoPtr > | heightMaps |
Liste des definitions de heightmaps du fichier. | |
vector< sceneShaderInfoPtr > | sceneShaders |
Liste des definitions de shaders utilisables du fichier. | |
unsigned int | nbPatchX |
Nombre de patches selon X pour le terrain de la scene. | |
unsigned int | nbPatchY |
Nombre de patches selon Y pour le terrain de la scene. | |
unsigned int | loaderState |
Etat du parser. | |
unsigned int | sizeX |
Nombre de heightmaps selon X definies dans la scene. | |
unsigned int | sizeY |
Nombre de heightmaps selon Y definies dans la scene. | |
float | sunPosition [3] |
Position du soleil definie dans le fichier. | |
sceneShaderInfoPtr | currentSsi |
Structure d'informations courante sur un shader en cours de lecture. | |
unsigned int | currentLat |
Latitude courante des heightmaps en cours de lecture. | |
unsigned int | currentLatSide |
Cote de latitude courant des heightmaps en cours de lecture. | |
unsigned int | currentLong |
Longitude courante des heightmaps en cours de lecture. | |
unsigned int | currentLongSide |
Cote de longitude courant des heightmaps en cours de lecture. | |
Static Private Attributes | |
static map< const char *, stateInfoPtr, ltstr > | states |
Liste des etats du parser. |
Cette classe lit un fichier XML de scene en parsant le fichier balise par balise. Pour cela, la classe se comporte comme une machine a etat, avec pour chaque etat une fonction definie permettant de lire la balise et de stocker les donnees lues. Pour ajouter une balise dans le fichier, il suffit juste d'ajouter une fonction correspondante et de definir cet etat.
|
Cree une scene a partir d'un fichier de scene.
|
|
Fonction d'ajout d'un etat au parser.
|
|
Renvoie la liste des heightmaps de la scene.
|
|
Renvoie le nombre de patchs du terrain selon X.
|
|
Renvoie le nombre de patchs du terrain selon Y.
|
|
Renvoie le nombre de heightmaps de la scene selon X.
|
|
Renvoie le nombre de heightmaps de la scene selon Y.
|
|
Renvoie la position du soleil pour la scene.
|
|
Initialise la liste des etats du parser. Cette fonction doit etre appelee avant toute lecture de fichier de scene. |
|
Callback indiquant la fermeture d'une balise.
Reimplemented from CExpatImpl< Scene >. |
|
Fonction de lecture de la balise <allowedshaders>.
|
|
Fonction de lecture de la balise <file>.
|
|
Fonction de lecture de la balise <forcetexture>.
|
|
Fonction de lecture de la balise <onlatitude>.
|
|
Fonction de lecture de la balise <onlongitude>.
|
|
Fonction de lecture de la balise <scene>.
|
|
Fonction de lecture de la balise <shader>.
|
|
Fonction de lecture de la balise <sun>.
|
|
Fonction de lecture de la balise <terrain>.
|
|
Fonction de parsing d'une balise.
Reimplemented from CExpatImpl< Scene >. |
|
Callback de lecture de la balise <allowedshaders>.
|
|
Callback de lecture de la balise <file>.
|
|
Callback de lecture de la balise <forcetexture>.
|
|
Callback de lecture de la balise <onlatitude>.
|
|
Callback de lecture de la balise <onlongitude>.
|
|
Callback de lecture de la balise <scene>.
|
|
Callback de lecture de la balise <shader>.
|
|
Callback de lecture de la balise <sun>.
|
|
Callback de lecture de la balise <terrain>.
|
|
Latitude courante des heightmaps en cours de lecture.
|
|
Cote de latitude courant des heightmaps en cours de lecture.
|
|
Longitude courante des heightmaps en cours de lecture.
|
|
Cote de longitude courant des heightmaps en cours de lecture.
|
|
Structure d'informations courante sur un shader en cours de lecture.
|
|
Liste des definitions de heightmaps du fichier.
|
|
Etat du parser.
|
|
Nombre de patches selon X pour le terrain de la scene.
|
|
Nombre de patches selon Y pour le terrain de la scene.
|
|
Liste des definitions de shaders utilisables du fichier.
|
|
Nombre de heightmaps selon X definies dans la scene.
|
|
Nombre de heightmaps selon Y definies dans la scene.
|
|
Liste des etats du parser.
|
|
Position du soleil definie dans le fichier.
|