CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT 结构

一种模板化帮助程序结构,用于将子对象类型和子对象数据对封装为适合流说明的单个对象。

语法

struct CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT {
                                          CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT;
                                          CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT(InnerStructType const &i);
  CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT operator=(InnerStructType const& i);
                                          operator InnerStructType() const;
};

成员

CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT

创建CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT的未初始化的新实例。

CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT (InnerStructType const &i)

创建一个新的 CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT 模板实例,该实例使用从 i 复制的D3D12_PIPELINE_STATE_SUBOBJECT_TYPE子对象类型的子对象和子对象数据进行初始化。 子对象类型和子对象数据类型分别作为模板参数 TypeInnerStructType 提供。 有关详细信息,请参阅下面的“备注”。

operator= (InnerStructType const& i)

复制赋值运算符。

operator InnerStructType () const

隐式转换为 InnerStructType 模板参数给定的子对象数据类型。

备注

CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT是定义如下的模板:

template <typename InnerStructType, D3D12_PIPELINE_STATE_SUBOBJECT_TYPE Type, typename DefaultArg = InnerStructType>
class alignas(void*) CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT
{
private:
    D3D12_PIPELINE_STATE_SUBOBJECT_TYPE _Type;
    InnerStructType _Inner;
public:
    CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT() : _Type(Type), _Inner(DefaultArg()) {}
    CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT(InnerStructType const& i) : _Type(Type), _Inner(i) {}
    CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT& operator=(InnerStructType const& i) { _Inner = i; return *this; }
    operator InnerStructType() const { return _Inner; }
};  
          

模板参数 InnerStructType 指定子对象数据类型;即要编码为流的子对象详细信息。 模板参数 Type 指定子对象类型;即由模板参数 InnerStructType 指定的结构的类型。 模板参数 DefaultArg 指定一个可选值,当相应模板实例化实例化为默认构造时,子对象数据将被初始化为 ;例如,若要默认构造CD3DX12_PIPELINE_STATE_STREAM_BLEND_DESC使用CD3DX12_DEFAULT使用常见混合状态默认值进行初始化。

下面是定义的模板实例化:

定义CD3DX12_PIPELINE_STATE_STREAM_BLEND_DESCCD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCILCD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL1CD3DX12_PIPELINE_STATE_STREAM_RASTERIZER结构,以使用CD3DX12_DEFAULT的常见默认值初始化其子对象数据。

要求

要求
标头
D3dx12.h

另请参阅

D3D12 的帮助程序结构

D3D12_PIPELINE_STATE_SUBOBJECT_TYPE