29 lines
786 B
C++
29 lines
786 B
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
|
|
#include "xml/tinyxml2.h"
|
|
|
|
class WorkSpace;
|
|
|
|
class WorkSpaceXMLWrite : public QObject {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit WorkSpaceXMLWrite(WorkSpace* workspace, QObject* parent = nullptr) noexcept;
|
|
~WorkSpaceXMLWrite() override = default;
|
|
|
|
bool Save(const QString& path);
|
|
|
|
protected:
|
|
bool SaveScene(tinyxml2::XMLElement* scene);
|
|
bool SaveTimeStep(tinyxml2::XMLElement* scene);
|
|
bool SaveLamp(tinyxml2::XMLElement* scene);
|
|
bool SaveCommond(tinyxml2::XMLElement* scene);
|
|
bool SaveEntities(tinyxml2::XMLElement* scene, tinyxml2::XMLDocument* doc);
|
|
bool SaveChart(tinyxml2::XMLElement* scene, tinyxml2::XMLDocument* doc);
|
|
bool SaveFiles(tinyxml2::XMLElement* scene, tinyxml2::XMLDocument* doc);
|
|
private:
|
|
WorkSpace* workSpace_;
|
|
|
|
}; |