本文整理汇总了C++中XMLParser::writeToXML方法的典型用法代码示例。如果您正苦于以下问题:C++ XMLParser::writeToXML方法的具体用法?C++ XMLParser::writeToXML怎么用?C++ XMLParser::writeToXML使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XMLParser
的用法示例。
在下文中一共展示了XMLParser::writeToXML方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char* argv[]){
XMLParser* xml = new XMLParser();
try{
xml->loadXML(".\\settings.xml");
} catch(std::exception& e){
std::cout << e.what() <<std::endl;
std::cout << "Default values will be applied" <<std::endl;
loadDefaultValues(xml);
xml->writeToXML(".\\settings.xml");
}
GLFWWindow* wnd;
try{
wnd = new GLFWWindow(xml->get<int>("Window", "width"),
xml->get<int>("Window", "height"),
"RayTracer",
xml->get<bool>("Window", "windowed"));
} catch(std::exception& e){
std::cout << e.what() << std::endl;
std::cin.get();
delete xml;
return -1;
}
std::cout << "OpenGL Version: " << glGetString(GL_VERSION) <<std::endl;
if(glewInit() != GLEW_OK){
std::cout << "Could not initialize GLEW!" <<std::endl;
std::cin.get();
delete wnd;
delete xml;
return -1;
} else {
std::cout << "GLEW Version: " << glewGetString(GLEW_VERSION) <<std::endl;
}
GLFWInput* input = new GLFWInput();
GLFWTimer* timer = new GLFWTimer();
int maxFPS = xml->get<int>("Window", "maxFPS");
int width = xml->get<int>("Window", "width");
int height = xml->get<int>("Window", "height");
boost::shared_ptr<TextureRenderer> texRenderer;
boost::shared_ptr<OpenGLRaytracer> ort;
boost::shared_ptr<Texture> tex;
boost::shared_ptr<Scene> scene;
boost::shared_ptr<SceneReader> sceneReader;
boost::shared_ptr<SceneLoader> sceneLoader;
boost::shared_ptr<InputControl> inputControl;
boost::shared_ptr<Camera> camera;
int frameCounter = 0, fps = 0;
int reflectionDepth = xml->get<int>("Raytracing", "reflectionDepth");
bool running = true;
char i = 0;
try{
camera = boost::shared_ptr<Camera>(new Camera(xml->get<int>("Window", "width"), xml->get<int>("Window", "height"), xml->get<float>("Camera", "fovY"),
glm::vec3(xml->get<float>("Camera", "posX"), xml->get<float>("Camera", "posY"),xml->get<float>("Camera", "posZ")),
glm::vec3(xml->get<float>("Camera", "dirX"), xml->get<float>("Camera", "dirY"), xml->get<float>("Camera", "dirZ")),
glm::vec3(xml->get<float>("Camera", "upX"), xml->get<float>("Camera", "upY"), xml->get<float>("Camera", "upZ"))));
tex = boost::shared_ptr<Texture>(new Texture(xml->get<int>("Window", "width"), xml->get<int>("Window", "height"), GL_RGBA8));
texRenderer = boost::shared_ptr<TextureRenderer>(new TextureRenderer(xml->get<int>("Window", "width"), xml->get<int>("Window", "height"), tex));
ort = boost::shared_ptr<OpenGLRaytracer>(new OpenGLRaytracer(tex, (*camera.get()), reflectionDepth));
inputControl = boost::shared_ptr<InputControl>(new InputControl(xml->get<float>("Camera", "velocityRotate"), xml->get<float>("Camera", "velocityTranslate")));
scene = boost::shared_ptr<Scene>(new Scene());
sceneReader = boost::shared_ptr<SceneReader>(new SceneReader());
sceneLoader = boost::shared_ptr<SceneLoader>(new SceneLoader((*ort.get())));
for(int i = 0; i < argc; ++i){
sceneReader->readScene((std::string(".\\")+std::string(argv[i])).c_str(), (*scene.get()));
sceneLoader->loadScene((*scene.get()), (*ort.get()));
scene->clear();
}
while(running){
glGetError();
if(timer->getTimeDiffWithoutActualization() > static_cast<double>(1.0)/static_cast<double>(maxFPS)){
timer->getTimeDiff();
inputControl->processInput((*camera.get()), reflectionDepth);
camera->update();
ort->renderScene((*camera.get()), width, height, reflectionDepth);
texRenderer->draw();
wnd->swapBuffers();
if(input->isKeyPressed(GLFW_KEY_ESC)){
running = false;
}
frameCounter++;
//.........这里部分代码省略.........
示例2: main
int main() {
LPTSTR path = new TCHAR[100];
GetModuleFileName(HINST_THISCOMPONENT,path, 100);
std::cout << "Executing: " << path << std::endl;
XMLParser* xml = new XMLParser();
try {
xml->loadXML(".\\particles.xml");
} catch(std::exception& e) {
std::cout << e.what() <<std::endl;
std::cout << "Default values will be applied!" <<std::endl;
loadDefaultValues(xml);
try {
xml->writeToXML(".\\particles.xml");
} catch(std::exception& e) {
std::cout << e.what() <<std::endl;
}
}
GLFWWindow* wnd;
try {
wnd = new GLFWWindow(xml->get<int>("Window", "width"),
xml->get<int>("Window", "height"),
"OpenGL_4.3_Particle_System",
xml->get<bool>("Window", "windowed"));
} catch(std::exception& e) {
std::cout << e.what() <<std::endl;
std::cin.get();
delete xml;
return -1;
}
std::cout << "OpenGL Version: " << glGetString(GL_VERSION) << std::endl;
if(glewInit() != GLEW_OK) {
std::cout << "Could not initialize GLEW!" <<std::endl;
std::cin.get();
delete wnd;
delete xml;
return -1;
} else {
std::cout << "GLEW Version: " <<glewGetString(GLEW_VERSION) <<std::endl;
}
ParticleSystem* ps;
try {
ps = new ParticleSystem(xml->get<int>("Particles", "maxParticles"),
xml->get<int>("Particles", "iniRadius"),
xml->get<float>("Particles", "quadLength"),
xml->get<int>("Window", "maxFPS"),
xml->get<float>("Camera", "translation_velocity"),
xml->get<float>("Camera", "rotation_velocity"));
} catch(std::exception& e) {
std::cout << e.what() <<std::endl;
std::cin.get();
delete wnd;
delete xml;
return -1;
}
delete xml;
try {
ps->run(wnd);
} catch(std::exception& e) {
std::cout << e.what() <<std::endl;
std::cin.get();
}
delete ps;
delete wnd;
return 0;
}