Enum VarType
- Namespace
- NAudio.CoreAudioApi.Interfaces
- Assembly
- NAudio.Wasapi.dll
PROPVARIANT type tags from propidl.h (the VT_* constants). Numeric values match the COM ABI, so this enum is interchangeable with the PROPVARIANT.vt field via cast. Defined locally to avoid System.Runtime.InteropServices.VarEnum, which is obsolete (SYSLIB0050) as part of the deprecation of built-in VARIANT marshalling.
[Flags]
public enum VarType : ushort
Fields
VT_BLOB = VT_NULL | VT_FILETIMEVT_BLOB — counted byte array (length + pointer).
VT_BOOL = 11VT_BOOL — VARIANT_BOOL (-1 = true, 0 = false).
VT_CLSID = 72VT_CLSID — pointer to a GUID.
VT_EMPTY = 0VT_EMPTY — no value.
VT_FILETIME = 64VT_FILETIME — 64-bit FILETIME.
VT_I1 = 16VT_I1 — signed 8-bit integer.
VT_I2 = 2VT_I2 — signed 16-bit integer.
VT_I4 = VT_NULL | VT_I2VT_I4 — signed 32-bit integer.
VT_I8 = VT_R4 | VT_I1VT_I8 — signed 64-bit integer.
VT_INT = VT_I2 | VT_I8VT_INT — signed machine-word integer.
VT_LPSTR = 30VT_LPSTR — pointer to a null-terminated ANSI string.
VT_LPWSTR = VT_NULL | VT_LPSTRVT_LPWSTR — pointer to a null-terminated UTF-16 string.
VT_NULL = 1VT_NULL — SQL-style null.
VT_R4 = 4VT_R4 — 32-bit float.
VT_R8 = VT_NULL | VT_R4VT_R8 — 64-bit double.
VT_UI1 = VT_NULL | VT_I1VT_UI1 — unsigned 8-bit integer.
VT_UI2 = VT_I2 | VT_I1VT_UI2 — unsigned 16-bit integer.
VT_UI4 = VT_NULL | VT_UI2VT_UI4 — unsigned 32-bit integer.
VT_UI8 = VT_NULL | VT_I8VT_UI8 — unsigned 64-bit integer.
VT_UINT = VT_NULL | VT_INTVT_UINT — unsigned machine-word integer.
VT_VECTOR = 4096VT_VECTOR — flag combined with another VT_* to indicate a counted array (CA*).