// WARNING: DO NOT MODIFY! This file is automatically generated from the vk.xml registry
.Valid Usage (Implicit)
****
* [[VUID-vkCreateImageView-device-parameter]] pname:device must: be a valid sname:VkDevice handle
* [[VUID-vkCreateImageView-pCreateInfo-parameter]] pname:pCreateInfo must: be a valid pointer to a valid sname:VkImageViewCreateInfo structure
* [[VUID-vkCreateImageView-pAllocator-parameter]] If pname:pAllocator is not `NULL`, pname:pAllocator must: be a valid pointer to a valid sname:VkAllocationCallbacks structure
* [[VUID-vkCreateImageView-pView-parameter]] pname:pView must: be a valid pointer to a sname:VkImageView handle
****

.Return Codes
****
ifndef::doctype-manpage[]
<<fundamentals-successcodes,Success>>::
endif::doctype-manpage[]
ifdef::doctype-manpage[]
On success, this command returns::
endif::doctype-manpage[]
* ename:VK_SUCCESS
ifndef::doctype-manpage[]
<<fundamentals-errorcodes,Failure>>::
endif::doctype-manpage[]
ifdef::doctype-manpage[]
On failure, this command returns::
endif::doctype-manpage[]
* ename:VK_ERROR_OUT_OF_HOST_MEMORY
* ename:VK_ERROR_OUT_OF_DEVICE_MEMORY
****

