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

#include <amf0encoder.h>

Inheritance diagram for ttv::broadcast::AMF0Encoder:
ttv::broadcast::IAMF0

Public Types

enum  AMFType : uint8_t {
  number = 0x00, boolean = 0x01, string = 0x02, object = 0x03,
  ecmaArray = 0x08, objectEnd = 0x09, strictArray = 0x0A, date = 0x0B,
  null = 0x05, undefined = 0x06, reference = 0x07, longString = 0x0C,
  xmlDocument = 0x0F, typedObject = 0x10, movieclip = 0x04, recordset = 0x0E,
  unsupported = 0x0D
}
 

Public Member Functions

 AMF0Encoder (void)
 
virtual ~AMF0Encoder (void)
 
virtual void Number (double value)
 
virtual void Boolean (bool flag)
 
virtual void String (std::string param)
 
virtual void Object ()
 
virtual void ObjectProperty (std::string propertyName)
 
virtual void Movieclip ()
 
virtual void Null ()
 
virtual void Undefined ()
 
virtual void Reference ()
 
virtual void EcmaArray (uint32_t elements)
 
virtual void EcmaArrayKey (std::string keyName)
 
virtual void ObjectEnd ()
 
virtual void StrictArray (uint32_t elements)
 
virtual void Date (double dateValue)
 
virtual void LongString ()
 
virtual void Unsupported ()
 
virtual void Recordset ()
 
virtual void XmlDocument ()
 
virtual void TypedObject ()
 
const std::vector< uint8_t > & GetBuffer () const
 
void Reset ()
 

Private Member Functions

template<typename _T >
void EncodeToBuffer (_T param)
 

Private Attributes

std::vector< uint8_t > mBuffer
 

Detailed Description

An implementation of AMF0 which encodes as binary data.

Member Enumeration Documentation

◆ AMFType

enum ttv::broadcast::IAMF0::AMFType : uint8_t
inherited
Enumerator
number 
boolean 
string 
object 
ecmaArray 
objectEnd 
strictArray 
date 
null 
undefined 
reference 
longString 
xmlDocument 
typedObject 
movieclip 
recordset 
unsupported 

Constructor & Destructor Documentation

◆ AMF0Encoder()

ttv::broadcast::AMF0Encoder::AMF0Encoder ( void  )
inline

◆ ~AMF0Encoder()

virtual ttv::broadcast::AMF0Encoder::~AMF0Encoder ( void  )
inlinevirtual

Member Function Documentation

◆ Boolean()

virtual void ttv::broadcast::AMF0Encoder::Boolean ( bool  flag)
virtual

Implements ttv::broadcast::IAMF0.

◆ Date()

virtual void ttv::broadcast::AMF0Encoder::Date ( double  dateValue)
virtual

Implements ttv::broadcast::IAMF0.

◆ EcmaArray()

virtual void ttv::broadcast::AMF0Encoder::EcmaArray ( uint32_t  elements)
virtual

Implements ttv::broadcast::IAMF0.

◆ EcmaArrayKey()

virtual void ttv::broadcast::AMF0Encoder::EcmaArrayKey ( std::string  keyName)
virtual

Implements ttv::broadcast::IAMF0.

◆ EncodeToBuffer()

template<typename _T >
void ttv::broadcast::AMF0Encoder::EncodeToBuffer ( _T  param)
private

◆ GetBuffer()

const std::vector<uint8_t>& ttv::broadcast::AMF0Encoder::GetBuffer ( ) const
inline

◆ LongString()

virtual void ttv::broadcast::AMF0Encoder::LongString ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ Movieclip()

virtual void ttv::broadcast::AMF0Encoder::Movieclip ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ Null()

virtual void ttv::broadcast::AMF0Encoder::Null ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ Number()

virtual void ttv::broadcast::AMF0Encoder::Number ( double  value)
virtual

Implements ttv::broadcast::IAMF0.

◆ Object()

virtual void ttv::broadcast::AMF0Encoder::Object ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ ObjectEnd()

virtual void ttv::broadcast::AMF0Encoder::ObjectEnd ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ ObjectProperty()

virtual void ttv::broadcast::AMF0Encoder::ObjectProperty ( std::string  propertyName)
virtual

Implements ttv::broadcast::IAMF0.

◆ Recordset()

virtual void ttv::broadcast::AMF0Encoder::Recordset ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ Reference()

virtual void ttv::broadcast::AMF0Encoder::Reference ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ Reset()

void ttv::broadcast::AMF0Encoder::Reset ( )
inline

◆ StrictArray()

virtual void ttv::broadcast::AMF0Encoder::StrictArray ( uint32_t  elements)
virtual

Implements ttv::broadcast::IAMF0.

◆ String()

virtual void ttv::broadcast::AMF0Encoder::String ( std::string  param)
virtual

Implements ttv::broadcast::IAMF0.

◆ TypedObject()

virtual void ttv::broadcast::AMF0Encoder::TypedObject ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ Undefined()

virtual void ttv::broadcast::AMF0Encoder::Undefined ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ Unsupported()

virtual void ttv::broadcast::AMF0Encoder::Unsupported ( )
virtual

Implements ttv::broadcast::IAMF0.

◆ XmlDocument()

virtual void ttv::broadcast::AMF0Encoder::XmlDocument ( )
virtual

Implements ttv::broadcast::IAMF0.

Member Data Documentation

◆ mBuffer

std::vector<uint8_t> ttv::broadcast::AMF0Encoder::mBuffer
private

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