Types

Types

Macros

#define VA_ARG_TYPE(TYPE)TYPE VA_INDIRECT(VA_2ND_ARG,(VA_ARG_TYPE_##TYPE,))
#define VA_TYPE_ID(TYPE)TYPE##_id

Typedefs

typedef VA_REAL va_real
typedef int va_refcount
typedef uint8_t va_bool
typedef uint16_t va_float16
typedef uint32_t va_color32
typedef uint64_t va_color64
typedef uint64_t va_datetime

Enumerations

enum
enum va_type_id

Functions

size_t va_align_of(uint32_t id)
size_t va_size_of(uint32_t id)

Macro Definition Documentation

#define VA_ARG_TYPE( TYPE) TYPE VA_INDIRECT(VA_2ND_ARG,(VA_ARG_TYPE_##TYPE,))

Expands to TYPE for types that are passed as values and TYPE* for those that are passed as pointers.

#define VA_TYPE_ID( TYPE) TYPE##_id

Expands to TYPE_id.

Typedef Documentation

typedef uint8_t va_bool

A boolean value. Either va_false or va_true.

typedef uint32_t va_color32

32-bit color type. The memory layout is little-endian BGRX, where X is usually unused but can also be used as an alpha channel. There are 8 bits per color channel.

va_color32 red = 0xff0000;
va_color32 green = 0x00ff00;
va_color32 blue = 0x0000ff;
va_color32 transparentWhite = 0x99ffffff;
typedef uint64_t va_color64

64-bit color type. The memory layout is little-endian BGRX, where X is usually unused but can also be used as an alpha channel. There are 16 bits per color channel. Depending on the imaging equipment, the full 16-bit range may however not be used.

va_color32 tenBitRed = 0x03ff00000000;
va_color32 twelveBitGreen = 0x00000fff0000;
va_color32 sixteenBitBlue = 0x00000000ffff;
typedef uint64_t va_datetime

A point in time, measured as the number of milliseconds since the Unix epoch (00:00:00 UTC on 1 January 1970).

typedef uint16_t va_float16

16-bit floating-point type.

typedef VA_REAL va_real

Preferred real number type. This is either double or float depending on target hardware and build configuration.

Enumeration Type Documentation

anonymous enum

Possible values of Boolean variables.

Enumerator
va_false

false

va_true

true

enum va_type_id

Type IDs for all supported types.

Function Documentation

size_t va_align_of(uint32_t id)

Returns the alignment, in bytes, required for an instance of a type identified by id. If id represents a type that is passed as a pointer (such as a matrix or an image), returns the alignment of a pointer.

size_t va_size_of(uint32_t id)

Returns the size, in bytes, required for an instance of a type identified by id. If id represents a type that is passed as a pointer (such as a matrix or an image), returns the size of a pointer.