summaryrefslogtreecommitdiff
path: root/slicer/xml/serializer.h
diff options
context:
space:
mode:
Diffstat (limited to 'slicer/xml/serializer.h')
-rw-r--r--slicer/xml/serializer.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/slicer/xml/serializer.h b/slicer/xml/serializer.h
index a57e846..c580cde 100644
--- a/slicer/xml/serializer.h
+++ b/slicer/xml/serializer.h
@@ -21,6 +21,16 @@ namespace Slicer {
static void ModelTreeProcessElement(xmlpp::Element * n, ModelPartPtr mp, const ElementCreator &);
};
+ class XmlStreamSerializer : public XmlSerializer {
+ public:
+ DLL_PUBLIC XmlStreamSerializer(std::ostream &);
+
+ virtual void Serialize(ModelPartPtr) override;
+
+ private:
+ std::ostream & strm;
+ };
+
class XmlFileSerializer : public XmlSerializer {
public:
DLL_PUBLIC XmlFileSerializer(const boost::filesystem::path &);
@@ -47,6 +57,16 @@ namespace Slicer {
static void DocumentTreeIterate(const xmlpp::Document * doc, ModelPartPtr mp);
};
+ class XmlStreamDeserializer : public XmlDeserializer {
+ public:
+ DLL_PUBLIC XmlStreamDeserializer(std::istream &);
+
+ virtual void Deserialize(ModelPartPtr) override;
+
+ private:
+ std::istream & strm;
+ };
+
class XmlFileDeserializer : public XmlDeserializer {
public:
DLL_PUBLIC XmlFileDeserializer(const boost::filesystem::path &);