WebMetalRenderCommandEncoder.cpp [plain text]
#include "config.h"
#include "WebMetalRenderCommandEncoder.h"
#if ENABLE(WEBMETAL)
#include "GPULegacyCommandBuffer.h"
#include "GPULegacyRenderPassDescriptor.h"
#include "WebMetalBuffer.h"
#include "WebMetalCommandBuffer.h"
#include "WebMetalDepthStencilState.h"
#include "WebMetalRenderPassDescriptor.h"
#include "WebMetalRenderPipelineState.h"
namespace WebCore {
Ref<WebMetalRenderCommandEncoder> WebMetalRenderCommandEncoder::create(GPULegacyRenderCommandEncoder&& encoder)
{
return adoptRef(*new WebMetalRenderCommandEncoder(WTFMove(encoder)));
}
WebMetalRenderCommandEncoder::WebMetalRenderCommandEncoder(GPULegacyRenderCommandEncoder&& encoder)
: m_encoder { WTFMove(encoder) }
{
}
WebMetalRenderCommandEncoder::~WebMetalRenderCommandEncoder() = default;
void WebMetalRenderCommandEncoder::setRenderPipelineState(WebMetalRenderPipelineState& pipelineState)
{
m_encoder.setRenderPipelineState(pipelineState.state());
}
void WebMetalRenderCommandEncoder::setDepthStencilState(WebMetalDepthStencilState& depthStencilState)
{
m_encoder.setDepthStencilState(depthStencilState.state());
}
void WebMetalRenderCommandEncoder::setVertexBuffer(WebMetalBuffer& buffer, unsigned offset, unsigned index)
{
m_encoder.setVertexBuffer(buffer.buffer(), offset, index);
}
void WebMetalRenderCommandEncoder::setFragmentBuffer(WebMetalBuffer& buffer, unsigned offset, unsigned index)
{
m_encoder.setFragmentBuffer(buffer.buffer(), offset, index);
}
void WebMetalRenderCommandEncoder::drawPrimitives(unsigned type, unsigned start, unsigned count)
{
m_encoder.drawPrimitives(type, start, count);
}
void WebMetalRenderCommandEncoder::endEncoding()
{
return m_encoder.endEncoding();
}
}
#endif