[d3d10] Implement (Set|Get)Predication

This commit is contained in:
Philip Rebohle 2018-08-12 00:22:45 +02:00
parent 2af07c5faf
commit 346c59bb62
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
1 changed files with 12 additions and 2 deletions

View File

@ -666,14 +666,24 @@ namespace dxvk {
void STDMETHODCALLTYPE D3D10Device::SetPredication( void STDMETHODCALLTYPE D3D10Device::SetPredication(
ID3D10Predicate* pPredicate, ID3D10Predicate* pPredicate,
BOOL PredicateValue) { BOOL PredicateValue) {
Logger::err("D3D10Device::SetPredication: Not implemented"); D3D10Query* d3d10Predicate = static_cast<D3D10Query*>(pPredicate);
D3D11Query* d3d11Predicate = d3d10Predicate ? d3d10Predicate->GetD3D11Iface() : nullptr;
m_context->SetPredication(d3d11Predicate, PredicateValue);
} }
void STDMETHODCALLTYPE D3D10Device::GetPredication( void STDMETHODCALLTYPE D3D10Device::GetPredication(
ID3D10Predicate** ppPredicate, ID3D10Predicate** ppPredicate,
BOOL* pPredicateValue) { BOOL* pPredicateValue) {
Logger::err("D3D10Device::GetPredication: Not implemented"); ID3D11Predicate* d3d11Predicate = nullptr;
m_context->GetPredication(
ppPredicate ? &d3d11Predicate : nullptr,
pPredicateValue);
if (ppPredicate != nullptr)
*ppPredicate = static_cast<D3D11Query*>(d3d11Predicate)->GetD3D10Iface();
} }