]> git.tdb.fi Git - libs/gl.git/blobdiff - source/framebuffer.cpp
Rework exceptions
[libs/gl.git] / source / framebuffer.cpp
index 3ac742bd209fd0e89c05d723c082524b4799c02c..6877f4808b7402c7f1660097c3860bb7fcbbe5bc 100644 (file)
@@ -1,3 +1,4 @@
+#include "error.h"
 #include "extension.h"
 #include "ext_framebuffer_blit.h"
 #include "ext_framebuffer_object.h"
@@ -16,7 +17,7 @@ Framebuffer::Framebuffer(unsigned i):
        dirty(0)
 {
        if(id)
-               throw InvalidParameterValue("System framebuffer must have id 0");
+               throw invalid_argument("System framebuffer must have id 0");
 
        int viewport[4];
        glGetIntegerv(GL_VIEWPORT, viewport);
@@ -98,7 +99,7 @@ void Framebuffer::check_size()
 void Framebuffer::attach(FramebufferAttachment attch, Renderbuffer &rbuf)
 {
        if(!id)
-               throw InvalidState("Can't attach to system framebuffer");
+               throw invalid_operation("Framebuffer::attach");
 
        unsigned i = get_attachment_index(attch);
        attachments[i].set(rbuf);
@@ -109,7 +110,7 @@ void Framebuffer::attach(FramebufferAttachment attch, Renderbuffer &rbuf)
 void Framebuffer::attach(FramebufferAttachment attch, Texture2D &tex, unsigned level)
 {
        if(!id)
-               throw InvalidState("Can't attach to system framebuffer");
+               throw invalid_operation("Framebuffer::attach");
 
        unsigned i = get_attachment_index(attch);
        attachments[i].set(tex, level);
@@ -120,7 +121,7 @@ void Framebuffer::attach(FramebufferAttachment attch, Texture2D &tex, unsigned l
 void Framebuffer::detach(FramebufferAttachment attch)
 {
        if(!id)
-               throw InvalidState("Can't detach from system framebuffer");
+               throw invalid_operation("Framebuffer::detach");
 
        unsigned i = get_attachment_index(attch);
        attachments[i].clear();