gfx/angle/src/libGLESv2/renderer/RenderTarget11.h

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:152e9c9d6c5a
1 //
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 // RenderTarget11.h: Defines a DX11-specific wrapper for ID3D11View pointers
8 // retained by Renderbuffers.
9
10 #ifndef LIBGLESV2_RENDERER_RENDERTARGET11_H_
11 #define LIBGLESV2_RENDERER_RENDERTARGET11_H_
12
13 #include "libGLESv2/renderer/RenderTarget.h"
14
15 namespace rx
16 {
17 class Renderer;
18 class Renderer11;
19
20 class RenderTarget11 : public RenderTarget
21 {
22 public:
23 RenderTarget11(Renderer *renderer, ID3D11RenderTargetView *rtv, ID3D11Texture2D *tex, ID3D11ShaderResourceView *srv, GLsizei width, GLsizei height);
24 RenderTarget11(Renderer *renderer, ID3D11DepthStencilView *dsv, ID3D11Texture2D *tex, ID3D11ShaderResourceView *srv, GLsizei width, GLsizei height);
25 RenderTarget11(Renderer *renderer, GLsizei width, GLsizei height, GLenum format, GLsizei samples, bool depth);
26 virtual ~RenderTarget11();
27
28 static RenderTarget11 *makeRenderTarget11(RenderTarget *renderTarget);
29
30 ID3D11Texture2D *getTexture() const;
31 ID3D11RenderTargetView *getRenderTargetView() const;
32 ID3D11DepthStencilView *getDepthStencilView() const;
33 ID3D11ShaderResourceView *getShaderResourceView() const;
34
35 unsigned int getSubresourceIndex() const;
36
37 private:
38 DISALLOW_COPY_AND_ASSIGN(RenderTarget11);
39
40 unsigned int mSubresourceIndex;
41 ID3D11Texture2D *mTexture;
42 ID3D11RenderTargetView *mRenderTarget;
43 ID3D11DepthStencilView *mDepthStencil;
44 ID3D11ShaderResourceView *mShaderResource;
45
46 Renderer11 *mRenderer;
47 };
48
49 }
50
51 #endif LIBGLESV2_RENDERER_RENDERTARGET11_H_

mercurial