////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// D3D11.1 IDL
//
// Contains interface definitions for the D3D11.1 API.
//
// Copyright (C) Microsoft Corporation
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

import "oaidl.idl";
import "ocidl.idl";
import "dxgi1_2.idl";
import "d3dcommon.idl";

import "d3d11.idl"; //
cpp_quote( "#ifdef __cplusplus" )
cpp_quote( "}" ) // extern C
cpp_quote( "#endif" )
cpp_quote( "#include \"d3d11.h\" //") //
cpp_quote( "#ifdef __cplusplus" )
cpp_quote( "extern \"C\"{" )
cpp_quote( "#endif" )

typedef enum D3D11_COPY_FLAGS
{
    D3D11_COPY_NO_OVERWRITE = 0x00000001,
    D3D11_COPY_DISCARD      = 0x00000002,
} D3D11_COPY_FLAGS;

typedef enum D3D11_LOGIC_OP
{
                                   // Operation: 
                                   // (s == PS output, d = RTV contents)
    D3D11_LOGIC_OP_CLEAR = 0,      // 0
    D3D11_LOGIC_OP_SET,            // 1
    D3D11_LOGIC_OP_COPY,           // s
    D3D11_LOGIC_OP_COPY_INVERTED,  // ~s
    D3D11_LOGIC_OP_NOOP,           // d
    D3D11_LOGIC_OP_INVERT,         // ~d
    D3D11_LOGIC_OP_AND,            // s & d
    D3D11_LOGIC_OP_NAND,           // ~(s & d)
    D3D11_LOGIC_OP_OR,             // s | d
    D3D11_LOGIC_OP_NOR,            // ~(s | d)
    D3D11_LOGIC_OP_XOR,            // s ^ d
    D3D11_LOGIC_OP_EQUIV,          // ~(s ^ d)
    D3D11_LOGIC_OP_AND_REVERSE,    // s & ~d
    D3D11_LOGIC_OP_AND_INVERTED,   // ~s & d
    D3D11_LOGIC_OP_OR_REVERSE,     // s | ~d
    D3D11_LOGIC_OP_OR_INVERTED,    // ~s | d
} D3D11_LOGIC_OP;

typedef struct D3D11_RENDER_TARGET_BLEND_DESC1
{
    BOOL BlendEnable;
    BOOL LogicOpEnable; // LogicOpEnable and BlendEnable can't both be true
    D3D11_BLEND SrcBlend;
    D3D11_BLEND DestBlend;
    D3D11_BLEND_OP BlendOp;
    D3D11_BLEND SrcBlendAlpha;
    D3D11_BLEND DestBlendAlpha;
    D3D11_BLEND_OP BlendOpAlpha;
    D3D11_LOGIC_OP LogicOp; // applies to RGBA
    UINT8 RenderTargetWriteMask; // D3D11_COLOR_WRITE_ENABLE
} D3D11_RENDER_TARGET_BLEND_DESC1;

typedef struct D3D11_BLEND_DESC1
{
    BOOL AlphaToCoverageEnable; // relevant to multisample antialiasing only
    BOOL IndependentBlendEnable; // if FALSE, then replicate the first entry in RenderTarget array to other entries
    D3D11_RENDER_TARGET_BLEND_DESC1 RenderTarget[D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT];
} D3D11_BLEND_DESC1;

cpp_quote( "/* Note, the array size for RenderTarget[] above is D3D11_SIMULTANEOUS_RENDERTARGET_COUNT. ")
cpp_quote( "   IDL processing/generation of this header replaces the define; this comment is merely explaining what happened. */" ) 

