source: flair-src/trunk/lib/FlairSimulator/src/Parser.h@ 382

Last change on this file since 382 was 302, checked in by Sanahuja Guillaume, 6 years ago

modifs nouveau build system

File size: 1.5 KB
Line 
1// %flair:license{
2// This file is part of the Flair framework distributed under the
3// CECILL-C License, Version 1.0.
4// %flair:license}
5// created: 2013/08/02
6// filename: Parser.h
7//
8// author: César Richard
9// Copyright Heudiasyc UMR UTC/CNRS 7253
10//
11// version: $Id: $
12//
13// purpose: classe chargeant un XML decrivant une map
14//
15/*********************************************************************/
16
17#ifndef PARSER_H
18#define PARSER_H
19
20#include <Gui.h>
21#include <Vector3D.h>
22#include <SColor.h>
23
24//todo make a pimpl to remove these forward declaration
25typedef struct _xmlNode xmlNode;
26typedef unsigned char xmlChar;
27typedef struct _xmlDoc xmlDoc;
28
29namespace flair {
30namespace simulator {
31class Parser : public Gui {
32
33 /*can create:
34 - cylinders: in y axis
35 - fixed cameras
36
37 */
38public:
39 Parser(int app_width, int app_height, int scene_width,
40 int scene_height, std::string media_path, std::string xmlFile);
41 ~Parser();
42
43private:
44 xmlDoc *doc;
45 std::string media_path;
46 void processElements(xmlNode *a_node);
47 void processObjects(xmlNode *a_node);
48 void processParams(xmlNode *a_node);
49 irr::video::SColor getScolor(xmlNode *mesh_node);
50 irr::core::vector3df getMeshVect(xmlNode *mesh_node, xmlChar *param);
51 irr::core::vector3df getSceneVect(xmlNode *mesh_node, xmlChar *param,
52 bool isScale = false);
53 core::Vector3Df getMeshVector3D(xmlNode *mesh_node, xmlChar *param);
54};
55}
56}
57#endif // PARSER_H
Note: See TracBrowser for help on using the repository browser.