summaryrefslogtreecommitdiffstats
path: root/src/video_core/texture_cache/texture_cache_base.h
diff options
context:
space:
mode:
authorFernando S <fsahmkow27@gmail.com>2023-03-05 15:30:47 +0100
committerGitHub <noreply@github.com>2023-03-05 15:30:47 +0100
commitfdae95efaa84fe1baeab0b4dd1435720cae0f88d (patch)
tree383070bd0d4a33189f38423ceea9a5692d38ba09 /src/video_core/texture_cache/texture_cache_base.h
parentMerge pull request #9884 from liamwhite/service-cleanup (diff)
parentEngines: Implement Accelerate DMA Texture. (diff)
downloadyuzu-fdae95efaa84fe1baeab0b4dd1435720cae0f88d.tar
yuzu-fdae95efaa84fe1baeab0b4dd1435720cae0f88d.tar.gz
yuzu-fdae95efaa84fe1baeab0b4dd1435720cae0f88d.tar.bz2
yuzu-fdae95efaa84fe1baeab0b4dd1435720cae0f88d.tar.lz
yuzu-fdae95efaa84fe1baeab0b4dd1435720cae0f88d.tar.xz
yuzu-fdae95efaa84fe1baeab0b4dd1435720cae0f88d.tar.zst
yuzu-fdae95efaa84fe1baeab0b4dd1435720cae0f88d.zip
Diffstat (limited to 'src/video_core/texture_cache/texture_cache_base.h')
-rw-r--r--src/video_core/texture_cache/texture_cache_base.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/video_core/texture_cache/texture_cache_base.h b/src/video_core/texture_cache/texture_cache_base.h
index 013836933..848a5d9ea 100644
--- a/src/video_core/texture_cache/texture_cache_base.h
+++ b/src/video_core/texture_cache/texture_cache_base.h
@@ -209,6 +209,9 @@ public:
/// Pop asynchronous downloads
void PopAsyncFlushes();
+ [[nodiscard]] std::optional<std::pair<Image*, std::pair<u32, u32>>> ObtainImage(
+ const Tegra::DMA::ImageOperand& operand, bool mark_as_modified);
+
/// Return true when a CPU region is modified from the GPU
[[nodiscard]] bool IsRegionGpuModified(VAddr addr, size_t size);
@@ -300,6 +303,8 @@ private:
/// Remove joined images from the cache
[[nodiscard]] ImageId JoinImages(const ImageInfo& info, GPUVAddr gpu_addr, VAddr cpu_addr);
+ [[nodiscard]] ImageId FindDMAImage(const ImageInfo& info, GPUVAddr gpu_addr);
+
/// Return a blit image pair from the given guest blit parameters
[[nodiscard]] std::optional<BlitImages> GetBlitImages(
const Tegra::Engines::Fermi2D::Surface& dst, const Tegra::Engines::Fermi2D::Surface& src,