cpp_quote( "#if !defined( D3D11_NO_HELPERS ) && defined( __cplusplus )" )
cpp_quote( "}" ) // extern C
cpp_quote( "struct CD3D11_BLEND_DESC1 : public D3D11_BLEND_DESC1" )
cpp_quote( "{" )
cpp_quote( "    CD3D11_BLEND_DESC1()" )
cpp_quote( "    {}" )
cpp_quote( "    explicit CD3D11_BLEND_DESC1( const D3D11_BLEND_DESC1& o ) :" )
cpp_quote( "        D3D11_BLEND_DESC1( o )" )
cpp_quote( "    {}" )
cpp_quote( "    explicit CD3D11_BLEND_DESC1( CD3D11_DEFAULT )" )
cpp_quote( "    {" )
cpp_quote( "        AlphaToCoverageEnable = FALSE;" )
cpp_quote( "        IndependentBlendEnable = FALSE;" )
cpp_quote( "        const D3D11_RENDER_TARGET_BLEND_DESC1 defaultRenderTargetBlendDesc =" )
cpp_quote( "        {" )
cpp_quote( "            FALSE,FALSE," )
cpp_quote( "            D3D11_BLEND_ONE, D3D11_BLEND_ZERO, D3D11_BLEND_OP_ADD," )
cpp_quote( "            D3D11_BLEND_ONE, D3D11_BLEND_ZERO, D3D11_BLEND_OP_ADD," )
cpp_quote( "            D3D11_LOGIC_OP_NOOP," )
cpp_quote( "            D3D11_COLOR_WRITE_ENABLE_ALL," )
cpp_quote( "        };" )
cpp_quote( "        for (UINT i = 0; i < D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT; ++i)" )
cpp_quote( "            RenderTarget[ i ] = defaultRenderTargetBlendDesc;" )
cpp_quote( "    }" )
cpp_quote( "    ~CD3D11_BLEND_DESC1() {}" )
cpp_quote( "    operator const D3D11_BLEND_DESC1&() const { return *this; }" )
cpp_quote( "};" )
cpp_quote( "extern \"C\"{" )
cpp_quote( "#endif" )

[ uuid(cc86fabe-da55-401d-85e7-e3c9de2877e9), object, local, pointer_default( unique ) ]
interface ID3D11BlendState1
    : ID3D11BlendState
{
    void GetDesc1( [annotation("_Out_")] D3D11_BLEND_DESC1* pDesc );
};


typedef struct D3D11_RASTERIZER_DESC1
{
    D3D11_FILL_MODE FillMode;
    D3D11_CULL_MODE CullMode;
    BOOL FrontCounterClockwise;
    INT DepthBias;
    FLOAT DepthBiasClamp;
    FLOAT SlopeScaledDepthBias;
    BOOL DepthClipEnable;
    BOOL ScissorEnable;
    BOOL MultisampleEnable;
    BOOL AntialiasedLineEnable;
    UINT ForcedSampleCount;  
} D3D11_RASTERIZER_DESC1;

cpp_quote( "#if !defined( D3D11_NO_HELPERS ) && defined( __cplusplus )" )
cpp_quote( "}" ) // extern C
cpp_quote( "struct CD3D11_RASTERIZER_DESC1 : public D3D11_RASTERIZER_DESC1" )
cpp_quote( "{" )
cpp_quote( "    CD3D11_RASTERIZER_DESC1()" )
cpp_quote( "    {}" )
cpp_quote( "    explicit CD3D11_RASTERIZER_DESC1( const D3D11_RASTERIZER_DESC1& o ) :" )
cpp_quote( "        D3D11_RASTERIZER_DESC1( o )" )
cpp_quote( "    {}" )
cpp_quote( "    explicit CD3D11_RASTERIZER_DESC1( CD3D11_DEFAULT )" )
cpp_quote( "    {" )
cpp_quote( "        FillMode = D3D11_FILL_SOLID;" )
cpp_quote( "        CullMode = D3D11_CULL_BACK;" )
cpp_quote( "        FrontCounterClockwise = FALSE;" )
cpp_quote( "        DepthBias = D3D11_DEFAULT_DEPTH_BIAS;" )
cpp_quote( "        DepthBiasClamp = D3D11_DEFAULT_DEPTH_BIAS_CLAMP;" )
cpp_quote( "        SlopeScaledDepthBias = D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS;" )
cpp_quote( "        DepthClipEnable = TRUE;" )
cpp_quote( "        ScissorEnable = FALSE;" )
cpp_quote( "        MultisampleEnable = FALSE;" )
cpp_quote( "        AntialiasedLineEnable = FALSE;" )
cpp_quote( "        ForcedSampleCount = 0;" )
cpp_quote( "    }" )
cpp_quote( "    explicit CD3D11_RASTERIZER_DESC1(" )
cpp_quote( "        D3D11_FILL_MODE fillMode," )
cpp_quote( "        D3D11_CULL_MODE cullMode," )
cpp_quote( "        BOOL frontCounterClockwise," )
cpp_quote( "        INT depthBias," )
cpp_quote( "        FLOAT depthBiasClamp," )
cpp_quote( "        FLOAT slopeScaledDepthBias," )
cpp_quote( "        BOOL depthClipEnable," )
cpp_quote( "        BOOL scissorEnable," )
cpp_quote( "        BOOL multisampleEnable," )
cpp_quote( "        BOOL antialiasedLineEnable, " )
cpp_quote( "        UINT forcedSampleCount )" )
cpp_quote( "    {" )
cpp_quote( "        FillMode = fillMode;" )
cpp_quote( "        CullMode = cullMode;" )
cpp_quote( "        FrontCounterClockwise = frontCounterClockwise;" )
cpp_quote( "        DepthBias = depthBias;" )
cpp_quote( "        DepthBiasClamp = depthBiasClamp;" )
cpp_quote( "        SlopeScaledDepthBias = slopeScaledDepthBias;" )
cpp_quote( "        DepthClipEnable = depthClipEnable;" )
cpp_quote( "        ScissorEnable = scissorEnable;" )
cpp_quote( "        MultisampleEnable = multisampleEnable;" )
cpp_quote( "        AntialiasedLineEnable = antialiasedLineEnable;" )
cpp_quote( "        ForcedSampleCount = forcedSampleCount;" )
cpp_quote( "    }" )
cpp_quote( "    ~CD3D11_RASTERIZER_DESC1() {}" )
cpp_quote( "    operator const D3D11_RASTERIZER_DESC1&() const { return *this; }" )
cpp_quote( "};" )
cpp_quote( "extern \"C\"{" )
cpp_quote( "#endif" )

