Loading libs/gui/BufferQueueProducer.cpp +3 −0 Original line number Diff line number Diff line Loading @@ -1121,6 +1121,9 @@ int BufferQueueProducer::query(int what, int *outValue) { case NATIVE_WINDOW_CONSUMER_IS_PROTECTED: value = static_cast<int32_t>(mCore->mConsumerIsProtected); break; case NATIVE_WINDOW_MAX_BUFFER_COUNT: value = static_cast<int32_t>(mCore->mMaxBufferCount); break; default: return BAD_VALUE; } Loading libs/nativewindow/include/system/window.h +5 −0 Original line number Diff line number Diff line Loading @@ -184,6 +184,11 @@ enum { * Returns data space for the buffers. */ NATIVE_WINDOW_DATASPACE = 20, /* * Returns maxBufferCount set by BufferQueueConsumer */ NATIVE_WINDOW_MAX_BUFFER_COUNT = 21, }; /* Valid operations for the (*perform)() hook. Loading vulkan/libvulkan/swapchain.cpp +8 −1 Original line number Diff line number Diff line Loading @@ -573,8 +573,15 @@ VkResult GetPhysicalDeviceSurfaceCapabilitiesKHR( } // TODO(jessehall): Figure out what the min/max values should be. int max_buffer_count; err = window->query(window, NATIVE_WINDOW_MAX_BUFFER_COUNT, &max_buffer_count); if (err != 0) { ALOGE("NATIVE_WINDOW_MAX_BUFFER_COUNT query failed: %s (%d)", strerror(-err), err); return VK_ERROR_SURFACE_LOST_KHR; } capabilities->minImageCount = 2; capabilities->maxImageCount = 3; capabilities->maxImageCount = static_cast<uint32_t>(max_buffer_count); capabilities->currentExtent = VkExtent2D{static_cast<uint32_t>(width), static_cast<uint32_t>(height)}; Loading Loading
libs/gui/BufferQueueProducer.cpp +3 −0 Original line number Diff line number Diff line Loading @@ -1121,6 +1121,9 @@ int BufferQueueProducer::query(int what, int *outValue) { case NATIVE_WINDOW_CONSUMER_IS_PROTECTED: value = static_cast<int32_t>(mCore->mConsumerIsProtected); break; case NATIVE_WINDOW_MAX_BUFFER_COUNT: value = static_cast<int32_t>(mCore->mMaxBufferCount); break; default: return BAD_VALUE; } Loading
libs/nativewindow/include/system/window.h +5 −0 Original line number Diff line number Diff line Loading @@ -184,6 +184,11 @@ enum { * Returns data space for the buffers. */ NATIVE_WINDOW_DATASPACE = 20, /* * Returns maxBufferCount set by BufferQueueConsumer */ NATIVE_WINDOW_MAX_BUFFER_COUNT = 21, }; /* Valid operations for the (*perform)() hook. Loading
vulkan/libvulkan/swapchain.cpp +8 −1 Original line number Diff line number Diff line Loading @@ -573,8 +573,15 @@ VkResult GetPhysicalDeviceSurfaceCapabilitiesKHR( } // TODO(jessehall): Figure out what the min/max values should be. int max_buffer_count; err = window->query(window, NATIVE_WINDOW_MAX_BUFFER_COUNT, &max_buffer_count); if (err != 0) { ALOGE("NATIVE_WINDOW_MAX_BUFFER_COUNT query failed: %s (%d)", strerror(-err), err); return VK_ERROR_SURFACE_LOST_KHR; } capabilities->minImageCount = 2; capabilities->maxImageCount = 3; capabilities->maxImageCount = static_cast<uint32_t>(max_buffer_count); capabilities->currentExtent = VkExtent2D{static_cast<uint32_t>(width), static_cast<uint32_t>(height)}; Loading