Interface Technology Basics: FVariant Class Reference
Author: Steinberg

Interface Technology Basics VST 3.7 SDK for developing VST plug-in

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Public Types | Public Member Functions | Public Attributes | List of all members
FVariant Class Reference
Basic Interfaces

A Value of variable type. More...

`#include <fvariant.h>`

## Public Types
enum | { kEmpty = 0, kInteger = 1 << 0, kFloat = 1 << 1, kString8 = 1 << 2, kObject = 1 << 3, kOwner = 1 << 4, kString16 = 1 << 5 }

## Public Member Functions
| FVariant ()
| FVariant (const FVariant &variant)
| FVariant (bool b)
| FVariant (uint32 v)
| FVariant (int64 v)
| FVariant (double v)
| FVariant (const char8 *str)
| FVariant (const char16 *str)
| FVariant (FUnknown *obj, bool owner=false)
| ~FVariant ()
FVariant & | operator= (const FVariant &variant)
void | set (bool b)
void | set (uint32 v)
void | set (int64 v)
void | set (double v)
void | set (const char8 *c)
void | set (const char16 *c)
void | setInt (int64 v)
void | setFloat (double v)
void | setString8 (const char8 *v)
void | setString16 (const char16 *v)
void | setObject (FUnknown *obj)
template<typename T >
T | get () const
int64 | getInt () const
double | getFloat () const
double | getNumber () const
const char8 * | getString8 () const
const char16 * | getString16 () const
FUnknown * | getObject () const
uint16 | getType () const
bool | isEmpty () const
bool | isOwner () const
bool | isString () const
void | setOwner (bool state)
void | empty ()

## Public Attributes
uint16 | type
union {
int64 intValue
double floatValue
const char8 * string8
const char16 * string16
FUnknown * object
}; |

## Detailed Description

A Value of variable type.

## Member Enumeration Documentation

anonymous enum

Enumerator
kEmpty |
kInteger |
kFloat |
kString8 |
kObject |
kOwner |
kString16 |

## Constructor & Destructor Documentation

FVariant | ( |  | ) |
| inline

FVariant | ( | const FVariant & | variant | ) |
| inline

FVariant | ( | bool | b | ) |
| inline

FVariant | ( | uint32 | v | ) |
| inline

FVariant | ( | int64 | v | ) |
| inline

FVariant | ( | double | v | ) |
| inline

FVariant | ( | const char8 * | str | ) |
| inline

FVariant | ( | const char16 * | str | ) |
| inline

FVariant | ( | FUnknown * | obj,
|  | bool | owner = `false`
| ) |  |
| inline

~FVariant | ( |  | ) |
| inline

## Member Function Documentation

FVariant & operator= | ( | const FVariant & | variant | ) |
| inline

void set | ( | bool | b | ) |
| inline

void set | ( | uint32 | v | ) |
| inline

void set | ( | int64 | v | ) |
| inline

void set | ( | double | v | ) |
| inline

void set | ( | const char8 * | c | ) |
| inline

void set | ( | const char16 * | c | ) |
| inline

void setInt | ( | int64 | v | ) |
| inline

void setFloat | ( | double | v | ) |
| inline

void setString8 | ( | const char8 * | v | ) |
| inline

void setString16 | ( | const char16 * | v | ) |
| inline

void setObject | ( | FUnknown * | obj | ) |
| inline

FUnknown * get< FUnknown * > | ( |  | ) | const
| inline

int64 getInt | ( |  | ) | const
| inline

double getFloat | ( |  | ) | const
| inline

double getNumber | ( |  | ) | const
| inline

const char8* getString8 | ( |  | ) | const
| inline

const char16* getString16 | ( |  | ) | const
| inline

FUnknown* getObject | ( |  | ) | const
| inline

uint16 getType | ( |  | ) | const
| inline

bool isEmpty | ( |  | ) | const
| inline

bool isOwner | ( |  | ) | const
| inline

bool isString | ( |  | ) | const
| inline

void setOwner | ( | bool | state | ) |
| inline

void empty | ( |  | ) |
| inline

## Member Data Documentation

uint16 type

int64 intValue

double floatValue

const char8* string8

const char16* string16

FUnknown* object

union { ... }

Empty

Copyright ©2022 Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.