framebuffer: expose viewport getters/setters

This exposes experimental cogl_framebuffer APIs for getting and setting
a viewport without having to refer to the implicit CoglContext. It adds
the following experimental API:

  cogl_framebuffer_set_viewport
  cogl_framebuffer_get_viewport4fv
  cogl_framebuffer_get_viewport_x
  cogl_framebuffer_get_viewport_y
  cogl_framebuffer_get_viewport_width
  cogl_framebuffer_get_viewport_height

Signed-off-by: Neil Roberts <neil@linux.intel.com>
This commit is contained in:
Robert Bragg
2011-06-15 00:06:29 +01:00
parent 716b88b0c8
commit c4eb869bd7
6 changed files with 48 additions and 42 deletions

View File

@ -507,11 +507,11 @@ _cogl_framebuffer_set_clip_stack (CoglFramebuffer *framebuffer,
}
void
_cogl_framebuffer_set_viewport (CoglFramebuffer *framebuffer,
float x,
float y,
float width,
float height)
cogl_framebuffer_set_viewport (CoglFramebuffer *framebuffer,
float x,
float y,
float width,
float height)
{
g_return_if_fail (width > 0 && height > 0);
@ -533,32 +533,32 @@ _cogl_framebuffer_set_viewport (CoglFramebuffer *framebuffer,
}
float
_cogl_framebuffer_get_viewport_x (CoglFramebuffer *framebuffer)
cogl_framebuffer_get_viewport_x (CoglFramebuffer *framebuffer)
{
return framebuffer->viewport_x;
}
float
_cogl_framebuffer_get_viewport_y (CoglFramebuffer *framebuffer)
cogl_framebuffer_get_viewport_y (CoglFramebuffer *framebuffer)
{
return framebuffer->viewport_y;
}
float
_cogl_framebuffer_get_viewport_width (CoglFramebuffer *framebuffer)
cogl_framebuffer_get_viewport_width (CoglFramebuffer *framebuffer)
{
return framebuffer->viewport_width;
}
float
_cogl_framebuffer_get_viewport_height (CoglFramebuffer *framebuffer)
cogl_framebuffer_get_viewport_height (CoglFramebuffer *framebuffer)
{
return framebuffer->viewport_height;
}
void
_cogl_framebuffer_get_viewport4fv (CoglFramebuffer *framebuffer,
float *viewport)
cogl_framebuffer_get_viewport4fv (CoglFramebuffer *framebuffer,
float *viewport)
{
viewport[0] = framebuffer->viewport_x;
viewport[1] = framebuffer->viewport_y;