diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2022-03-27 05:05:57 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-03-05 12:18:00 +0100 |
commit | 8a3411b417f76db786b1d3cfffbd90926abb20ca (patch) | |
tree | 383070bd0d4a33189f38423ceea9a5692d38ba09 /src/video_core/texture_cache/util.h | |
parent | Merge pull request #9884 from liamwhite/service-cleanup (diff) | |
download | yuzu-8a3411b417f76db786b1d3cfffbd90926abb20ca.tar yuzu-8a3411b417f76db786b1d3cfffbd90926abb20ca.tar.gz yuzu-8a3411b417f76db786b1d3cfffbd90926abb20ca.tar.bz2 yuzu-8a3411b417f76db786b1d3cfffbd90926abb20ca.tar.lz yuzu-8a3411b417f76db786b1d3cfffbd90926abb20ca.tar.xz yuzu-8a3411b417f76db786b1d3cfffbd90926abb20ca.tar.zst yuzu-8a3411b417f76db786b1d3cfffbd90926abb20ca.zip |
Diffstat (limited to 'src/video_core/texture_cache/util.h')
-rw-r--r-- | src/video_core/texture_cache/util.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/video_core/texture_cache/util.h b/src/video_core/texture_cache/util.h index d103db8ae..84aa6880d 100644 --- a/src/video_core/texture_cache/util.h +++ b/src/video_core/texture_cache/util.h @@ -56,6 +56,10 @@ struct OverlapResult { SubresourceBase base, u32 up_scale = 1, u32 down_shift = 0); +[[nodiscard]] std::vector<ImageCopy> MakeReinterpretImageCopies(const ImageInfo& src, + u32 up_scale = 1, + u32 down_shift = 0); + [[nodiscard]] bool IsValidEntry(const Tegra::MemoryManager& gpu_memory, const TICEntry& config); [[nodiscard]] std::vector<BufferImageCopy> UnswizzleImage(Tegra::MemoryManager& gpu_memory, @@ -88,6 +92,9 @@ void SwizzleImage(Tegra::MemoryManager& gpu_memory, GPUVAddr gpu_addr, const Ima [[nodiscard]] bool IsPitchLinearSameSize(const ImageInfo& lhs, const ImageInfo& rhs, bool strict_size) noexcept; +[[nodiscard]] bool IsBlockLinearSizeCompatibleBPPRelaxed(const ImageInfo& lhs, const ImageInfo& rhs, + u32 lhs_level, u32 rhs_level) noexcept; + [[nodiscard]] std::optional<OverlapResult> ResolveOverlap(const ImageInfo& new_info, GPUVAddr gpu_addr, VAddr cpu_addr, const ImageBase& overlap, @@ -106,6 +113,9 @@ void SwizzleImage(Tegra::MemoryManager& gpu_memory, GPUVAddr gpu_addr, const Ima GPUVAddr candidate_addr, RelaxedOptions options, bool broken_views, bool native_bgr); +[[nodiscard]] bool IsSubCopy(const ImageInfo& candidate, const ImageBase& image, + GPUVAddr candidate_addr); + void DeduceBlitImages(ImageInfo& dst_info, ImageInfo& src_info, const ImageBase* dst, const ImageBase* src); |