10#include "../hashtable.h"
21#define SC_REPORT_PROTOCOL 2
27#define SC_REPORT_ROSTERDATA_LENGTH 20
28#define SC_REPORT_PLAYERINDEX_LENGTH 2
29#define SC_REPORT_TEAMINDEX_LENGTH 4
30#define SC_REPORT_AUTHDATA_LENGTH 16
31#define SC_REPORT_ENTITYRESULT_LENGTH 4
34#define SC_REPORT_ENTITY_NONE 0
35#define SC_REPORT_ENTITY_PLAYER 1
36#define SC_REPORT_ENTITY_TEAM 2
39#define SC_REPORT_FLAG_AUTHORITATIVE (1<<0)
40#define SC_REPORT_FLAG_NON_RELATIVE_RESULT (1<<1)
41#define SC_REPORT_FLAG_MATCHLESS_SESSION (1<<2)
47 SCIReportState_ROSTER,
50 SCIReportState_GLOBALDATA,
51 SCIReportState_PLAYERDATA,
52 SCIReportState_TEAMDATA
70 gsi_u32 mProtocolVersion;
71 gsi_u32 mDeveloperVersion;
72 gsi_u8 mChecksum[GS_CRYPT_MD5_HASHSIZE];
77 gsi_u16 mGameKeyCount;
78 gsi_u16 mPlayerKeyCount;
79 gsi_u16 mTeamKeyCount;
81 gsi_u32 mRosterSectionLength;
82 gsi_u32 mAuthSectionLength;
83 gsi_u32 mResultsSectionLength;
84 gsi_u32 mGameSectionLength;
85 gsi_u32 mPlayerSectionLength;
86 gsi_u32 mTeamSectionLength;
106 SCIReportState mReportState;
108 gsi_i32 mCurEntityStartPos;
109 gsi_u16 mCurEntityKeyCount;
112 gsi_u32 mNumResultsReported;
114 gsi_u32 mNumTeamsReported;
115 gsi_u32 mTeamIds[SC_MAX_NUM_TEAMS];
123SCResult sciCreateReport(gsi_u8 theSessionGuid[16],
124 gsi_u32 theHeaderVersion,
125 gsi_u32 thePlayerCount,
126 gsi_u32 theTeamCount,
129SCResult sciDestroyReport(
SCIReport *theReport);
134SCResult SC_CALL sciReportSetPlayerConnectionId(
SCIReport * theReport, gsi_u32 thePlayerIndex,
const gsi_u8 theConnectionId[SC_CONNECTION_GUID_SIZE]);
135SCResult SC_CALL sciReportSetPlayerTeamIndex (
SCIReport * theReport, gsi_u32 thePlayerIndex, gsi_u32 theTeamIndex);
136SCResult SC_CALL sciReportSetPlayerGameResult (
SCIReport * theReport, gsi_u32 thePlayerIndex, SCGameResult theGameResult);
137SCResult SC_CALL sciReportSetPlayerAuthInfo (
SCIReport * theReport, gsi_u32 thePlayerIndex,
const GSLoginCertificate * theCertificate,
const gsi_u8 theAuthHash[16]);
138SCResult SC_CALL sciReportSetTeamGameResult (
SCIReport * theReport, gsi_u32 theTeamIndex , SCGameResult theGameResult);
139SCResult SC_CALL sciReportSetAsMatchless (
SCIReport * theReport);
142SCResult SC_CALL sciReportBeginGlobalData(
SCIReport * theReport);
143SCResult SC_CALL sciReportBeginPlayerData(
SCIReport * theReport);
144SCResult SC_CALL sciReportBeginTeamData (
SCIReport * theReport);
146SCResult SC_CALL sciReportAddIntValue(
SCIReport * theReport,
149SCResult SC_CALL sciReportAddInt64Value(
SCIReport * theReport,
152SCResult SC_CALL sciReportAddShortValue(
SCIReport * theReport,
155SCResult SC_CALL sciReportAddByteValue(
SCIReport * theReport,
158SCResult SC_CALL sciReportAddFloatValue(
SCIReport * theReport,
161SCResult SC_CALL sciReportAddStringValue(
SCIReport * theReport,
163 const gsi_char * theValue);
165SCResult SC_CALL sciReportBeginNewTeam(
SCIReport * theReport);
166SCResult SC_CALL sciReportBeginNewPlayer(
SCIReport * theReport);
167SCResult SC_CALL sciReportEndEntity(
SCIReport * theReport);
169SCResult SC_CALL sciReportEnd(
SCIReport * theReport, gsi_bool isAuth, SCGameStatus theStatus);
Definition AuthService.h:87
Definition sciReport.h:93
Definition sciReport.h:105