]> git.tdb.fi Git - libs/gl.git/blobdiff - source/resource.cpp
Foundation for a resource management system
[libs/gl.git] / source / resource.cpp
diff --git a/source/resource.cpp b/source/resource.cpp
new file mode 100644 (file)
index 0000000..c2cf94d
--- /dev/null
@@ -0,0 +1,27 @@
+#include "resource.h"
+#include "resourcemanager.h"
+
+namespace Msp {
+namespace GL {
+
+Resource::Resource():
+       manager(0)
+{ }
+
+Resource::~Resource()
+{
+       if(manager)
+               manager->remove_resource(*this);
+}
+
+void Resource::set_manager(ResourceManager *m)
+{
+       if(manager)
+               manager->remove_resource(*this);
+       manager = m;
+       if(manager)
+               manager->add_resource(*this);
+}
+
+} // namespace GL
+} // namespace Msp