dxvk/src/d3d11/d3d11_class_linkage.h

46 lines
1.1 KiB
C++

#pragma once
#include "d3d11_device_child.h"
namespace dxvk {
class D3D11Device;
// TODO implement properly
class D3D11ClassLinkage : public D3D11DeviceChild<ID3D11ClassLinkage> {
public:
D3D11ClassLinkage(
D3D11Device* pDevice);
~D3D11ClassLinkage();
HRESULT STDMETHODCALLTYPE QueryInterface(
REFIID riid,
void** ppvObject) final;
void STDMETHODCALLTYPE GetDevice(
ID3D11Device **ppDevice) final;
HRESULT STDMETHODCALLTYPE CreateClassInstance(
LPCSTR pClassTypeName,
UINT ConstantBufferOffset,
UINT ConstantVectorOffset,
UINT TextureOffset,
UINT SamplerOffset,
ID3D11ClassInstance **ppInstance);
HRESULT STDMETHODCALLTYPE GetClassInstance(
LPCSTR pClassInstanceName,
UINT InstanceIndex,
ID3D11ClassInstance **ppInstance);
private:
Com<D3D11Device> m_device;
};
}