Skip to content

Commit 4f1af7e

Browse files
Lori Whippler HollaschLori Whippler Hollasch
authored andcommitted
Merged PR 22210: Write Generic Programs refpage
Write Generic Programs refpage
2 parents ced6b0f + 08e6997 commit 4f1af7e

File tree

2 files changed

+86
-2
lines changed

2 files changed

+86
-2
lines changed
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
---
2+
UID: NS:d3d12umddi.D3D12DDI_GENERIC_PROGRAM_DESC_0108
3+
tech.root: display
4+
title: D3D12DDI_GENERIC_PROGRAM_DESC_0108
5+
ms.date: 11/14/2025
6+
targetos: Windows
7+
description: The D3D12DDI_GENERIC_PROGRAM_DESC_0108 structure describes a generic program state subobject that contains shader exports and associated configuration subobjects within a state object.
8+
prerelease: false
9+
req.construct-type: structure
10+
req.ddi-compliance:
11+
req.dll:
12+
req.header: d3d12umddi.h
13+
req.include-header:
14+
req.kmdf-ver:
15+
req.lib:
16+
req.max-support:
17+
req.redist:
18+
req.target-min-winverclnt: Windows 11, version 24H2 (WDDM 3.2)
19+
req.target-min-winversvr:
20+
req.target-type:
21+
req.typenames: D3D12DDI_GENERIC_PROGRAM_DESC_0108
22+
typedef_isUnnamed: false
23+
req.umdf-ver:
24+
req.unicode-ansi:
25+
topic_type:
26+
- apiref
27+
api_type:
28+
- HeaderDef
29+
api_location:
30+
- d3d12umddi.h
31+
api_name:
32+
- D3D12DDI_GENERIC_PROGRAM_DESC_0108
33+
f1_keywords:
34+
- D3D12DDI_GENERIC_PROGRAM_DESC_0108
35+
- d3d12umddi/D3D12DDI_GENERIC_PROGRAM_DESC_0108
36+
dev_langs:
37+
- c++
38+
helpviewer_keywords:
39+
- D3D12DDI_GENERIC_PROGRAM_DESC_0108
40+
---
41+
42+
## -description
43+
44+
The **D3D12DDI_GENERIC_PROGRAM_DESC_0108** structure describes a generic program state subobject that contains shader exports and associated configuration subobjects within a state object. This structure defines the state subobject of type [**D3D12DDI_STATE_SUBOBJECT_TYPE_GENERIC_PROGRAM**](ne-d3d12umddi-d3d12ddi_state_subobject_type.md).
45+
46+
## -struct-fields
47+
48+
### -field ProgramName
49+
50+
A wide-character string that specifies the name of the generic program. This name is unique within the given state object and is used to identify the program.
51+
52+
### -field NumExports
53+
54+
The number of exports from the program. This value determines the number of elements in the **pExports** array. Can be 0 if the program doesn't export any shader functions.
55+
56+
### -field pExports
57+
58+
Pointer to an array of wide-character string pointers (LPCWSTR*), where each string specifies the name of an exported shader function from this program. Each export represents a shader function or entry point that can be referenced by other parts of the state object. Can be NULL if **NumExports** is 0.
59+
60+
### -field NumSubobjects
61+
62+
The number of subobjects associated with this generic program. This value determines the number of elements in the **pSubobjects** array. Can be 0 if the program doesn't have any associated subobjects.
63+
64+
### -field pSubobjects
65+
66+
Pointer to an array of pointers to [**D3D12DDI_STATE_SUBOBJECT_0054**](ns-d3d12umddi-d3d12ddi_state_subobject_0054.md) structures. These subobjects provide additional configuration for the generic program, such as root signatures, local root signatures, or other state that applies to the program's exports. Can be NULL if **NumSubobjects** is 0.
67+
68+
## -remarks
69+
70+
A generic program is a collection of shader code with its exports and associated configuration subobjects within a state object. The runtime validates the generic program before passing this structure to the driver.
71+
72+
For more information, see [Generic programs](/windows-hardware/drivers/display/generic-programs).
73+
74+
## -see-also
75+
76+
[**D3D12DDI_EXPORT_DESC_0054**](ns-d3d12umddi-d3d12ddi_export_desc_0054.md)
77+
78+
[**D3D12DDI_STATE_SUBOBJECT_0054**](ns-d3d12umddi-d3d12ddi_state_subobject_0054.md)
79+
80+
[**D3D12DDI_STATE_SUBOBJECT_TYPE**](ne-d3d12umddi-d3d12ddi_state_subobject_type.md)
81+
82+
[**PFND3D12DDI_ADD_TO_STATE_OBJECT_0072**](nc-d3d12umddi-pfnd3d12ddi_add_to_state_object_0072.md)
83+
84+
[**PFND3D12DDI_CREATE_STATE_OBJECT_0054**](nc-d3d12umddi-pfnd3d12ddi_create_state_object_0054.md)

wdk-ddi-src/content/d3d12umddi/ns-d3d12umddi-d3d12ddi_work_graph_desc_0108.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
UID: NS:d3d12umddi.D3D12DDI_WORK_GRAPH_DESC_0108
33
tech.root: display
44
title: D3D12DDI_WORK_GRAPH_DESC_0108
5-
ms.date: 05/03/2024
5+
ms.date: 11/14/2024
66
targetos: Windows
77
description: Learn more about the D3D12DDI_WORK_GRAPH_DESC_0108 structure.
88
prerelease: false
@@ -47,7 +47,7 @@ The **D3D12DDI_WORK_GRAPH_DESC_0108** structure defines the state subobject of t
4747

4848
### -field ProgramName
4949

50-
Name of the work graph. This name is unique in the given state object.
50+
Name of the work graph. This name is unique in the given state object and is used to identify the work graph.
5151

5252
### -field Version
5353

0 commit comments

Comments
 (0)