From 6d5ef1f8ed4c97814718dead6e6949704217a66d Mon Sep 17 00:00:00 2001 From: Comment Date: Thu, 7 Nov 2013 20:33:53 +0000 Subject: loader wrangling --- rotord/src/graph.cpp | 3 ++- rotord/src/rotor.h | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rotord/src/graph.cpp b/rotord/src/graph.cpp index 9544446..6409ff6 100644 --- a/rotord/src/graph.cpp +++ b/rotord/src/graph.cpp @@ -333,7 +333,7 @@ bool Graph::parseJson(string &data,string &media_path){ } if (attr->type=="string") { val=jnodes[i]["attributes"][m]["value"].asString(); - attr->value=val; + attr->init(val); } if (attr->type=="array"){ std::vector vals; @@ -344,6 +344,7 @@ bool Graph::parseJson(string &data,string &media_path){ } attr->init(vals); } + node->init_attribute(jnodes[i]["attributes"][m]["name"].asString()); //hook for attribute initialisers //cerr << "Rotor: setting attribute '"<type<<" to "<type<<" to "<intVal); }; - virtual void init_attribute(const string &attr){}; + virtual void init_attribute(const string &attr){ + }; string description; string type; string ID; @@ -566,6 +567,7 @@ namespace Rotor { }; Video_loader(map &settings): Video_loader() { base_settings(settings); + for (auto a:attributes) cerr<<"Video loader: "<value<value!="") { isLoaded=load(find_setting(settings,"media_path","")+attributes["filename"]->value); } @@ -574,7 +576,7 @@ namespace Rotor { ~Video_loader(){}; void init_attribute(const string &attr){ if (attr=="filename") { - load(attributes["media_path"]->value+attributes[attr]->value); + isLoaded=load(attributes["media_path"]->value+attributes[attr]->value); } }; Video_loader* clone(map &_settings) { return new Video_loader(_settings);}; -- cgit v1.2.3