dxvk/src/dxgi/dxgi_object.h

44 lines
849 B
C
Raw Normal View History

2017-10-11 02:09:04 +01:00
#pragma once
2017-10-11 08:51:22 +01:00
#include "dxgi_include.h"
#include "../util/com/com_private_data.h"
2017-10-11 02:09:04 +01:00
namespace dxvk {
2017-10-11 14:31:36 +01:00
template<typename... Base>
class DxgiObject : public ComObject<Base...> {
2017-10-11 02:09:04 +01:00
public:
HRESULT GetPrivateData(
REFGUID Name,
UINT *pDataSize,
void *pData) final {
return m_privateData.getData(
Name, pDataSize, pData);
}
HRESULT SetPrivateData(
REFGUID Name,
UINT DataSize,
const void *pData) final {
return m_privateData.setData(
Name, DataSize, pData);
}
HRESULT SetPrivateDataInterface(
REFGUID Name,
const IUnknown *pUnknown) final {
return m_privateData.setInterface(
Name, pUnknown);
}
private:
2017-10-11 08:51:22 +01:00
ComPrivateData m_privateData;
2017-10-11 02:09:04 +01:00
};
}