IDXCoreAdapter::SetState 方法
设置适配器上指定项的状态。 在为属性类型调用 SetState 之前,请调用 IsSetStateSupported 以确认设置状态类型可用于此适配器和操作系统 (OS) 。
语法
virtual HRESULT STDMETHODCALLTYPE SetState(
DXCoreAdapterState state,
size_t inputStateDetailsSize,
_In_reads_bytes_opt_(inputStateDetailsSize) const void *inputStateDetails,
size_t inputDataSize,
_In_reads_bytes_(inputDataSize) const void *inputData) = 0;
template <class T1, class T2>
HRESULT SetState(
DXCoreAdapterState state,
const T1 *inputStateDetails,
const T2 *inputData);
参数
state
适配器上要设置其状态的状态项的类型。 有关每种适配器状态类型的详细信息,请参阅 DXCoreAdapterState 中的表。
inputStateDetailsSize
类型: size_t
(输入状态详细信息缓冲区的大小(以字节为单位),可以选择) inputStateDetails 中分配和提供。
inputStateDetails [in]
类型: void const*
指向在应用程序中分配的常量输入状态详细信息缓冲区的可选指针,其中包含在 状态中指定的状态类型所需的有关请求的任何信息。 有关给定状态类型的任何输入缓冲区要求的详细信息,请参阅 DXCoreAdapterState 中的表。
inputDataSize
类型: size_t
在 inputData 中分配和提供的输入缓冲区的大小(以字节为单位)。
inputData [in]
类型: void*
指向在应用程序中分配的输入缓冲区的指针,其中包含要为状态项(在 状态中指定的类型)设置 的状态信息。 有关给定状态类型的输入缓冲区要求的详细信息,请参阅 DXCoreAdapterState 中的表。
返回
类型: HRESULT
如果函数成功,则返回 S_OK。 否则,它将返回 HRESULT错误代码。
返回值 | 描述 |
---|---|
DXGI_ERROR_DEVICE_REMOVED | 适配器不再处于有效状态。 |
DXGI_ERROR_INVALID_CALL | 此操作系统 (OS) 无法识别 状态中指定的状态 类型。 调用 IsSetStateSupported 以确认设置状态类型适用于此适配器和操作系统 (OS) 。 |
DXGI_ERROR_UNSUPPORTED | 适配器不支持状态中指定的 状态 类型。 调用 IsSetStateSupported 以确认设置状态类型适用于此适配器和操作系统 (OS) 。 |
E_INVALIDARG | 对于 inputData (或 inputStateDetails ,其中输入状态详细信息缓冲区是必需的) ,则提供缓冲区大小不足。 |
E_POINTER | nullptr 为 inputData (或 inputStateDetails 提供,其中输入状态详细信息缓冲区是必需的) 。 |
请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