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

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     1 //
     2 // Copyright (c) 2012-2013 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 //
     7 // ShaderExecutable11.h: Defines a D3D11-specific class to contain shader
     8 // executable implementation details.
    10 #ifndef LIBGLESV2_RENDERER_SHADEREXECUTABLE11_H_
    11 #define LIBGLESV2_RENDERER_SHADEREXECUTABLE11_H_
    13 #include "libGLESv2/renderer/ShaderExecutable.h"
    15 namespace rx
    16 {
    18 class ShaderExecutable11 : public ShaderExecutable
    19 {
    20   public:
    21     ShaderExecutable11(const void *function, size_t length, ID3D11PixelShader *executable);
    22     ShaderExecutable11(const void *function, size_t length, ID3D11VertexShader *executable);
    23     ShaderExecutable11(const void *function, size_t length, ID3D11GeometryShader *executable);
    25     virtual ~ShaderExecutable11();
    27     static ShaderExecutable11 *makeShaderExecutable11(ShaderExecutable *executable);
    29     ID3D11PixelShader *getPixelShader() const;
    30     ID3D11VertexShader *getVertexShader() const;
    31     ID3D11GeometryShader *getGeometryShader() const;
    33     ID3D11Buffer *getConstantBuffer(ID3D11Device *device, unsigned int registerCount);
    35   private:
    36     DISALLOW_COPY_AND_ASSIGN(ShaderExecutable11);
    38     ID3D11PixelShader *mPixelExecutable;
    39     ID3D11VertexShader *mVertexExecutable;
    40     ID3D11GeometryShader *mGeometryExecutable;
    42     ID3D11Buffer *mConstantBuffer;
    43 };
    45 }
    47 #endif // LIBGLESV2_RENDERER_SHADEREXECUTABLE11_H_

mercurial