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 // RenderTarget9.h: Defines a D3D9-specific wrapper for IDirect3DSurface9 pointers 8 // retained by Renderbuffers. 9 10 #ifndef LIBGLESV2_RENDERER_RENDERTARGET9_H_ 11 #define LIBGLESV2_RENDERER_RENDERTARGET9_H_ 12 13 #include "libGLESv2/renderer/RenderTarget.h" 14 15 namespace rx 16 { 17 class Renderer; 18 class Renderer9; 19 20 class RenderTarget9 : public RenderTarget 21 { 22 public: 23 RenderTarget9(Renderer *renderer, IDirect3DSurface9 *surface); 24 RenderTarget9(Renderer *renderer, GLsizei width, GLsizei height, GLenum format, GLsizei samples); 25 virtual ~RenderTarget9(); 26 27 static RenderTarget9 *makeRenderTarget9(RenderTarget *renderTarget); 28 IDirect3DSurface9 *getSurface(); 29 30 private: 31 DISALLOW_COPY_AND_ASSIGN(RenderTarget9); 32 33 IDirect3DSurface9 *mRenderTarget; 34 35 Renderer9 *mRenderer; 36 }; 37 38 } 39 40 #endif // LIBGLESV2_RENDERER_RENDERTARGET9_H_ 41