diff options
Diffstat (limited to 'o3d/serializer/cross/serializer.cc')
-rw-r--r-- | o3d/serializer/cross/serializer.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/o3d/serializer/cross/serializer.cc b/o3d/serializer/cross/serializer.cc index 96dd01b..5e70c67 100644 --- a/o3d/serializer/cross/serializer.cc +++ b/o3d/serializer/cross/serializer.cc @@ -49,6 +49,7 @@ #include "core/cross/transform.h" #include "import/cross/destination_buffer.h" #include "import/cross/iarchive_generator.h" +#include "import/cross/json_object.h" #include "import/cross/memory_buffer.h" #include "import/cross/memory_stream.h" #include "serializer/cross/version.h" @@ -221,6 +222,7 @@ class PropertiesVisitor : public VisitorBase<PropertiesVisitor> { Enable<Curve>(&PropertiesVisitor::Visit); Enable<Element>(&PropertiesVisitor::Visit); Enable<NamedObject>(&PropertiesVisitor::Visit); + Enable<JSONObject>(&PropertiesVisitor::Visit); Enable<Pack>(&PropertiesVisitor::Visit); Enable<Primitive>(&PropertiesVisitor::Visit); Enable<Shape>(&PropertiesVisitor::Visit); @@ -252,6 +254,11 @@ class PropertiesVisitor : public VisitorBase<PropertiesVisitor> { Serialize(writer_, element->owner()); } + void Visit(JSONObject* object) { + Visit(static_cast<ParamObject*>(object)); + object->Serialize(writer_); + } + void Visit(NamedObject* object) { Visit(static_cast<ObjectBase*>(object)); @@ -624,8 +631,6 @@ class BinaryVisitor : public VisitorBase<BinaryVisitor> { void Visit(ObjectBase* object) { } - // TODO: Replace this when we have code to serialize to the - // final binary format. This is just placeholder. void Visit(Curve* curve) { Visit(static_cast<NamedObject*>(curve)); |