diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.h b/src/video_core/renderer_vulkan/vk_rasterizer.h index 647f3333b..fb9ca4bbe 100644 --- a/src/video_core/renderer_vulkan/vk_rasterizer.h +++ b/src/video_core/renderer_vulkan/vk_rasterizer.h @@ -70,15 +70,16 @@ public: PipelineCache& GetPipelineCache() { return pipeline_cache; } - + template void ForEachMappedRangeInRange(VAddr addr, u64 size, Func&& func) { const auto range = decltype(mapped_ranges)::interval_type::right_open(addr, addr + size); Common::RecursiveSharedLock lock{mapped_ranges_mutex}; - for (const auto& mapped_range : mapped_ranges & range) { + for (const auto& mapped_range : (mapped_ranges & range)) { func(mapped_range); } } + private: RenderState PrepareRenderState(u32 mrt_mask); void BeginRendering(const GraphicsPipeline& pipeline, RenderState& state); @@ -107,6 +108,7 @@ private: } bool IsComputeMetaClear(const Pipeline* pipeline); + private: friend class VideoCore::BufferCache;