Twitch SDK (Internal)
csharp_broadcast.h
Go to the documentation of this file.
1 /********************************************************************************************
2 * Twitch Broadcasting SDK
3 *
4 * This software is supplied under the terms of a license agreement with Twitch Interactive, Inc. and
5 * may not be copied or used except in accordance with the terms of that agreement
6 * Copyright (c) 2012-2016 Twitch Interactive, Inc.
7 *********************************************************************************************/
8 
9 #pragma once
10 
11 #include "twitchsdk.h"
12 
13 #if TTV_PLATFORM_MAC
14 #define EXPORT_API __attribute__((visibility("default")))
15 #else
16 #define EXPORT_API
17 #endif
18 
19 namespace ttv
20 {
22  {
23  public:
25 
26  void FireRequestAuthTokenCallback(TTV_ErrorCode ec, const TTV_AuthToken* result);
27  void FireLoginCallback(TTV_ErrorCode ec, const TTV_ChannelInfo* result);
28  void FireGetIngestListCallback(TTV_ErrorCode ec, TTV_IngestList* result);
29  void FireGetUserInfoCallback(TTV_ErrorCode ec, const TTV_UserInfo___* result);
30  void FireGetStreamInfoCallback(TTV_ErrorCode ec, const TTV_StreamInfo* result);
31  void FireGetArchivingStateCallback(TTV_ErrorCode ec, const TTV_ArchivingState* result);
33  void FireGetGameLiveStreamsCallback(TTV_ErrorCode ec, const TTV_LiveGameStreamList* result);
34  void FireGetGameNameListCallback(TTV_ErrorCode ec, const TTV_GameInfoList* result);
41  void FireBufferUnlockCallback(const uint8_t* buffer);
42 
43 // TODO: revisit how to split this into separate files
44 #if !TTV_PLATFORM_UNITYIOS
45  private:
46  typedef void (*TTV_CSharp_RequestAuthTokenCallback) (TTV_ErrorCode ec, const TTV_AuthToken* result);
47  typedef void (*TTV_CSharp_LoginCallback) (TTV_ErrorCode ec, const TTV_ChannelInfo* result);
48  typedef void (*TTV_CSharp_GetIngestListCallback) (TTV_ErrorCode ec, const TTV_IngestList* result);
49  typedef void (*TTV_CSharp_GetUserInfoCallback) (TTV_ErrorCode ec, const TTV_UserInfo___* result);
50  typedef void (*TTV_CSharp_GetStreamInfoCallback) (TTV_ErrorCode ec, const TTV_StreamInfo* result);
51  typedef void (*TTV_CSharp_GetArchivingStateCallback) (TTV_ErrorCode ec, const TTV_ArchivingState* result);
53  typedef void (*TTV_CSharp_GetGameLiveStreamsCallback) (TTV_ErrorCode ec, const TTV_LiveGameStreamList* result);
54  typedef void (*TTV_CSharp_GetGameNameListCallback) (TTV_ErrorCode ec, const TTV_GameInfoList* result);
56  typedef void (*TTV_CSharp_StopCallback) (TTV_ErrorCode ec);
61  typedef void (*TTV_CSharp_BufferUnlockCallback) (const uint8_t* buffer);
62 
70  //TTV_CSharp_GetGameLiveStreamsCallback getGameLiveStreamsCallback;
79 #endif
80  };
81 
83  {
84  public:
86 
87  void FireStatCallback(TTV_StatType type, uint64_t data);
88 
89  // TODO: revisit how to split this into separate files
90 #if !TTV_PLATFORM_UNITYIOS
91  private:
92  typedef void (*TTV_CSharp_StatCallback) (TTV_StatType type, uint64_t data);
93 
94  TTV_CSharp_StatCallback statCallback;
95 #endif
96  };
97 
98  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_FreeAuthToken(const TTV_AuthToken* authToken);
99  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_FreeIngestList(TTV_IngestList* ingestList);
100  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_FreeChannelInfo(const TTV_ChannelInfo* channelInfo);
101  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_FreeStreamInfo(const TTV_StreamInfo* streamInfo);
102  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_FreeGameNameList(const TTV_GameInfoList* gameList);
103  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_GetStreamTime(uint64_t* timeMs);
104  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_FreeUserInfo(const TTV_UserInfo___* userInfo);
105  extern "C" TTV_ErrorCode TTV_CSharp_Broadcast_FreeArchivingState(const TTV_ArchivingState* state);
106 
107  // These are declared in csharp_broadcast.cpp
110  extern bool gBroadcastInitialized;
111 }
void FireGetArchivingStateCallback(TTV_ErrorCode ec, const TTV_ArchivingState *result)
TTV_ErrorCode TTV_CSharp_Broadcast_FreeArchivingState(const TTV_ArchivingState *state)
void(* TTV_CSharp_StartCallback)(TTV_ErrorCode ec)
Definition: csharp_broadcast.h:55
void(* TTV_CSharp_RequestAuthTokenCallback)(TTV_ErrorCode ec, const TTV_AuthToken *result)
Definition: csharp_broadcast.h:46
void(* TTV_CSharp_GetUserInfoCallback)(TTV_ErrorCode ec, const TTV_UserInfo___ *result)
Definition: csharp_broadcast.h:49
TTV_ErrorCode TTV_CSharp_Broadcast_FreeUserInfo(const TTV_UserInfo___ *userInfo)
TTV_ErrorCode TTV_CSharp_Broadcast_FreeChannelInfo(const TTV_ChannelInfo *channelInfo)
TTV_CSharp_RequestAuthTokenCallback requestAuthTokenCallback
Definition: csharp_broadcast.h:63
ManagedStatsListener gManagedStatsListener
void FireSendActionMetaDataCallback(TTV_ErrorCode ec)
TTV_CSharp_GetArchivingStateCallback getArchivingStateCallback
Definition: csharp_broadcast.h:68
TTV_CSharp_RunCommercialCallback runCommercialCallback
Definition: csharp_broadcast.h:69
void(* TTV_CSharp_SendEndSpanMetaDataCallback)(TTV_ErrorCode ec)
Definition: csharp_broadcast.h:59
void(* TTV_CSharp_GetArchivingStateCallback)(TTV_ErrorCode ec, const TTV_ArchivingState *result)
Definition: csharp_broadcast.h:51
void FireStopCallback(TTV_ErrorCode ec)
void FireGetGameLiveStreamsCallback(TTV_ErrorCode ec, const TTV_LiveGameStreamList *result)
void FireSendStartSpanMetaDataCallback(TTV_ErrorCode ec)
void(* TTV_CSharp_SendStartSpanMetaDataCallback)(TTV_ErrorCode ec)
Definition: csharp_broadcast.h:58
void(* TTV_CSharp_StopCallback)(TTV_ErrorCode ec)
Definition: csharp_broadcast.h:56
void(* TTV_CSharp_GetIngestListCallback)(TTV_ErrorCode ec, const TTV_IngestList *result)
Definition: csharp_broadcast.h:48
TTV_ErrorCode TTV_CSharp_Broadcast_FreeAuthToken(const TTV_AuthToken *authToken)
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
void FireSetStreamInfoCallback(TTV_ErrorCode ec)
void(* TTV_CSharp_GetGameLiveStreamsCallback)(TTV_ErrorCode ec, const TTV_LiveGameStreamList *result)
Definition: csharp_broadcast.h:53
void(* TTV_CSharp_SendActionMetaDataCallback)(TTV_ErrorCode ec)
Definition: csharp_broadcast.h:57
Definition: csharp_broadcast.h:82
TTV_CSharp_GetIngestListCallback getIngestListCallback
Definition: csharp_broadcast.h:65
TTV_CSharp_SendStartSpanMetaDataCallback sendStartSpanMetaDataCallback
Definition: csharp_broadcast.h:75
void(* TTV_CSharp_GetStreamInfoCallback)(TTV_ErrorCode ec, const TTV_StreamInfo *result)
Definition: csharp_broadcast.h:50
TTV_CSharp_StopCallback stopCallback
Definition: csharp_broadcast.h:73
TTV_CSharp_GetUserInfoCallback getUserInfoCallback
Definition: csharp_broadcast.h:66
void(* TTV_CSharp_SetStreamInfoCallback)(TTV_ErrorCode ec)
Definition: csharp_broadcast.h:60
void FireGetIngestListCallback(TTV_ErrorCode ec, TTV_IngestList *result)
uint32_t TTV_ErrorCode
Definition: errortypes.h:30
ManagedBroadcastAPIListener gManagedBroadcastAPIListener
void(* TTV_CSharp_RunCommercialCallback)(TTV_ErrorCode ec)
Definition: csharp_broadcast.h:52
TTV_CSharp_StatCallback statCallback
Definition: csharp_broadcast.h:94
void FireLoginCallback(TTV_ErrorCode ec, const TTV_ChannelInfo *result)
void FireStartCallback(TTV_ErrorCode ec)
void FireRequestAuthTokenCallback(TTV_ErrorCode ec, const TTV_AuthToken *result)
TTV_ErrorCode TTV_CSharp_Broadcast_FreeIngestList(TTV_IngestList *ingestList)
void FireSendEndSpanMetaDataCallback(TTV_ErrorCode ec)
TTV_CSharp_GetGameNameListCallback getGameNameListCallback
Definition: csharp_broadcast.h:71
TTV_CSharp_SendEndSpanMetaDataCallback sendEndSpanMetaDataCallback
Definition: csharp_broadcast.h:76
Definition: csharp_broadcast.h:21
TTV_CSharp_LoginCallback loginCallback
Definition: csharp_broadcast.h:64
TTV_ErrorCode TTV_CSharp_Broadcast_FreeStreamInfo(const TTV_StreamInfo *streamInfo)
void FireGetGameNameListCallback(TTV_ErrorCode ec, const TTV_GameInfoList *result)
void(* TTV_CSharp_GetGameNameListCallback)(TTV_ErrorCode ec, const TTV_GameInfoList *result)
Definition: csharp_broadcast.h:54
TTV_CSharp_StartCallback startCallback
Definition: csharp_broadcast.h:72
TTV_CSharp_BufferUnlockCallback bufferUnlockCallback
Definition: csharp_broadcast.h:78
void(* TTV_CSharp_LoginCallback)(TTV_ErrorCode ec, const TTV_ChannelInfo *result)
Definition: csharp_broadcast.h:47
TTV_ErrorCode TTV_CSharp_Broadcast_FreeGameNameList(const TTV_GameInfoList *gameList)
void FireRunCommercialCallback(TTV_ErrorCode ec)
TTV_CSharp_SendActionMetaDataCallback sendActionMetaDataCallback
Definition: csharp_broadcast.h:74
TTV_ErrorCode TTV_CSharp_Broadcast_GetStreamTime(uint64_t *timeMs)
TTV_CSharp_SetStreamInfoCallback setStreamInfoCallback
Definition: csharp_broadcast.h:77
void FireBufferUnlockCallback(const uint8_t *buffer)
void FireGetStreamInfoCallback(TTV_ErrorCode ec, const TTV_StreamInfo *result)
void(* TTV_CSharp_BufferUnlockCallback)(const uint8_t *buffer)
Definition: csharp_broadcast.h:61
TTV_CSharp_GetStreamInfoCallback getStreamInfoCallback
Definition: csharp_broadcast.h:67
void FireGetUserInfoCallback(TTV_ErrorCode ec, const TTV_UserInfo___ *result)
bool gBroadcastInitialized