diff options
author | ameerj <52414509+ameerj@users.noreply.github.com> | 2023-03-07 03:16:17 +0100 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2023-03-07 04:57:45 +0100 |
commit | 6b9cc0ed23b15a1b96b322b03feff2153e44a4a9 (patch) | |
tree | 6949cedbe90b6d34e2092c8eba57b243defb21dc /src/video_core/texture_cache/texture_cache_base.h | |
parent | Merge pull request #9890 from Kelebek1/reverb_fix (diff) | |
download | yuzu-6b9cc0ed23b15a1b96b322b03feff2153e44a4a9.tar yuzu-6b9cc0ed23b15a1b96b322b03feff2153e44a4a9.tar.gz yuzu-6b9cc0ed23b15a1b96b322b03feff2153e44a4a9.tar.bz2 yuzu-6b9cc0ed23b15a1b96b322b03feff2153e44a4a9.tar.lz yuzu-6b9cc0ed23b15a1b96b322b03feff2153e44a4a9.tar.xz yuzu-6b9cc0ed23b15a1b96b322b03feff2153e44a4a9.tar.zst yuzu-6b9cc0ed23b15a1b96b322b03feff2153e44a4a9.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/texture_cache/texture_cache_base.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/video_core/texture_cache/texture_cache_base.h b/src/video_core/texture_cache/texture_cache_base.h index 848a5d9ea..5a5b4179c 100644 --- a/src/video_core/texture_cache/texture_cache_base.h +++ b/src/video_core/texture_cache/texture_cache_base.h @@ -209,8 +209,11 @@ 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); + [[nodiscard]] ImageId DmaImageId(const Tegra::DMA::ImageOperand& operand); + + [[nodiscard]] std::pair<Image*, BufferImageCopy> DmaBufferImageCopy( + const Tegra::DMA::ImageCopy& copy_info, const Tegra::DMA::BufferOperand& buffer_operand, + const Tegra::DMA::ImageOperand& image_operand, ImageId image_id, bool modifies_image); /// Return true when a CPU region is modified from the GPU [[nodiscard]] bool IsRegionGpuModified(VAddr addr, size_t size); @@ -386,6 +389,9 @@ private: /// Returns true if the current clear parameters clear the whole image of a given image view [[nodiscard]] bool IsFullClear(ImageViewId id); + [[nodiscard]] std::pair<u32, u32> PrepareDmaImage(ImageId dst_id, GPUVAddr base_addr, + bool mark_as_modified); + bool ImageCanRescale(ImageBase& image); void InvalidateScale(Image& image); bool ScaleUp(Image& image); |