Twitch SDK (Internal)
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
ttv::TrackingValue Class Reference

#include <coretypes.h>

Classes

union  Value
 

Public Types

enum  Type {
  Type::Null, Type::Boolean, Type::Integer, Type::Double,
  Type::String
}
 

Public Member Functions

 TrackingValue ()
 
 TrackingValue (std::nullptr_t value)
 
 TrackingValue (bool value)
 
 TrackingValue (int64_t value)
 
 TrackingValue (uint32_t value)
 
 TrackingValue (int value)
 
 TrackingValue (double value)
 
 TrackingValue (const std::string &value)
 
 TrackingValue (std::string &&value)
 
 TrackingValue (const char *value)
 
 TrackingValue (const TrackingValue &src)
 
 TrackingValue (TrackingValue &&src)
 
 ~TrackingValue ()
 
TrackingValueoperator= (const TrackingValue &src)
 
TrackingValueoperator= (TrackingValue &&src)
 
Type GetType () const
 
bool GetBooleanValue () const
 
int64_t GetIntegerValue () const
 
double GetDoubleValue () const
 
std::string GetStringValue () const
 

Private Attributes

union ttv::TrackingValue::Value mValue
 
Type mType
 

Detailed Description

TrackingValue - A class that can contain several types of values to send as tracking properties.

Member Enumeration Documentation

◆ Type

The type of value contained.

Enumerator
Null 
Boolean 
Integer 
Double 
String 

Constructor & Destructor Documentation

◆ TrackingValue() [1/12]

ttv::TrackingValue::TrackingValue ( )

Default constructor and nullptr create a value of Null type.

◆ TrackingValue() [2/12]

ttv::TrackingValue::TrackingValue ( std::nullptr_t  value)

◆ TrackingValue() [3/12]

ttv::TrackingValue::TrackingValue ( bool  value)

Creates a value of boolean type.

◆ TrackingValue() [4/12]

ttv::TrackingValue::TrackingValue ( int64_t  value)

Creates a value of integer type.

◆ TrackingValue() [5/12]

ttv::TrackingValue::TrackingValue ( uint32_t  value)

◆ TrackingValue() [6/12]

ttv::TrackingValue::TrackingValue ( int  value)

◆ TrackingValue() [7/12]

ttv::TrackingValue::TrackingValue ( double  value)

Creates a value of double type.

◆ TrackingValue() [8/12]

ttv::TrackingValue::TrackingValue ( const std::string &  value)

Creates a value of string type.

◆ TrackingValue() [9/12]

ttv::TrackingValue::TrackingValue ( std::string &&  value)

◆ TrackingValue() [10/12]

ttv::TrackingValue::TrackingValue ( const char *  value)

◆ TrackingValue() [11/12]

ttv::TrackingValue::TrackingValue ( const TrackingValue src)

◆ TrackingValue() [12/12]

ttv::TrackingValue::TrackingValue ( TrackingValue &&  src)

◆ ~TrackingValue()

ttv::TrackingValue::~TrackingValue ( )

Member Function Documentation

◆ GetBooleanValue()

bool ttv::TrackingValue::GetBooleanValue ( ) const

Returns the value contained. It is illegal to call the getter that does not match the contained type. As such, the user of this interface should always call GetType() first to determine what value type is stored.

◆ GetDoubleValue()

double ttv::TrackingValue::GetDoubleValue ( ) const

◆ GetIntegerValue()

int64_t ttv::TrackingValue::GetIntegerValue ( ) const

◆ GetStringValue()

std::string ttv::TrackingValue::GetStringValue ( ) const

◆ GetType()

Type ttv::TrackingValue::GetType ( ) const
inline

Returns the type of value contained.

◆ operator=() [1/2]

TrackingValue& ttv::TrackingValue::operator= ( const TrackingValue src)

◆ operator=() [2/2]

TrackingValue& ttv::TrackingValue::operator= ( TrackingValue &&  src)

Member Data Documentation

◆ mType

Type ttv::TrackingValue::mType
private

◆ mValue

union ttv::TrackingValue::Value ttv::TrackingValue::mValue
private

The documentation for this class was generated from the following file: