Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mesa
Path: blob/21.2-virgl/src/gallium/frontends/d3d10umd/OutputMerger.h
4566 views
1
/**************************************************************************
2
*
3
* Copyright 2012-2021 VMware, Inc.
4
* All Rights Reserved.
5
*
6
* Permission is hereby granted, free of charge, to any person obtaining a
7
* copy of this software and associated documentation files (the
8
* "Software"), to deal in the Software without restriction, including
9
* without limitation the rights to use, copy, modify, merge, publish,
10
* distribute, sub license, and/or sell copies of the Software, and to
11
* permit persons to whom the Software is furnished to do so, subject to
12
* the following conditions:
13
*
14
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
17
* THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM,
18
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
* USE OR OTHER DEALINGS IN THE SOFTWARE.
21
*
22
* The above copyright notice and this permission notice (including the
23
* next paragraph) shall be included in all copies or substantial portions
24
* of the Software.
25
*
26
**************************************************************************/
27
28
/*
29
* OutputMerger.h --
30
* Functions that manipulate the output merger state.
31
*/
32
33
#ifndef OUTPUT_MERGER_H
34
#define OUTPUT_MERGER_H
35
36
#include "DriverIncludes.h"
37
38
SIZE_T APIENTRY CalcPrivateRenderTargetViewSize(
39
D3D10DDI_HDEVICE hDevice,
40
__in const D3D10DDIARG_CREATERENDERTARGETVIEW *pCreateRenderTargetView);
41
42
void APIENTRY CreateRenderTargetView(
43
D3D10DDI_HDEVICE hDevice,
44
__in const D3D10DDIARG_CREATERENDERTARGETVIEW *pCreateRenderTargetView,
45
D3D10DDI_HRENDERTARGETVIEW hRenderTargetView,
46
D3D10DDI_HRTRENDERTARGETVIEW hRTRenderTargetView);
47
48
void APIENTRY DestroyRenderTargetView(D3D10DDI_HDEVICE hDevice,
49
D3D10DDI_HRENDERTARGETVIEW hRenderTargetView);
50
51
void APIENTRY ClearRenderTargetView(D3D10DDI_HDEVICE hDevice,
52
D3D10DDI_HRENDERTARGETVIEW hRenderTargetView,
53
FLOAT pColorRGBA[4]);
54
55
SIZE_T APIENTRY CalcPrivateDepthStencilViewSize(
56
D3D10DDI_HDEVICE hDevice,
57
__in const D3D10DDIARG_CREATEDEPTHSTENCILVIEW *pCreateDepthStencilView);
58
59
void APIENTRY CreateDepthStencilView(
60
D3D10DDI_HDEVICE hDevice,
61
__in const D3D10DDIARG_CREATEDEPTHSTENCILVIEW *pCreateDepthStencilView,
62
D3D10DDI_HDEPTHSTENCILVIEW hDepthStencilView,
63
D3D10DDI_HRTDEPTHSTENCILVIEW hRTDepthStencilView);
64
65
void APIENTRY DestroyDepthStencilView(D3D10DDI_HDEVICE hDevice,
66
D3D10DDI_HDEPTHSTENCILVIEW hDepthStencilView);
67
68
void APIENTRY ClearDepthStencilView(D3D10DDI_HDEVICE hDevice,
69
D3D10DDI_HDEPTHSTENCILVIEW hDepthStencilView,
70
UINT Flags, FLOAT Depth, UINT8 Stencil);
71
72
SIZE_T APIENTRY CalcPrivateBlendStateSize(D3D10DDI_HDEVICE hDevice,
73
__in const D3D10_DDI_BLEND_DESC *pBlendDesc);
74
75
SIZE_T APIENTRY CalcPrivateBlendStateSize1(D3D10DDI_HDEVICE hDevice,
76
__in const D3D10_1_DDI_BLEND_DESC *pBlendDesc);
77
78
void APIENTRY CreateBlendState(D3D10DDI_HDEVICE hDevice,
79
__in const D3D10_DDI_BLEND_DESC *pBlendDesc,
80
D3D10DDI_HBLENDSTATE hBlendState,
81
D3D10DDI_HRTBLENDSTATE hRTBlendState);
82
83
void APIENTRY CreateBlendState1(D3D10DDI_HDEVICE hDevice,
84
__in const D3D10_1_DDI_BLEND_DESC *pBlendDesc,
85
D3D10DDI_HBLENDSTATE hBlendState,
86
D3D10DDI_HRTBLENDSTATE hRTBlendState);
87
88
void APIENTRY DestroyBlendState(D3D10DDI_HDEVICE hDevice, D3D10DDI_HBLENDSTATE hBlendState);
89
90
void APIENTRY SetBlendState(D3D10DDI_HDEVICE hDevice, D3D10DDI_HBLENDSTATE hState,
91
const FLOAT pBlendFactor[4], UINT SampleMask);
92
93
void APIENTRY SetRenderTargets(
94
D3D10DDI_HDEVICE hDevice,
95
__in_ecount (NumViews) const D3D10DDI_HRENDERTARGETVIEW *phRenderTargetView,
96
UINT RTargets, UINT ClearTargets, D3D10DDI_HDEPTHSTENCILVIEW hDepthStencilView);
97
98
SIZE_T APIENTRY CalcPrivateDepthStencilStateSize(
99
D3D10DDI_HDEVICE hDevice,
100
__in const D3D10_DDI_DEPTH_STENCIL_DESC *pDepthStencilDesc);
101
102
void APIENTRY CreateDepthStencilState(
103
D3D10DDI_HDEVICE hDevice,
104
__in const D3D10_DDI_DEPTH_STENCIL_DESC *pDepthStencilDesc,
105
D3D10DDI_HDEPTHSTENCILSTATE hDepthStencilState,
106
D3D10DDI_HRTDEPTHSTENCILSTATE hRTDepthStencilState);
107
108
void APIENTRY DestroyDepthStencilState(D3D10DDI_HDEVICE hDevice,
109
D3D10DDI_HDEPTHSTENCILSTATE hDepthStencilState);
110
111
void APIENTRY SetDepthStencilState(D3D10DDI_HDEVICE hDevice,
112
D3D10DDI_HDEPTHSTENCILSTATE hState, UINT StencilRef);
113
114
#endif /* OUTPUT_MERGER_H */
115
116