VPI - Vision Programming Interface

1.2 Release

DataLayout.h
Go to the documentation of this file.
1 /*
2  * Copyright 2020-2021 NVIDIA Corporation. All rights reserved.
3  *
4  * NOTICE TO LICENSEE:
5  *
6  * This source code and/or documentation ("Licensed Deliverables") are
7  * subject to NVIDIA intellectual property rights under U.S. and
8  * international Copyright laws.
9  *
10  * These Licensed Deliverables contained herein is PROPRIETARY and
11  * CONFIDENTIAL to NVIDIA and is being provided under the terms and
12  * conditions of a form of NVIDIA software license agreement by and
13  * between NVIDIA and Licensee ("License Agreement") or electronically
14  * accepted by Licensee. Notwithstanding any terms or conditions to
15  * the contrary in the License Agreement, reproduction or disclosure
16  * of the Licensed Deliverables to any third party without the express
17  * written consent of NVIDIA is prohibited.
18  *
19  * NOTWITHSTANDING ANY TERMS OR CONDITIONS TO THE CONTRARY IN THE
20  * LICENSE AGREEMENT, NVIDIA MAKES NO REPRESENTATION ABOUT THE
21  * SUITABILITY OF THESE LICENSED DELIVERABLES FOR ANY PURPOSE. IT IS
22  * PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY OF ANY KIND.
23  * NVIDIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THESE LICENSED
24  * DELIVERABLES, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY,
25  * NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE.
26  * NOTWITHSTANDING ANY TERMS OR CONDITIONS TO THE CONTRARY IN THE
27  * LICENSE AGREEMENT, IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY
28  * SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OR ANY
29  * DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
30  * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
31  * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
32  * OF THESE LICENSED DELIVERABLES.
33  *
34  * U.S. Government End Users. These Licensed Deliverables are a
35  * "commercial item" as that term is defined at 48 C.F.R. 2.101 (OCT
36  * 1995), consisting of "commercial computer software" and "commercial
37  * computer software documentation" as such terms are used in 48
38  * C.F.R. 12.212 (SEPT 1995) and is provided to the U.S. Government
39  * only as a commercial end item. Consistent with 48 C.F.R.12.212 and
40  * 48 C.F.R. 227.7202-1 through 227.7202-4 (JUNE 1995), all
41  * U.S. Government End Users acquire the Licensed Deliverables with
42  * only those rights set forth herein.
43  *
44  * Any use of the Licensed Deliverables in individual and commercial
45  * software must include, in the user documentation and internal
46  * comments to the code, the above Disclaimer and U.S. Government End
47  * Users Notice.
48  */
49 
56 #ifndef NV_VPI_DATALAYOUT_H
57 #define NV_VPI_DATALAYOUT_H
58 
59 #include "Export.h"
60 #include "detail/FormatUtils.h"
61 
62 #ifdef __cplusplus
63 extern "C" {
64 #endif
65 
127 typedef enum
128 {
131  VPI_PACKING_X1 = VPI_DETAIL_BPP_NCH(1, 1),
133  VPI_PACKING_X2 = VPI_DETAIL_BPP_NCH(2, 1),
135  VPI_PACKING_X4 = VPI_DETAIL_BPP_NCH(4, 1),
137  VPI_PACKING_X8 = VPI_DETAIL_BPP_NCH(8, 1),
139  VPI_PACKING_X4Y4 = VPI_DETAIL_BPP_NCH(8, 2),
141  VPI_PACKING_X3Y3Z2 = VPI_DETAIL_BPP_NCH(8, 3),
143  VPI_PACKING_X16 = VPI_DETAIL_BPP_NCH(16, 1),
150  VPI_PACKING_X8_Y8 = VPI_DETAIL_BPP_NCH(16, 2),
152  VPI_PACKING_X5Y5Z6 = VPI_DETAIL_BPP_NCH(16, 3),
159  VPI_PACKING_X1Y5Z5W5 = VPI_DETAIL_BPP_NCH(16, 4),
167  VPI_PACKING_X24 = VPI_DETAIL_BPP_NCH(24, 1),
169  VPI_PACKING_X8_Y8_Z8 = VPI_DETAIL_BPP_NCH(24, 3),
171  VPI_PACKING_X32 = VPI_DETAIL_BPP_NCH(32, 1),
174  VPI_PACKING_X16_Y16 = VPI_DETAIL_BPP_NCH(32, 2),
178  VPI_PACKING_X10Y11Z11 = VPI_DETAIL_BPP_NCH(32, 3),
181  VPI_PACKING_X8_Y8_Z8_W8 = VPI_DETAIL_BPP_NCH(32, 4),
185  VPI_PACKING_X48 = VPI_DETAIL_BPP_NCH(48, 1),
186  VPI_PACKING_X16_Y16_Z16 = VPI_DETAIL_BPP_NCH(48, 3),
188  VPI_PACKING_X64 = VPI_DETAIL_BPP_NCH(64, 1),
189  VPI_PACKING_X32_Y32 = VPI_DETAIL_BPP_NCH(64, 2),
190  VPI_PACKING_X16_Y16_Z16_W16 = VPI_DETAIL_BPP_NCH(64, 4),
192  VPI_PACKING_X96 = VPI_DETAIL_BPP_NCH(96, 1),
193  VPI_PACKING_X32_Y32_Z32 = VPI_DETAIL_BPP_NCH(96, 3),
195  VPI_PACKING_X128 = VPI_DETAIL_BPP_NCH(128, 1),
196  VPI_PACKING_X64_Y64 = VPI_DETAIL_BPP_NCH(128, 2),
197  VPI_PACKING_X32_Y32_Z32_W32 = VPI_DETAIL_BPP_NCH(128, 4),
199  VPI_PACKING_X192 = VPI_DETAIL_BPP_NCH(192, 1),
200  VPI_PACKING_X64_Y64_Z64 = VPI_DETAIL_BPP_NCH(192, 3),
202  VPI_PACKING_X256 = VPI_DETAIL_BPP_NCH(256, 1),
203  VPI_PACKING_X64_Y64_Z64_W64 = VPI_DETAIL_BPP_NCH(256, 4),
205  VPI_PACKING_INVALID = INT32_MAX
207 
209 typedef enum
210 {
211  VPI_DATA_TYPE_INVALID = 0,
217 
224 typedef enum
225 {
228 
231 
234 
237 
240 
243 
246 
249 
253 
259 
262 typedef enum
263 {
273 
281 typedef enum
282 {
284  VPI_DETAIL_MAKE_SWZL(INVALID, INVALID, INVALID, INVALID),
287  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, 0, 0),
288  VPI_DETAIL_DEF_SWIZZLE_ENUM(1, 0, 0, 0),
289  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, 0, 1),
290  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Y, Z, W),
291  VPI_DETAIL_DEF_SWIZZLE_ENUM(Z, Y, X, W),
292  VPI_DETAIL_DEF_SWIZZLE_ENUM(W, X, Y, Z),
293  VPI_DETAIL_DEF_SWIZZLE_ENUM(W, Z, Y, X),
294  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, Z, W, X),
295  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Y, Z, 1),
296  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Y, Z, 0),
297  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, Z, W, 1),
298  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, X, X, 1),
299  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Z, Y, 1),
300  VPI_DETAIL_DEF_SWIZZLE_ENUM(Z, Y, X, 1),
301  VPI_DETAIL_DEF_SWIZZLE_ENUM(Z, Y, X, 0),
302  VPI_DETAIL_DEF_SWIZZLE_ENUM(W, Z, Y, 1),
303  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, 0, 0, 0),
304  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, X, 0, 0),
305  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, X, 0),
306  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, 0, X),
307  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, 0, 0, 0),
308  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, Y, 0, 0),
309  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, Y, 0),
310  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, 0, Y),
311  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, X, Y, 0),
312  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, X, X, Y),
313  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, Y, Y, X),
314  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, Y, X, 0),
315  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, 0, 0, Y),
316  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, 0, 0, X),
317  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, 0, 0, 1),
318  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Y, 0, 1),
319  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Y, 0, 0),
320  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, X, Z, 0),
321  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, Z, X, 0),
322  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Z, Y, 0),
323  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, Z, X, 1),
324  VPI_DETAIL_DEF_SWIZZLE_ENUM(Z, Y, W, 1),
325  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, Y, X, 1),
326  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Y, X, Z),
327  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, X, Z, X),
328  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Z, 0, 0),
329  VPI_DETAIL_DEF_SWIZZLE_ENUM(W, Y, X, Z),
330  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, X, 0, 0),
331  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, X, 0, 1),
332  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, Y, X),
333  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, 0, X, Y),
334  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, X, Y, 1),
335  VPI_DETAIL_DEF_SWIZZLE_ENUM(0, X, 0, 1),
336  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, Z, X, W),
337  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, W, 0, 0),
338  VPI_DETAIL_DEF_SWIZZLE_ENUM(X, Y, W, 0),
339  VPI_DETAIL_DEF_SWIZZLE_ENUM(Y, Z, W, 0),
341 } VPISwizzle;
342 
358 #ifdef VPI_DOXYGEN
359 # define VPI_MAKE_SWIZZLE_ABBREV(x, y, z, w)
360 #else
361 # define VPI_MAKE_SWIZZLE_ABBREV (VPISwizzle) VPI_DETAIL_MAKE_SWZL
362 #endif
363 
378 #ifdef VPI_DOXYGEN
379 # define VPI_MAKE_SWIZZLE(x, y, z, w)
380 #else
381 # define VPI_MAKE_SWIZZLE (VPISwizzle) VPI_DETAIL_MAKE_SWIZZLE
382 #endif
383 
394 
404 VPI_PUBLIC void vpiSwizzleGetChannels(VPISwizzle swizzle, VPIChannel *channels);
405 
412 VPI_PUBLIC int vpiSwizzleGetChannelCount(VPISwizzle swizzle);
413 
415 typedef enum
416 {
421 
423 typedef struct
424 {
427  int bits[4];
429 
438 VPI_PUBLIC VPIPacking vpiMakePacking(const VPIPackingParams *params);
439 
445 VPI_PUBLIC void vpiPackingGetParams(VPIPacking packing, VPIPackingParams *params);
446 
453 VPI_PUBLIC int vpiPackingGetComponentCount(VPIPacking packing);
454 
461 VPI_PUBLIC void vpiPackingGetBitsPerComponent(VPIPacking packing, int32_t *bits);
462 
470 VPI_PUBLIC int vpiPackingGetBitsPerPixel(VPIPacking packing);
471 
474 #ifdef __cplusplus
475 }
476 #endif
477 
478 #endif /* NV_VPI_DATALAYOUT_H */
VPIEndianness endianness
Component ordering in a word.
Definition: DataLayout.h:425
VPISwizzle swizzle
Channel ordering.
Definition: DataLayout.h:426
VPISwizzle
Defines the supported channel swizzle operations.
Definition: DataLayout.h:282
void vpiSwizzleGetChannels(VPISwizzle swizzle, VPIChannel *channels)
Get the swizzle channels.
int vpiPackingGetBitsPerPixel(VPIPacking packing)
Returns the number of bits per pixel of the given packing.
int vpiSwizzleGetChannelCount(VPISwizzle swizzle)
Get the number of channels specified by the given swizzle.
VPIPacking vpiMakePacking(const VPIPackingParams *params)
Returns a pre-defined VPIPacking given its params.
VPIPacking
Defines how channels are packed into an image plane element.
Definition: DataLayout.h:128
void vpiPackingGetBitsPerComponent(VPIPacking packing, int32_t *bits)
Returns the number of bits per packing component.
int vpiPackingGetComponentCount(VPIPacking packing)
Returns the number of components defined by the given packing.
VPIMemLayout
Defines how the 2D plane pixels are laid out in memory.
Definition: DataLayout.h:225
VPISwizzle vpiMakeSwizzle(VPIChannel x, VPIChannel y, VPIChannel z, VPIChannel w)
Creates a user-defined VPISwizzle operation.
VPIChannel
Defines the format channel names.
Definition: DataLayout.h:263
VPIDataType
Defines the channel data type.
Definition: DataLayout.h:210
VPIEndianness
Endianness of a VPIPacking value.
Definition: DataLayout.h:416
void vpiPackingGetParams(VPIPacking packing, VPIPackingParams *params)
Returns channels' information from a format packing.
@ VPI_SWIZZLE_INVALID
Represents an invalid swizzle.
Definition: DataLayout.h:283
@ VPI_PACKING_X64
One 64-bit channel.
Definition: DataLayout.h:188
@ VPI_PACKING_X8_Y8_Z8_W8
Four 8-bit channels in one 32-bit word.
Definition: DataLayout.h:181
@ VPI_PACKING_X3Y3Z2
Three 3-, 3- and 2-bit channels in one 8-bit word.
Definition: DataLayout.h:141
@ VPI_PACKING_X8_Y8_Z8
Three 8-bit channels in three 8-bit words.
Definition: DataLayout.h:169
@ VPI_PACKING_INVALID
Denotes an invalid packing.
Definition: DataLayout.h:205
@ VPI_PACKING_X2
One 2-bit channel.
Definition: DataLayout.h:133
@ VPI_PACKING_X24
One 24-bit channel.
Definition: DataLayout.h:167
@ VPI_PACKING_X10Y10Z10W2
Four 10-, 10-, 10- and 2-bit channels in one 32-bit word.
Definition: DataLayout.h:183
@ VPI_PACKING_X12b4_Y12b4
Two MSB 12-bit channels in two 16-bit words.
Definition: DataLayout.h:176
@ VPI_PACKING_X5Y5Z6
Three 5-, 5- and 6-bit channels in one 16-bit word.
Definition: DataLayout.h:152
@ VPI_PACKING_X192
One 192-bit channel.
Definition: DataLayout.h:199
@ VPI_PACKING_X1
One 1-bit channel.
Definition: DataLayout.h:131
@ VPI_PACKING_X32_Y32_Z32_W32
Four 32-bit channels in three 32-bit words.
Definition: DataLayout.h:197
@ VPI_PACKING_X12b4
One MSB 12-bit channel in one 16-bit word.
Definition: DataLayout.h:147
@ VPI_PACKING_X4Y4Z4W4
Four 4-bit channels in one 16-bit word.
Definition: DataLayout.h:160
@ VPI_PACKING_X10b6_Y10b6
Two MSB 10-bit channels in two 16-bit words.
Definition: DataLayout.h:175
@ VPI_PACKING_X8
One 8-bit channel.
Definition: DataLayout.h:137
@ VPI_PACKING_X5Y6Z5
Three 5-, 6- and 5-bit channels in one 16-bit word.
Definition: DataLayout.h:153
@ VPI_PACKING_X10b6
One MSB 10-bit channel in one 16-bit word.
Definition: DataLayout.h:145
@ VPI_PACKING_X4Y4
Two 4-bit channels in one word.
Definition: DataLayout.h:139
@ VPI_PACKING_X32_Y32_Z32
Three 32-bit channels in three 32-bit words.
Definition: DataLayout.h:193
@ VPI_PACKING_X5Y5b1Z5
Three 5-bit channels in one 16-bit word.
Definition: DataLayout.h:157
@ VPI_PACKING_X128
One 128-bit channel.
Definition: DataLayout.h:195
@ VPI_PACKING_b4X4Y4Z4
Three 4-bit channels in one 16-bit word.
Definition: DataLayout.h:155
@ VPI_PACKING_X32
One 32-bit channel.
Definition: DataLayout.h:171
@ VPI_PACKING_X5Y1Z5W5
Four 5-, 1-, 5- and 5-bit channels in one 16-bit word.
Definition: DataLayout.h:161
@ VPI_PACKING_X8_Y8
Two 8-bit channels in two 8-bit words.
Definition: DataLayout.h:150
@ VPI_PACKING_X64_Y64_Z64
Three 64-bit channels in three 64-bit words.
Definition: DataLayout.h:200
@ VPI_PACKING_X64_Y64_Z64_W64
Four 64-bit channels in four 64-bit words.
Definition: DataLayout.h:203
@ VPI_PACKING_X5Y5Z1W5
Four 5-, 5-, 1- and 5-bit channels in one 16-bit word.
Definition: DataLayout.h:162
@ VPI_PACKING_0
No channels.
Definition: DataLayout.h:129
@ VPI_PACKING_X10Y11Z11
Three 10-, 11- and 11-bit channels in one 32-bit word.
Definition: DataLayout.h:178
@ VPI_PACKING_X16_Y16_Z16
Three 16-bit channels in three 16-bit words.
Definition: DataLayout.h:186
@ VPI_PACKING_X2Y10Z10W10
Four 2-, 10-, 10- and 10-bit channels in one 32-bit word.
Definition: DataLayout.h:182
@ VPI_PACKING_X11Y11Z10
Three 11-, 11- and 10-bit channels in one 32-bit word.
Definition: DataLayout.h:179
@ VPI_PACKING_b4X12
One LSB 12-bit channel in one 16-bit word.
Definition: DataLayout.h:146
@ VPI_PACKING_b1X5Y5Z5
Three 5-bit channels in one 16-bit word.
Definition: DataLayout.h:156
@ VPI_PACKING_X256
One 128-bit channel.
Definition: DataLayout.h:202
@ VPI_PACKING_b12X20
One LSB 20-bit channel in one 32-bit word.
Definition: DataLayout.h:172
@ VPI_PACKING_X16
One 16-bit channel.
Definition: DataLayout.h:143
@ VPI_PACKING_X4
One 4-bit channel.
Definition: DataLayout.h:135
@ VPI_PACKING_X6Y5Z5
Three 6-, 5- and 5-bit channels in one 16-bit word.
Definition: DataLayout.h:154
@ VPI_PACKING_X1Y5Z5W5
Four 1-, 5-, 5- and 5-bit channels in one 16-bit word.
Definition: DataLayout.h:159
@ VPI_PACKING_b2X14
One LSB 14-bit channel in one 16-bit word.
Definition: DataLayout.h:148
@ VPI_PACKING_X96
One 96-bit channel.
Definition: DataLayout.h:192
@ VPI_PACKING_X16_Y16
Two 16-bit channels in two 16-bit words.
Definition: DataLayout.h:174
@ VPI_PACKING_X16_Y16_Z16_W16
Four 16-bit channels in one 64-bit word.
Definition: DataLayout.h:190
@ VPI_PACKING_X8_Y8__X8_Z8
2 pixels of 2 8-bit channels each, totalling 4 8-bit words.
Definition: DataLayout.h:164
@ VPI_PACKING_X32_Y32
Two 32-bit channels in two 32-bit words.
Definition: DataLayout.h:189
@ VPI_PACKING_X48
One 48-bit channel.
Definition: DataLayout.h:185
@ VPI_PACKING_Y8_X8__Z8_X8
2 pixels of 2 swapped 8-bit channels each, totalling 4 8-bit words.
Definition: DataLayout.h:165
@ VPI_PACKING_b6X10
One LSB 10-bit channel in one 16-bit word.
Definition: DataLayout.h:144
@ VPI_PACKING_X5Y5Z5W1
Four 5-, 5-, 5- and 1-bit channels in one 16-bit word.
Definition: DataLayout.h:163
@ VPI_MEM_LAYOUT_PITCH_LINEAR
Pixels are laid out in row-major order, i.e., .
Definition: DataLayout.h:230
@ VPI_MEM_LAYOUT_PL
Definition: DataLayout.h:255
@ VPI_MEM_LAYOUT_BLOCK8_LINEAR
Pixels are laid out in block-linear format with height = 8.
Definition: DataLayout.h:242
@ VPI_MEM_LAYOUT_INVALID
Represents an invalid memory layout.
Definition: DataLayout.h:227
@ VPI_MEM_LAYOUT_BLOCK1_LINEAR
Pixels are laid out in block-linear format with height = 1.
Definition: DataLayout.h:233
@ VPI_MEM_LAYOUT_BLOCK_LINEAR
Default block-linear format.
Definition: DataLayout.h:252
@ VPI_MEM_LAYOUT_BL
Definition: DataLayout.h:256
@ VPI_MEM_LAYOUT_BLOCK2_LINEAR
Pixels are laid out in block-linear format with height = 2.
Definition: DataLayout.h:236
@ VPI_MEM_LAYOUT_BLOCK4_LINEAR
Pixels are laid out in block-linear format with height = 4.
Definition: DataLayout.h:239
@ VPI_MEM_LAYOUT_BLOCK16_LINEAR
Pixels are laid out in block-linear format with height = 16.
Definition: DataLayout.h:245
@ VPI_MEM_LAYOUT_BLOCK32_LINEAR
Pixels are laid out in block-linear format with height = 32.
Definition: DataLayout.h:248
@ VPI_CHANNEL_Z
Selects the third channel of the color model.
Definition: DataLayout.h:269
@ VPI_CHANNEL_1
Sets the corresponding channel to have its maximum value.
Definition: DataLayout.h:271
@ VPI_CHANNEL_INVALID
Represents an invalid swizzle channel.
Definition: DataLayout.h:264
@ VPI_CHANNEL_X
Selects the first channel of the color model.
Definition: DataLayout.h:267
@ VPI_CHANNEL_0
Don't select a channel.
Definition: DataLayout.h:266
@ VPI_CHANNEL_W
Selects the fourth channel of the color model.
Definition: DataLayout.h:270
@ VPI_CHANNEL_Y
Selects the second channel of the color model.
Definition: DataLayout.h:268
@ VPI_DATA_TYPE_FLOATISP
Proprietary floating point format from NVIDIA.
Definition: DataLayout.h:215
@ VPI_DATA_TYPE_FLOAT
Channel are floating point values.
Definition: DataLayout.h:214
@ VPI_DATA_TYPE_UNSIGNED
Channels are unsigned integer values.
Definition: DataLayout.h:212
@ VPI_DATA_TYPE_SIGNED
Channels are signed integer values.
Definition: DataLayout.h:213
@ VPI_BIG_ENDIAN
Big endian, where most significant byte has lower memory address.
Definition: DataLayout.h:419
@ VPI_INVALID_ENDIAN
Invalid endianness value.
Definition: DataLayout.h:417
@ VPI_HOST_ENDIAN
Endianness of the host machine.
Definition: DataLayout.h:418
Defines the parameters encoded in a VPIPacking.
Definition: DataLayout.h:424