blob: e7b3323f720e1761372d1517ab1ec896a8b5fb96 [file] [log] [blame]
daniel@transgaming.com042d1b42012-11-28 19:37:09 +00001//
2// Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
3// Use of this source code is governed by a BSD-style license that can be
4// found in the LICENSE file.
5//
6
7// RenderTarget.h: Defines an abstract wrapper class to manage IDirect3DSurface9
8// and ID3D11View objects belonging to renderbuffers.
9
10#ifndef LIBGLESV2_RENDERER_RENDERTARGET_H_
11#define LIBGLESV2_RENDERER_RENDERTARGET_H_
12
13#define GL_APICALL
14#include <GLES2/gl2.h>
15
16#include "common/angleutils.h"
17
18namespace rx
19{
20class RenderTarget
21{
22 public:
23 RenderTarget() {};
24 virtual ~RenderTarget() {};
25
26 GLsizei getWidth() { return mWidth; }
27 GLsizei getHeight() { return mHeight; }
28 GLenum getInternalFormat() { return mInternalFormat; }
29 GLenum getActualFormat() { return mActualFormat; }
30 GLsizei getSamples() { return mSamples; }
daniel@transgaming.com965bcd22012-11-28 20:54:14 +000031
daniel@transgaming.com39cee2e2012-11-28 19:39:14 +000032 struct Desc {
33 GLsizei width;
34 GLsizei height;
35 GLenum format;
36 };
37
daniel@transgaming.com042d1b42012-11-28 19:37:09 +000038 protected:
39 GLsizei mWidth;
40 GLsizei mHeight;
41 GLenum mInternalFormat;
42 GLenum mActualFormat;
43 GLsizei mSamples;
44
45 private:
46 DISALLOW_COPY_AND_ASSIGN(RenderTarget);
47};
48
49}
50
51#endif // LIBGLESV2_RENDERTARGET_H_