[ uuid(1217d7a6-5039-418c-b042-9cbe256afd6e), object, local, pointer_default( unique ) ]
interface ID3D11RasterizerState1
    : ID3D11RasterizerState
{
    void GetDesc1( [annotation("_Out_")] D3D11_RASTERIZER_DESC1* pDesc );
};


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// DeviceContextState
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
typedef enum D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG
{
    D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED = 0x1,

} D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG;

[ uuid( 5c1e0d8a-7c23-48f9-8c59-a92958ceff11 ), object, local, pointer_default( unique ) ]
interface ID3DDeviceContextState
    : ID3D11DeviceChild
{
};
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// DeviceContext
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

[ uuid( bb2c6faa-b5fb-4082-8e6b-388b8cfa90e1 ), object, local, pointer_default( unique ) ]
interface ID3D11DeviceContext1
    : ID3D11DeviceContext
{
    void CopySubresourceRegion1(
        [annotation("_In_")] ID3D11Resource* pDstResource,
        [annotation("_In_")] UINT DstSubresource,
        [annotation("_In_")] UINT DstX,
        [annotation("_In_")] UINT DstY,
        [annotation("_In_")] UINT DstZ,
        [annotation("_In_")] ID3D11Resource* pSrcResource,
        [annotation("_In_")] UINT SrcSubresource,
        [annotation("_In_opt_")] const D3D11_BOX* pSrcBox,
        [annotation("_In_")] UINT CopyFlags ); 

    void UpdateSubresource1(
        [annotation("_In_")] ID3D11Resource* pDstResource,
        [annotation("_In_")] UINT DstSubresource,	
        [annotation("_In_opt_")] const D3D11_BOX* pDstBox,
        [annotation("_In_")] const void* pSrcData,
        [annotation("_In_")] UINT SrcRowPitch,
        [annotation("_In_")] UINT SrcDepthPitch,
        [annotation("_In_")] UINT CopyFlags );

    void DiscardResource(
        [annotation("_In_")] ID3D11Resource* pResource
    );

    void DiscardView (
        [annotation("_In_")] ID3D11View* pResourceView
    );

    void VSSetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]    
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] ID3D11Buffer*const* ppConstantBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pFirstConstant,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pNumConstants );

    void HSSetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]    
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] ID3D11Buffer*const* ppConstantBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pFirstConstant,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pNumConstants );

    void DSSetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]    
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] ID3D11Buffer*const* ppConstantBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pFirstConstant,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pNumConstants );

    void GSSetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]    
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] ID3D11Buffer*const* ppConstantBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pFirstConstant,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pNumConstants );

    void PSSetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]    
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] ID3D11Buffer*const* ppConstantBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pFirstConstant,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pNumConstants );

    void CSSetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]    
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] ID3D11Buffer*const* ppConstantBuffers,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pFirstConstant,
        [annotation("_In_reads_opt_(NumBuffers)")] const UINT* pNumConstants );

    void VSGetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] ID3D11Buffer** ppConstantBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pFirstConstant,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pNumConstants );

    void HSGetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] ID3D11Buffer** ppConstantBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pFirstConstant,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pNumConstants );

    void DSGetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] ID3D11Buffer** ppConstantBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pFirstConstant,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pNumConstants );

    void GSGetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] ID3D11Buffer** ppConstantBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pFirstConstant,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pNumConstants );

    void PSGetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] ID3D11Buffer** ppConstantBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pFirstConstant,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pNumConstants );

    void CSGetConstantBuffers1(
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )")]
        UINT StartSlot,
        [annotation("_In_range_( 0, D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )")] 
        UINT NumBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] ID3D11Buffer** ppConstantBuffers,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pFirstConstant,
        [annotation("_Out_writes_opt_(NumBuffers)")] UINT* pNumConstants );

    void SwapDeviceContextState(
        [annotation("_In_")] ID3DDeviceContextState* pState, 
        [annotation("_Out_opt_")] ID3DDeviceContextState** ppPreviousState );

    void ClearView(
        [annotation("_In_")] ID3D11View* pView,
        [annotation("_In_")] const FLOAT Color[ 4 ],
        [annotation("_In_reads_opt_(NumRects)")] const D3D11_RECT* pRect,
        UINT NumRects );

    void DiscardView1 (
        [annotation("_In_")] ID3D11View* pResourceView,
        [annotation("_In_reads_opt_(NumRects)")] const D3D11_RECT* pRects,
        UINT NumRects
    );
};

