mirror of
https://github.com/cemu-project/Cemu.git
synced 2025-07-02 21:11:17 +12:00
28 lines
630 B
C++
28 lines
630 B
C++
#pragma once
|
|
|
|
#include "Cafe/HW/Latte/Core/LatteQueryObject.h"
|
|
|
|
#include "Cafe/HW/Latte/Renderer/Metal/MetalCommon.h"
|
|
|
|
class LatteQueryObjectMtl : public LatteQueryObject
|
|
{
|
|
public:
|
|
LatteQueryObjectMtl(class MetalRenderer* mtlRenderer) : m_mtlr{mtlRenderer} {}
|
|
~LatteQueryObjectMtl();
|
|
|
|
bool getResult(uint64& numSamplesPassed) override;
|
|
void begin() override;
|
|
void end() override;
|
|
|
|
void GrowRange()
|
|
{
|
|
m_range.end++;
|
|
}
|
|
|
|
private:
|
|
class MetalRenderer* m_mtlr;
|
|
|
|
MetalQueryRange m_range = {INVALID_UINT32, INVALID_UINT32};
|
|
// TODO: make this a list of command buffers?
|
|
MTL::CommandBuffer* m_commandBuffer = nullptr;
|
|
};
|