if (result != VK_SUCCESS)
goto bail;
- VK_OUTARRAY_MAKE(conn, pProperties, pPropertyCount);
+ VK_OUTARRAY_MAKE_TYPED(VkDisplayProperties2KHR, conn,
+ pProperties, pPropertyCount);
wsi_for_each_connector(connector, wsi) {
if (connector->connected) {
- vk_outarray_append(&conn, prop) {
+ vk_outarray_append_typed(VkDisplayProperties2KHR, &conn, prop) {
wsi_display_fill_in_display_properties(wsi_device,
connector,
prop);
if (result != VK_SUCCESS)
goto bail;
- VK_OUTARRAY_MAKE(conn, pProperties, pPropertyCount);
+ VK_OUTARRAY_MAKE_TYPED(VkDisplayPlanePropertiesKHR, conn,
+ pProperties, pPropertyCount);
wsi_for_each_connector(connector, wsi) {
- vk_outarray_append(&conn, prop) {
+ vk_outarray_append_typed(VkDisplayPlanePropertiesKHR, &conn, prop) {
VkDisplayPlaneProperties2KHR prop2 = {
.sType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR,
};
if (result != VK_SUCCESS)
goto bail;
- VK_OUTARRAY_MAKE(conn, pProperties, pPropertyCount);
+ VK_OUTARRAY_MAKE_TYPED(VkDisplayPlaneProperties2KHR, conn,
+ pProperties, pPropertyCount);
wsi_for_each_connector(connector, wsi) {
- vk_outarray_append(&conn, prop) {
+ vk_outarray_append_typed(VkDisplayPlaneProperties2KHR, &conn, prop) {
wsi_display_fill_in_display_plane_properties(wsi_device, connector,
prop);
}
struct wsi_display *wsi =
(struct wsi_display *) wsi_device->wsi[VK_ICD_WSI_PLATFORM_DISPLAY];
- VK_OUTARRAY_MAKE(conn, pDisplays, pDisplayCount);
+ VK_OUTARRAY_MAKE_TYPED(VkDisplayKHR, conn, pDisplays, pDisplayCount);
int c = 0;
wsi_for_each_connector(connector, wsi) {
if (c == planeIndex && connector->connected) {
- vk_outarray_append(&conn, display) {
+ vk_outarray_append_typed(VkDisplayKHR, &conn, display) {
*display = wsi_display_connector_to_handle(connector);
}
}
struct wsi_display_connector *connector =
wsi_display_connector_from_handle(display);
- VK_OUTARRAY_MAKE(conn, pProperties, pPropertyCount);
+ VK_OUTARRAY_MAKE_TYPED(VkDisplayModePropertiesKHR, conn,
+ pProperties, pPropertyCount);
wsi_for_each_display_mode(display_mode, connector) {
if (!display_mode->valid)
continue;
- vk_outarray_append(&conn, prop) {
+ vk_outarray_append_typed(VkDisplayModePropertiesKHR, &conn, prop) {
VkDisplayModeProperties2KHR prop2 = {
.sType = VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR,
};
struct wsi_display_connector *connector =
wsi_display_connector_from_handle(display);
- VK_OUTARRAY_MAKE(conn, pProperties, pPropertyCount);
+ VK_OUTARRAY_MAKE_TYPED(VkDisplayModeProperties2KHR, conn,
+ pProperties, pPropertyCount);
wsi_for_each_display_mode(display_mode, connector) {
if (!display_mode->valid)
continue;
- vk_outarray_append(&conn, prop) {
+ vk_outarray_append_typed(VkDisplayModeProperties2KHR, &conn, prop) {
wsi_display_fill_in_display_mode_properties(wsi_device,
display_mode, prop);
}
uint32_t *surface_format_count,
VkSurfaceFormatKHR *surface_formats)
{
- VK_OUTARRAY_MAKE(out, surface_formats, surface_format_count);
+ VK_OUTARRAY_MAKE_TYPED(VkSurfaceFormatKHR, out,
+ surface_formats, surface_format_count);
VkFormat sorted_formats[ARRAY_SIZE(available_surface_formats)];
get_sorted_vk_formats(wsi_device, sorted_formats);
for (unsigned i = 0; i < ARRAY_SIZE(sorted_formats); i++) {
- vk_outarray_append(&out, f) {
+ vk_outarray_append_typed(VkSurfaceFormatKHR, &out, f) {
f->format = sorted_formats[i];
f->colorSpace = VK_COLORSPACE_SRGB_NONLINEAR_KHR;
}
uint32_t *surface_format_count,
VkSurfaceFormat2KHR *surface_formats)
{
- VK_OUTARRAY_MAKE(out, surface_formats, surface_format_count);
+ VK_OUTARRAY_MAKE_TYPED(VkSurfaceFormat2KHR, out,
+ surface_formats, surface_format_count);
VkFormat sorted_formats[ARRAY_SIZE(available_surface_formats)];
get_sorted_vk_formats(wsi_device, sorted_formats);
for (unsigned i = 0; i < ARRAY_SIZE(sorted_formats); i++) {
- vk_outarray_append(&out, f) {
+ vk_outarray_append_typed(VkSurfaceFormat2KHR, &out, f) {
assert(f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR);
f->surfaceFormat.format = sorted_formats[i];
f->surfaceFormat.colorSpace = VK_COLORSPACE_SRGB_NONLINEAR_KHR;
uint32_t *present_mode_count,
VkPresentModeKHR *present_modes)
{
- VK_OUTARRAY_MAKE(conn, present_modes, present_mode_count);
+ VK_OUTARRAY_MAKE_TYPED(VkPresentModeKHR, conn,
+ present_modes, present_mode_count);
- vk_outarray_append(&conn, present) {
+ vk_outarray_append_typed(VkPresentModeKHR, &conn, present) {
*present = VK_PRESENT_MODE_FIFO_KHR;
}
{
VkIcdSurfaceDisplay *surface = (VkIcdSurfaceDisplay *) surface_base;
wsi_display_mode *mode = wsi_display_mode_from_handle(surface->displayMode);
- VK_OUTARRAY_MAKE(out, pRects, pRectCount);
+ VK_OUTARRAY_MAKE_TYPED(VkRect2D, out, pRects, pRectCount);
if (wsi_device_matches_drm_fd(wsi_device, mode->connector->wsi->fd)) {
- vk_outarray_append(&out, rect) {
+ vk_outarray_append_typed(VkRect2D, &out, rect) {
*rect = (VkRect2D) {
.offset = { 0, 0 },
.extent = { mode->hdisplay, mode->vdisplay },
wsi_device->sw))
return VK_ERROR_SURFACE_LOST_KHR;
- VK_OUTARRAY_MAKE(out, pSurfaceFormats, pSurfaceFormatCount);
+ VK_OUTARRAY_MAKE_TYPED(VkSurfaceFormatKHR, out,
+ pSurfaceFormats, pSurfaceFormatCount);
struct wsi_wl_format *disp_fmt;
u_vector_foreach(disp_fmt, &display.formats) {
!(disp_fmt->flags & WSI_WL_FMT_OPAQUE))
continue;
- vk_outarray_append(&out, out_fmt) {
+ vk_outarray_append_typed(VkSurfaceFormatKHR, &out, out_fmt) {
out_fmt->format = disp_fmt->vk_format;
out_fmt->colorSpace = VK_COLORSPACE_SRGB_NONLINEAR_KHR;
}
wsi_device->sw))
return VK_ERROR_SURFACE_LOST_KHR;
- VK_OUTARRAY_MAKE(out, pSurfaceFormats, pSurfaceFormatCount);
+ VK_OUTARRAY_MAKE_TYPED(VkSurfaceFormat2KHR, out,
+ pSurfaceFormats, pSurfaceFormatCount);
struct wsi_wl_format *disp_fmt;
u_vector_foreach(disp_fmt, &display.formats) {
!(disp_fmt->flags & WSI_WL_FMT_OPAQUE))
continue;
- vk_outarray_append(&out, out_fmt) {
+ vk_outarray_append_typed(VkSurfaceFormat2KHR, &out, out_fmt) {
out_fmt->surfaceFormat.format = disp_fmt->vk_format;
out_fmt->surfaceFormat.colorSpace = VK_COLORSPACE_SRGB_NONLINEAR_KHR;
}
uint32_t* pRectCount,
VkRect2D* pRects)
{
- VK_OUTARRAY_MAKE(out, pRects, pRectCount);
+ VK_OUTARRAY_MAKE_TYPED(VkRect2D, out, pRects, pRectCount);
- vk_outarray_append(&out, rect) {
+ vk_outarray_append_typed(VkRect2D, &out, rect) {
/* We don't know a size so just return the usual "I don't know." */
*rect = (VkRect2D) {
.offset = { 0, 0 },
uint32_t *pSurfaceFormatCount,
VkSurfaceFormatKHR *pSurfaceFormats)
{
- VK_OUTARRAY_MAKE(out, pSurfaceFormats, pSurfaceFormatCount);
+ VK_OUTARRAY_MAKE_TYPED(VkSurfaceFormatKHR, out,
+ pSurfaceFormats, pSurfaceFormatCount);
unsigned count;
VkFormat sorted_formats[ARRAY_SIZE(formats)];
return VK_ERROR_SURFACE_LOST_KHR;
for (unsigned i = 0; i < count; i++) {
- vk_outarray_append(&out, f) {
+ vk_outarray_append_typed(VkSurfaceFormatKHR, &out, f) {
f->format = sorted_formats[i];
f->colorSpace = VK_COLORSPACE_SRGB_NONLINEAR_KHR;
}
uint32_t *pSurfaceFormatCount,
VkSurfaceFormat2KHR *pSurfaceFormats)
{
- VK_OUTARRAY_MAKE(out, pSurfaceFormats, pSurfaceFormatCount);
+ VK_OUTARRAY_MAKE_TYPED(VkSurfaceFormat2KHR, out,
+ pSurfaceFormats, pSurfaceFormatCount);
unsigned count;
VkFormat sorted_formats[ARRAY_SIZE(formats)];
return VK_ERROR_SURFACE_LOST_KHR;
for (unsigned i = 0; i < count; i++) {
- vk_outarray_append(&out, f) {
+ vk_outarray_append_typed(VkSurfaceFormat2KHR, &out, f) {
assert(f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR);
f->surfaceFormat.format = sorted_formats[i];
f->surfaceFormat.colorSpace = VK_COLORSPACE_SRGB_NONLINEAR_KHR;
{
xcb_connection_t *conn = x11_surface_get_connection(icd_surface);
xcb_window_t window = x11_surface_get_window(icd_surface);
- VK_OUTARRAY_MAKE(out, pRects, pRectCount);
+ VK_OUTARRAY_MAKE_TYPED(VkRect2D, out, pRects, pRectCount);
- vk_outarray_append(&out, rect) {
+ vk_outarray_append_typed(VkRect2D, &out, rect) {
xcb_generic_error_t *err = NULL;
xcb_get_geometry_cookie_t geom_cookie = xcb_get_geometry(conn, window);
xcb_get_geometry_reply_t *geom =