Interface Technology Basics VST 3.7
SDK for developing VST plug-in
FVariant Class Reference

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 ()
 
FVariantoperator= (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 >
get () const
 
int64 getInt () const
 
double getFloat () const
 
double getNumber () const
 
const char8getString8 () const
 
const char16getString16 () const
 
FUnknowngetObject () const
 
uint16 getType () const
 
bool isEmpty () const
 
bool isOwner () const
 
bool isString () const
 
void setOwner (bool state)
 
void empty ()
 
template<>
bool get () const
 
template<>
uint32 get () const
 
template<>
int32 get () const
 
template<>
int64 get () const
 
template<>
float get () const
 
template<>
double get () const
 
template<>
const char8get () const
 
template<>
const char16get () const
 
template<>
FUnknownget () const
 

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

anonymous enum
Enumerator
kEmpty 
kInteger 
kFloat 
kString8 
kObject 
kOwner 
kString16 

Constructor & Destructor Documentation

◆ FVariant() [1/9]

FVariant ( )
inline

◆ FVariant() [2/9]

FVariant ( const FVariant variant)
inline

◆ FVariant() [3/9]

FVariant ( bool  b)
inline

◆ FVariant() [4/9]

FVariant ( uint32  v)
inline

◆ FVariant() [5/9]

FVariant ( int64  v)
inline

◆ FVariant() [6/9]

FVariant ( double  v)
inline

◆ FVariant() [7/9]

FVariant ( const char8 str)
inline

◆ FVariant() [8/9]

FVariant ( const char16 str)
inline

◆ FVariant() [9/9]

FVariant ( FUnknown obj,
bool  owner = false 
)
inline

◆ ~FVariant()

~FVariant ( )
inline

Member Function Documentation

◆ operator=()

FVariant & operator= ( const FVariant variant)
inline

◆ set() [1/6]

void set ( bool  b)
inline

◆ set() [2/6]

void set ( uint32  v)
inline

◆ set() [3/6]

void set ( int64  v)
inline

◆ set() [4/6]

void set ( double  v)
inline

◆ set() [5/6]

void set ( const char8 c)
inline

◆ set() [6/6]

void set ( const char16 c)
inline

◆ setInt()

void setInt ( int64  v)
inline

◆ setFloat()

void setFloat ( double  v)
inline

◆ setString8()

void setString8 ( const char8 v)
inline

◆ setString16()

void setString16 ( const char16 v)
inline

◆ setObject()

void setObject ( FUnknown obj)
inline

◆ get() [1/10]

T get ( ) const
inline

◆ getInt()

int64 getInt ( ) const
inline

◆ getFloat()

double getFloat ( ) const
inline

◆ getNumber()

double getNumber ( ) const
inline

◆ getString8()

const char8 * getString8 ( ) const
inline

◆ getString16()

const char16 * getString16 ( ) const
inline

◆ getObject()

FUnknown * getObject ( ) const
inline

◆ getType()

uint16 getType ( ) const
inline

◆ isEmpty()

bool isEmpty ( ) const
inline

◆ isOwner()

bool isOwner ( ) const
inline

◆ isString()

bool isString ( ) const
inline

◆ setOwner()

void setOwner ( bool  state)
inline

◆ empty()

void empty ( )
inline

◆ get() [2/10]

bool get ( ) const
inline

◆ get() [3/10]

uint32 get ( ) const
inline

◆ get() [4/10]

int32 get ( ) const
inline

◆ get() [5/10]

int64 get ( ) const
inline

◆ get() [6/10]

float get ( ) const
inline

◆ get() [7/10]

double get ( ) const
inline

◆ get() [8/10]

const char8 * get ( ) const
inline

◆ get() [9/10]

const char16 * get ( ) const
inline

◆ get() [10/10]

FUnknown * get ( ) const
inline

Member Data Documentation

◆ type

uint16 type

◆ intValue

int64 intValue

◆ floatValue

double floatValue

◆ string8

const char8* string8

◆ string16

const char16* string16

◆ object

FUnknown* object

◆ 

union { ... } @4
Empty

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