]> git.tdb.fi Git - libs/gl.git/commitdiff
mspdatafile APIs have changed slightly
authorMikko Rasa <tdb@tdb.fi>
Tue, 6 Sep 2011 20:49:10 +0000 (23:49 +0300)
committerMikko Rasa <tdb@tdb.fi>
Tue, 6 Sep 2011 20:50:40 +0000 (23:50 +0300)
source/font.cpp
source/object.cpp
source/renderpass.cpp
source/technique.cpp

index 33c1584b53ab4ed5712b9ee876b101ecc8d581c4..c96ec7507aeee520962acf37fcdb2c4a997f4a17 100644 (file)
@@ -145,7 +145,7 @@ void Font::Loader::texture()
 
 void Font::Loader::texture_ref(const string &name)
 {
-       obj.texture = get_collection().get<Texture2D>(name);
+       obj.texture = &get_collection().get<Texture2D>(name);
        obj.texture.keep();
 }
 
index 1e94d7ccf96b741c2c0b4c1d3efec60ff86a773f..5aec7e744a3ce308c8b818edb76c8ce4a8a39abd 100644 (file)
@@ -117,8 +117,6 @@ Object::Loader::Loader(Object &o, Collection &c):
 
 void Object::Loader::init()
 {
-       allow_pointer_reload = false;
-
        add("mesh",     &Loader::mesh_inline);
        add("mesh",     &Loader::mesh_inline_lod);
        add("mesh",     &Loader::mesh);
@@ -152,12 +150,12 @@ void Object::Loader::mesh_inline_lod(unsigned l)
 
 void Object::Loader::mesh(const std::string &n)
 {
-       obj.set_mesh(get_collection().get<Mesh>(n));
+       obj.set_mesh(&get_collection().get<Mesh>(n));
 }
 
 void Object::Loader::mesh_lod(unsigned l, const string &n)
 {
-       obj.set_mesh(l, get_collection().get<Mesh>(n));
+       obj.set_mesh(l, &get_collection().get<Mesh>(n));
 }
 
 void Object::Loader::technique_inline()
@@ -172,7 +170,7 @@ void Object::Loader::technique_inline()
 
 void Object::Loader::technique(const std::string &n)
 {
-       obj.set_technique(get_collection().get<Technique>(n));
+       obj.set_technique(&get_collection().get<Technique>(n));
 }
 
 } // namespace GL
index 93538d48d64e013f948c33cee22eee989adc0c3b..fc2d37ed1a72d6a6a46335f50b46db09bd96bd6a 100644 (file)
@@ -1,4 +1,3 @@
-#include <msp/core/refptr.h>
 #include <msp/datafile/collection.h>
 #include <msp/strings/format.h>
 #include "error.h"
@@ -74,8 +73,6 @@ RenderPass::Loader::Loader(RenderPass &p, Collection &c):
 
 void RenderPass::Loader::init()
 {
-       allow_pointer_reload = false;
-
        add("shader",   &RenderPass::shprog);
        add("material", &Loader::material_inline);
        add("material", &Loader::material);
@@ -93,7 +90,7 @@ void RenderPass::Loader::material_inline()
 
 void RenderPass::Loader::material(const string &name)
 {
-       obj.material = get_collection().get<Material>(name);
+       obj.material = &get_collection().get<Material>(name);
        obj.material.keep();
 }
 
@@ -151,7 +148,7 @@ void RenderPass::TextureLoader::texenv()
 
 void RenderPass::TextureLoader::texture(const string &name)
 {
-       tex = get_collection().get<Texture>(name);
+       tex = &get_collection().get<Texture>(name);
        tex.keep();
 }
 
index b809abdebb69fdcf4d1a015473285713d5c297f6..fcb2ffe58358c1ca65d57498a8050fb2c8e27cb6 100644 (file)
@@ -49,7 +49,7 @@ void Technique::Loader::init()
 
 void Technique::Loader::inherit(const string &n)
 {
-       obj.passes = get_collection().get<Technique>(n)->get_passes();
+       obj.passes = get_collection().get<Technique>(n).get_passes();
        InheritLoader ldr(obj, get_collection());
        load_sub_with(ldr);
 }
@@ -74,13 +74,13 @@ Technique::InheritLoader::InheritLoader(Technique &t, Collection &c):
 
 void Technique::InheritLoader::texture(const std::string &slot, const string &name)
 {
-       Texture *tex = get_collection().get<Texture>(name);
+       Texture &tex = get_collection().get<Texture>(name);
        for(PassMap::iterator i=obj.passes.begin(); i!=obj.passes.end(); ++i)
        {
                int index = i->second.get_texture_index(slot);
                if(index<0)
                        continue;
-               i->second.set_texture(index, tex);
+               i->second.set_texture(index, &tex);
        }
 }