// d3d12umddi.h
typedef enum D3D12DDI_NODE_IO_FLAGS_0108 {
D3D12DDI_NODE_IO_FLAG_INPUT,
D3D12DDI_NODE_IO_FLAG_OUTPUT,
D3D12DDI_NODE_IO_FLAG_READ_WRITE,
D3D12DDI_NODE_IO_FLAG_EMPTY_RECORD,
D3D12DDI_NODE_IO_FLAG_NODE_ARRAY,
D3D12DDI_NODE_IO_FLAG_THREAD_RECORD,
D3D12DDI_NODE_IO_FLAG_GROUP_RECORD,
D3D12DDI_NODE_IO_FLAG_DISPATCH_RECORD,
D3D12DDI_NODE_IO_FLAG_RECORD_GRANULARITY_MASK,
D3D12DDI_NODE_IO_FLAG_KIND_MASK,
D3D12DDI_NODE_IO_FLAG_TRACK_RW_INPUT_SHARING,
D3D12DDI_NODE_IO_FLAG_NODE_FLAGS_MASK,
D3D12DDI_NODE_IO_FLAG_RECORD_FLAGS_MASK
} ;
View the official Windows Driver Kit DDI referenceNo description available.
The D3D12DDI_NODE_IO_FLAGS_0108 enumeration specifies flags used to describe the I/O behavior of a node in a work graph.
D3D12DDI_NODE_IO_FLAG_INPUTThe node is designed to receive input data.
D3D12DDI_NODE_IO_FLAG_OUTPUTThe node produces output data.
D3D12DDI_NODE_IO_FLAG_READ_WRITEThe node can be read from and written to.
D3D12DDI_NODE_IO_FLAG_EMPTY_RECORDThe node has an empty record.
D3D12DDI_NODE_IO_FLAG_NODE_ARRAYThe node is a part of an array of nodes.
D3D12DDI_NODE_IO_FLAG_THREAD_RECORDThe node is a thread record.
D3D12DDI_NODE_IO_FLAG_GROUP_RECORDThe node is a group record.
D3D12DDI_NODE_IO_FLAG_DISPATCH_RECORDThe node is a dispatch record.
D3D12DDI_NODE_IO_FLAG_RECORD_GRANULARITY_MASKA mask that can be used to extract the record granularity from the flags.
D3D12DDI_NODE_IO_FLAG_KIND_MASKA mask that can be used to extract the node's I/O kind from the flags.
D3D12DDI_NODE_IO_FLAG_TRACK_RW_INPUT_SHARINGThe node tracks read-write input sharing.
D3D12DDI_NODE_IO_FLAG_NODE_FLAGS_MASKA mask for extracting node-specific flags.
D3D12DDI_NODE_IO_FLAG_RECORD_FLAGS_MASKA mask for extracting flags related to the node's record behavior.
These flags are a DDI copy of the flags in NodeIOFlags and NodeIOKind encoding in DXIL metadata.
For more information, see Work graphs.