ID3D12GraphicsCommandList::Write64BitValueBottomOfPipeX Method

Writes a 64-bit value at the bottom of the pipeline to a given destination in memory.

Syntax

public:
void Write64BitValueBottomOfPipeX(
         D3D12_GPU_VIRTUAL_ADDRESS Destination,
         UINT64 Value,
         D3D12XBOX_FLUSH Flush,
         D3D12XBOX_WRITE_VALUE_BOP_FLAGS Flags
)  

Parameters

Destination
Type: D3D12_GPU_VIRTUAL_ADDRESS 

[in] D3D12_GPU_VIRTUAL_ADDRESS The base address of graphics memory at which to write the value. The address must be 8-byte aligned.

Value
Type: UINT64 

[in] The 64 bit value to be written if a timestamp option has not been selected. When a timestamp has been selected, the value must be set to 0.

Flush
Type: D3D12XBOX_FLUSH 

[in] A set of optional flush flags to invalidate the texture cache in conjunction with the write operation, as a bitwise-OR’d combination of D3D12XBOX_FLUSH enumeration constants. Supported flags are as follows:

Flags
Type: D3D12XBOX_WRITE_VALUE_BOP_FLAGS 

[in] A set of optional flags to select the type of value to be written to memory, as a bitwise-OR’d combination of D3D12XBOX_WRITE_VALUE_BOP_FLAGS enumeration constants.

Return value

Type: void 

Returns nothing.

Remarks

The 64-bit value will be written to memory after the completion of all shader execution and render back-end processing, but potentially before all memory writes generated by preceding draws and dispatches have finished.

When used in conjunction with the method ID3D12GraphicsCommandList::Wait64BitValueX, Write64BitValueBottomOfPipeX can serve as a useful cross-engine intra-command-list synchronization mechanism.

Requirements

Header: Declared in d3d12_x.h.

Library: Use d3d12_x.lib.

See also

Reference

ID3D12GraphicsCommandList Interface

ID3D12GraphicsCommandList Members