1afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill//
2afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// Copyright (c) 2014 The ANGLE Project Authors. All rights reserved.
3afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// Use of this source code is governed by a BSD-style license that can be
4afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// found in the LICENSE file.
5afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill//
6afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
7afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// FramebufferAttachment.cpp: the gl::FramebufferAttachment class and its derived classes
8afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// objects and related functionality. [OpenGL ES 2.0.24] section 4.4.3 page 108.
9afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
10afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "libGLESv2/FramebufferAttachment.h"
11afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "libGLESv2/Texture.h"
120b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang#include "libGLESv2/formatutils.h"
130b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang#include "libGLESv2/Renderbuffer.h"
140b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang#include "libGLESv2/renderer/RenderTarget.h"
15afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "libGLESv2/renderer/Renderer.h"
166518fe2466f816f9da9f72d7be6ed7962226bdf9Brandon Jones#include "libGLESv2/renderer/d3d/TextureStorage.h"
170b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang
18afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "common/utilities.h"
19afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
20afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madillnamespace gl
21afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
22afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
23e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill////// FramebufferAttachment Implementation //////
24e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill
25aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie MadillFramebufferAttachment::FramebufferAttachment(GLenum binding)
26aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill    : mBinding(binding)
27afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
28afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
29afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
30e261b44af7631c31ddca8601490e7445af5a3341Jamie MadillFramebufferAttachment::~FramebufferAttachment()
31afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
32afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
33afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
34e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getRedSize() const
35afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
365d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return (GetInternalFormatInfo(getInternalFormat()).redBits > 0) ? GetInternalFormatInfo(getActualFormat()).redBits : 0;
37afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
38afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
39e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getGreenSize() const
40e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{
415d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return (GetInternalFormatInfo(getInternalFormat()).greenBits > 0) ? GetInternalFormatInfo(getActualFormat()).greenBits : 0;
42e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill}
43afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
44e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getBlueSize() const
45afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
465d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return (GetInternalFormatInfo(getInternalFormat()).blueBits > 0) ? GetInternalFormatInfo(getActualFormat()).blueBits : 0;
47afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
48afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
49e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getAlphaSize() const
50afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
515d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return (GetInternalFormatInfo(getInternalFormat()).alphaBits > 0) ? GetInternalFormatInfo(getActualFormat()).alphaBits : 0;
52afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
53afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
54e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getDepthSize() const
55afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
565d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return (GetInternalFormatInfo(getInternalFormat()).depthBits > 0) ? GetInternalFormatInfo(getActualFormat()).depthBits : 0;
57afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
58afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
59e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getStencilSize() const
60afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
615d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return (GetInternalFormatInfo(getInternalFormat()).stencilBits > 0) ? GetInternalFormatInfo(getActualFormat()).stencilBits : 0;
62e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill}
63e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill
64e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLenum FramebufferAttachment::getComponentType() const
65e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{
665d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return GetInternalFormatInfo(getActualFormat()).componentType;
67e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill}
68e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill
69e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLenum FramebufferAttachment::getColorEncoding() const
70e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{
715d601382b51c29d1670b58c01360416bd929842dGeoff Lang    return GetInternalFormatInfo(getActualFormat()).colorEncoding;
72e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill}
73e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill
74e261b44af7631c31ddca8601490e7445af5a3341Jamie Madillbool FramebufferAttachment::isTexture() const
75e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{
76e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill    return (type() != GL_RENDERBUFFER);
77e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill}
78e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill
793592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill///// TextureAttachment Implementation ////////
803592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill
81eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie MadillTextureAttachment::TextureAttachment(GLenum binding, Texture *texture, const ImageIndex &index)
82de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill    : FramebufferAttachment(binding),
83de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill      mIndex(index)
84eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill{
85eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill    mTexture.set(texture);
86eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill}
87eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill
88eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie MadillTextureAttachment::~TextureAttachment()
89eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill{
90eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill    mTexture.set(NULL);
91eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill}
92aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill
933592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie MadillGLsizei TextureAttachment::getSamples() const
943592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill{
953592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill    return 0;
963592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill}
973592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill
983592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie MadillGLuint TextureAttachment::id() const
993592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill{
100eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill    return mTexture->id();
1013592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill}
1023592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill
103de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLsizei TextureAttachment::getWidth() const
104e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{
105eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill    return mTexture->getWidth(mIndex);
106e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill}
107e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill
108de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLsizei TextureAttachment::getHeight() const
109e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{
110eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill    return mTexture->getHeight(mIndex);
111afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
112afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
113de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLenum TextureAttachment::getInternalFormat() const
114afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
115eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill    return mTexture->getInternalFormat(mIndex);
116afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
117afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
118de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLenum TextureAttachment::getActualFormat() const
119afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
120eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill    return mTexture->getActualFormat(mIndex);
121afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
122afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
123de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLenum TextureAttachment::type() const
124afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
125de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill    return mIndex.type;
126afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
127afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
128de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLint TextureAttachment::mipLevel() const
129afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
130de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill    return mIndex.mipIndex;
131afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
132afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
133de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLint TextureAttachment::layer() const
134afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{
135de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill    return mIndex.layerIndex;
136afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
137afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
1385b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillTexture *TextureAttachment::getTexture()
1395b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill{
1405b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill    return mTexture.get();
1415b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill}
1425b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill
143ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madillconst ImageIndex *TextureAttachment::getTextureImageIndex() const
144ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill{
145ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill    return &mIndex;
146ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill}
147ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill
1485b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillRenderbuffer *TextureAttachment::getRenderbuffer()
1495b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill{
1505b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill    UNREACHABLE();
1515b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill    return NULL;
1525b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill}
1535b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill
154e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill////// RenderbufferAttachment Implementation //////
1556c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill
156aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie MadillRenderbufferAttachment::RenderbufferAttachment(GLenum binding, Renderbuffer *renderbuffer)
157aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill    : FramebufferAttachment(binding)
1586c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
1596c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    ASSERT(renderbuffer);
1606c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    mRenderbuffer.set(renderbuffer);
1616c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill}
1626c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill
1636c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillRenderbufferAttachment::~RenderbufferAttachment()
1646c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
1656c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    mRenderbuffer.set(NULL);
166afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
167afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
1686c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLsizei RenderbufferAttachment::getWidth() const
1696c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
1706c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    return mRenderbuffer->getWidth();
1716c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill}
172afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
1736c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLsizei RenderbufferAttachment::getHeight() const
1746c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
1756c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    return mRenderbuffer->getHeight();
1766c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill}
1776c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill
1786c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLenum RenderbufferAttachment::getInternalFormat() const
1796c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
1806c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    return mRenderbuffer->getInternalFormat();
1816c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill}
1826c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill
1836c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLenum RenderbufferAttachment::getActualFormat() const
1846c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
1856c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    return mRenderbuffer->getActualFormat();
1866c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill}
1876c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill
1886c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLsizei RenderbufferAttachment::getSamples() const
1896c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
1906c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    return mRenderbuffer->getStorage()->getSamples();
1916c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill}
1926c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill
193218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie MadillGLuint RenderbufferAttachment::id() const
194218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill{
195218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill    return mRenderbuffer->id();
196218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill}
197218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill
198218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie MadillGLenum RenderbufferAttachment::type() const
1996c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
200218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill    return GL_RENDERBUFFER;
2016c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill}
2026c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill
2039c074a399302fbb47be1ce0a5ec381d663401598Jamie MadillGLint RenderbufferAttachment::mipLevel() const
2049c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill{
2059c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill    return 0;
2069c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill}
2079c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill
2089c074a399302fbb47be1ce0a5ec381d663401598Jamie MadillGLint RenderbufferAttachment::layer() const
2099c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill{
2109c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill    return 0;
2119c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill}
2129c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill
2135b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillTexture *RenderbufferAttachment::getTexture()
2146c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{
2156c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill    UNREACHABLE();
2165b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill    return NULL;
2175b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill}
2185b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill
219ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madillconst ImageIndex *RenderbufferAttachment::getTextureImageIndex() const
220ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill{
221ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill    UNREACHABLE();
222ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill    return NULL;
223ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill}
224ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill
2255b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillRenderbuffer *RenderbufferAttachment::getRenderbuffer()
2265b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill{
2275b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill    return mRenderbuffer.get();
228afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
229afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill
230afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill}
231