[ uuid( a04bfb29-08ef-43d6-a49c-a9bdbdcbe686 ), object, local, pointer_default( unique ) ]
interface ID3D11Device1
    : ID3D11Device
{
    void GetImmediateContext1( [annotation("_Out_")] ID3D11DeviceContext1** ppImmediateContext );

    HRESULT CreateDeferredContext1(
            UINT ContextFlags, // Reserved parameter; must be 0
            [annotation("_Out_opt_")] ID3D11DeviceContext1** ppDeferredContext );

    HRESULT CreateBlendState1(
        [annotation("_In_")] const D3D11_BLEND_DESC1* pBlendStateDesc,
        [annotation("_Out_opt_")] ID3D11BlendState1** ppBlendState );

    HRESULT CreateRasterizerState1(
        [annotation("_In_")] const D3D11_RASTERIZER_DESC1* pRasterizerDesc,
        [annotation("_Out_opt_")] ID3D11RasterizerState1** ppRasterizerState );

    HRESULT CreateDeviceContextState(
        UINT Flags,
        [annotation("_In_reads_( FeatureLevels )")] const D3D_FEATURE_LEVEL*pFeatureLevels,
        UINT FeatureLevels,
        UINT SDKVersion,
        REFIID EmulatedInterface,
        [annotation("_Out_opt_")] D3D_FEATURE_LEVEL * pChosenFeatureLevel,
        [annotation("_Out_opt_")] ID3DDeviceContextState** ppContextState );

    HRESULT OpenSharedResource1(
        [annotation("_In_")] HANDLE hResource,
        [annotation("_In_")] REFIID returnedInterface,
        [annotation("_Out_")] void** ppResource);

    HRESULT OpenSharedResourceByName(
        [annotation("_In_")] LPCWSTR lpName,
        [annotation("_In_")] DWORD dwDesiredAccess,
        [annotation("_In_")] REFIID returnedInterface,
        [annotation("_Out_")] void** ppResource);
};

[ uuid( b2daad8b-03d4-4dbf-95eb-32ab4b63d0ab ), object, local, pointer_default( unique ) ]
interface ID3DUserDefinedAnnotation
    : IUnknown
{
    INT BeginEvent( 
        [annotation("_In_")] LPCWSTR Name );
    INT EndEvent( void );
    void SetMarker( 
        [annotation("_In_")] LPCWSTR Name );
    BOOL GetStatus( void );
};


cpp_quote( "DEFINE_GUID(IID_ID3D11BlendState1,0xcc86fabe,0xda55,0x401d,0x85,0xe7,0xe3,0xc9,0xde,0x28,0x77,0xe9);" )
cpp_quote( "DEFINE_GUID(IID_ID3D11RasterizerState1,0x1217d7a6,0x5039,0x418c,0xb0,0x42,0x9c,0xbe,0x25,0x6a,0xfd,0x6e);" )
cpp_quote( "DEFINE_GUID(IID_ID3DDeviceContextState,0x5c1e0d8a,0x7c23,0x48f9,0x8c,0x59,0xa9,0x29,0x58,0xce,0xff,0x11);" )
cpp_quote( "DEFINE_GUID(IID_ID3D11DeviceContext1,0xbb2c6faa,0xb5fb,0x4082,0x8e,0x6b,0x38,0x8b,0x8c,0xfa,0x90,0xe1);" )
cpp_quote( "DEFINE_GUID(IID_ID3D11Device1,0xa04bfb29,0x08ef,0x43d6,0xa4,0x9c,0xa9,0xbd,0xbd,0xcb,0xe6,0x86);" )
cpp_quote( "DEFINE_GUID(IID_ID3DUserDefinedAnnotation,0xb2daad8b,0x03d4,0x4dbf,0x95,0xeb,0x32,0xab,0x4b,0x63,0xd0,0xab);" )
