1// Copyright 2023 The Khronos Group Inc.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5// Common Valid Usage
6// Common to vk*Copy* commands that have image as source and/or destination and
7// where VkCopyCommandTransformInfoQCOM is not applicable.
8// This relies on an additional attribute {imageparam} set by the command
9// which includes this file, specifying the name of the source or
10// destination image.
11// Additionally, it relies on the {imagesubresource} attribute to specify the
12// field in pRegions corresponding to {imageparam}, as well as {imageoffset}
13// and {imageextents} to specify the fields in pRegions corresponding to the
14// offset and extent of the copy.
15
16  * [[VUID-{refpage}-{imagesubresource}-07970]]
17    The image region specified by each element of pname:pRegions must: be
18    contained within the specified pname:{imagesubresource} of
19    pname:{imageparam}
20  * [[VUID-{refpage}-{imagesubresource}-07971]]
21    For each element of pname:pRegions, pname:{imageoffset}.x and
22    [eq]#(pname:{imageextent}.width {plus} pname:{imageoffset}.x)# must:
23    both be greater than or equal to `0` and less than or equal to the width
24    of the specified pname:{imagesubresource} of pname:{imageparam}
25  * [[VUID-{refpage}-{imagesubresource}-07972]]
26    For each element of pname:pRegions, pname:{imageoffset}.y and
27    [eq]#(pname:{imageextent}.height {plus} pname:{imageoffset}.y)# must:
28    both be greater than or equal to `0` and less than or equal to the
29    height of the specified pname:{imagesubresource} of pname:{imageparam}
30// Common Valid Usage
31