MTKViewDelegate.cc
1 #include "MTKViewDelegate.hh" 2 3 MTKViewDelegate::MTKViewDelegate(std::unique_ptr<Renderer> r) 4 : renderer(std::move(r)) 5 { 6 } 7 8 std::expected<std::unique_ptr<MTKViewDelegate>, RendererError> 9 MTKViewDelegate::init(MTL::Device* device) 10 { 11 return Renderer::init(device) 12 .transform([](std::unique_ptr<Renderer> r) { 13 return std::unique_ptr<MTKViewDelegate>( 14 new MTKViewDelegate(std::move(r))); 15 }); 16 } 17 18 void MTKViewDelegate::drawInMTKView(MTK::View* view) 19 { 20 renderer->draw(view); 21 }