| 708 | } |
| 709 | |
| 710 | void GpuDumpVideoProfiles(Printer &p, AppGpu &gpu, bool show_video_props) { |
| 711 | p.SetHeader(); |
| 712 | ObjectWrapper video_profiles_obj(p, "Video Profiles", gpu.video_profiles.size()); |
| 713 | IndentWrapper indent_outer(p); |
| 714 | |
| 715 | if (p.Type() != OutputType::text || show_video_props) { |
| 716 | // Video profile details per profile |
| 717 | for (const auto &video_profile : gpu.video_profiles) { |
| 718 | p.SetSubHeader(); |
| 719 | ObjectWrapper video_profile_obj(p, video_profile->name); |
| 720 | IndentWrapper indent_inner(p); |
| 721 | { |
| 722 | p.SetSubHeader(); |
| 723 | ObjectWrapper profile_info_obj(p, "Video Profile Definition"); |
| 724 | p.SetSubHeader(); |
| 725 | DumpVkVideoProfileInfoKHRCustom(p, "VkVideoProfileInfoKHR", video_profile->profile_info); |
| 726 | chain_iterator_video_profile_info(p, gpu, video_profile->profile_info.pNext); |
| 727 | } |
| 728 | { |
| 729 | p.SetSubHeader(); |
| 730 | ObjectWrapper capabilities_obj(p, "Video Profile Capabilities"); |
| 731 | p.SetSubHeader(); |
| 732 | DumpVkVideoCapabilitiesKHR(p, "VkVideoCapabilitiesKHR", video_profile->capabilities); |
| 733 | chain_iterator_video_capabilities(p, gpu, video_profile->capabilities.pNext); |
| 734 | } |
| 735 | { |
| 736 | p.SetSubHeader(); |
| 737 | ObjectWrapper video_formats_obj(p, "Video Formats"); |
| 738 | for (const auto &video_formats_it : video_profile->formats_by_category) { |
| 739 | const auto &video_format_category_name = video_formats_it.first; |
| 740 | const auto &video_format_props = video_formats_it.second; |
| 741 | ObjectWrapper video_format_category(p, video_format_category_name, video_format_props.size()); |
| 742 | for (size_t i = 0; i < video_format_props.size(); ++i) { |
| 743 | ObjectWrapper video_format_obj(p, video_format_category_name + " Format #" + std::to_string(i + 1)); |
| 744 | p.SetSubHeader(); |
| 745 | DumpVkVideoFormatPropertiesKHR(p, "VkVideoFormatPropertiesKHR", video_format_props[i]); |
| 746 | chain_iterator_video_format_properties(p, gpu, video_format_props[i].pNext); |
| 747 | } |
| 748 | } |
| 749 | } |
| 750 | |
| 751 | p.AddNewline(); |
| 752 | } |
| 753 | } else { |
| 754 | // Video profile list only |
| 755 | for (const auto &video_profile : gpu.video_profiles) { |
| 756 | p.PrintString(video_profile->name); |
| 757 | } |
| 758 | } |
| 759 | |
| 760 | p.AddNewline(); |
| 761 | } |
| 762 | |
| 763 | AppDisplayPlane::AppDisplayPlane(AppGpu &gpu, uint32_t index, const VkDisplayPlanePropertiesKHR &in_prop) |
| 764 | : global_index(index), properties(in_prop) { |
no test coverage detected