Added cleaned up structs and classes to proper header files.

This commit is contained in:
Justin Marshall
2026-08-08 17:17:36 -07:00
parent 2b5e5a2c2a
commit 61cb846dd5
791 changed files with 85858 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_crashhandler.h
// Recovered logical types: 1
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 19086; PDB kind: class.
class idCrashHandler
{
public:
bool defaultMessage;
int (__fastcall *originalHandler)(_EXCEPTION_POINTERS *);
};
@@ -0,0 +1,23 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_dedicated_server_search.h
// Recovered logical types: 2
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 17414; PDB kind: struct.
struct idDedicatedServerSearch::serverInfoDedicated_t
{
lobbyAddress_t addr;
serverInfo_t serverInfo;
idList<idStr,5> connectedPlayers;
};
// IDA Local Type ordinal 17416; PDB kind: class.
class idDedicatedServerSearch
{
public:
idList<idDedicatedServerSearch::serverInfoDedicated_t,5> list;
idCallback *callback;
};
+318
View File
@@ -0,0 +1,318 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_lobby.h
// Recovered logical types: 17
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 2966; PDB kind: enum.
enum idLobby::migrationState_t : __int32
{
MIGRATE_NONE = 0x0,
MIGRATE_PICKING_HOST = 0x1,
MIGRATE_BECOMING_HOST = 0x2,
};
// IDA Local Type ordinal 2968; PDB kind: enum.
enum idLobby::lobbyType_t : __int32
{
TYPE_PARTY = 0x0,
TYPE_GAME = 0x1,
TYPE_GAME_STATE = 0x2,
TYPE_INVALID = 0xFF,
};
// IDA Local Type ordinal 2969; PDB kind: enum.
enum idLobby::lobbyState_t : __int32
{
STATE_CREATE_LOBBY_BACKEND = 0x1,
STATE_SEARCHING = 0x2,
STATE_OBTAINING_ADDRESS = 0x3,
STATE_CONNECT_HELLO_WAIT = 0x4,
STATE_FINALIZE_CONNECT = 0x5,
NUM_STATES = 0x7,
};
// IDA Local Type ordinal 2970; PDB kind: enum.
enum idLobby::reliablePlayerToPlayer_t : __int32
{
RELIABLE_PLAYER_TO_PLAYER_GAME_DATA = 0x0,
NUM_RELIABLE_PLAYER_TO_PLAYER = 0x1,
};
// IDA Local Type ordinal 2971; PDB kind: enum.
enum idLobby::reliableType_t : __int32
{
RELIABLE_HELLO = 0x0,
RELIABLE_USER_CONNECTED = 0x1,
RELIABLE_USER_DISCONNECTED = 0x2,
RELIABLE_START_LOADING = 0x3,
RELIABLE_LOADING_DONE = 0x4,
RELIABLE_IN_GAME = 0x5,
RELIABLE_SNAPSHOT_ACK = 0x6,
RELIABLE_RESOURCE_ACK = 0x7,
RELIABLE_CONNECT_AND_MOVE_TO_LOBBY = 0x8,
RELIABLE_PARTY_CONNECT_OK = 0x9,
RELIABLE_PARTY_LEAVE_GAME_LOBBY = 0xA,
RELIABLE_MATCH_PARMS = 0xB,
RELIABLE_UPDATE_MATCH_PARMS = 0xC,
RELIABLE_USER_CONNECT_REQUEST = 0xD,
RELIABLE_USER_CONNECT_DENIED = 0xE,
RELIABLE_USER_DISCONNECT_REQUEST = 0xF,
RELIABLE_KICK_PLAYER = 0x10,
RELIABLE_MATCHFINISHED = 0x11,
RELIABLE_ENDMATCH = 0x12,
RELIABLE_ENDMATCH_PREMATURE = 0x13,
RELIABLE_SESSION_USER_MODIFIED = 0x14,
RELIABLE_UPDATE_SESSION_USER = 0x15,
RELIABLE_HEADSET_STATE = 0x16,
RELIABLE_VOICE_STATE = 0x17,
RELIABLE_PING = 0x18,
RELIABLE_PING_VALUES = 0x19,
RELIABLE_BANDWIDTH_VALUES = 0x1A,
RELIABLE_ARBITRATE = 0x1B,
RELIABLE_ARBITRATE_OK = 0x1C,
RELIABLE_POST_STATS = 0x1D,
RELIABLE_MIGRATION_GAME_DATA = 0x1E,
RELIABLE_START_MATCH_GAME_LOBBY_HOST = 0x1F,
RELIABLE_DUMMY_MSG = 0x20,
RELIABLE_PLAYER_TO_PLAYER_BEGIN = 0x21,
RELIABLE_PLAYER_TO_PLAYER_END = 0x22,
RELIABLE_GAME_DATA = 0x22,
};
// IDA Local Type ordinal 2972; PDB kind: enum.
enum idLobby::connectionState_t : __int32
{
CONNECTION_FREE = 0x0,
CONNECTION_CONNECTING = 0x1,
CONNECTION_ESTABLISHED = 0x2,
};
// IDA Local Type ordinal 2976; PDB kind: enum.
enum idLobby::failedReason_t : __int32
{
FAILED_UNKNOWN = 0x0,
FAILED_CONNECT_FAILED = 0x1,
FAILED_MIGRATION_CONNECT_FAILED = 0x2,
};
// IDA Local Type ordinal 2994; PDB kind: enum.
enum idLobby::DrawDebugNetworkHUD_ServerSnapshotMetrics::__l22::netDebugGraphs_t : __int32
{
GRAPH_SNAPSENT = 0x0,
GRAPH_OUTGOING = 0x1,
GRAPH_INCOMINGREPORTED = 0x2,
GRAPH_MAX = 0x3,
};
// IDA Local Type ordinal 22539; PDB kind: class.
class __declspec(align(8)) idLobby : public idLobbyBase
{
public:
// Recovered virtual interface; IDA vtable ordinal 22558.
virtual bool IsHost();
virtual bool IsPeer();
virtual bool HasActivePeers();
virtual int GetNumLobbyUsers();
virtual int GetNumActiveLobbyUsers();
virtual lobbyUserID_t *GetLobbyUserIdByOrdinal(lobbyUserID_t *result, int);
virtual int GetLobbyUserIndexFromLobbyUserID(lobbyUserID_t);
virtual void SendReliable(int, idBitMsg *, bool, unsigned __int8);
virtual void SendReliableToLobbyUser(lobbyUserID_t, int, idBitMsg *);
virtual void SendReliableToHost(int, idBitMsg *);
virtual const char *GetLobbyUserName(lobbyUserID_t);
virtual void KickLobbyUser(lobbyUserID_t);
virtual bool IsLobbyUserValid(lobbyUserID_t);
virtual bool IsLobbyUserLoaded(lobbyUserID_t);
virtual bool LobbyUserHasFirstFullSnap(lobbyUserID_t);
virtual void EnableSnapshotsForLobbyUser(lobbyUserID_t);
virtual int GetLobbyUserEmblemOrdinal(lobbyUserID_t);
virtual int GetLobbyUserLevel(lobbyUserID_t);
virtual int GetLobbyUserQoS(lobbyUserID_t);
virtual int GetLobbyUserTeam(lobbyUserID_t);
virtual bool SetLobbyUserTeam(lobbyUserID_t, int);
virtual int GetLobbyUserPartyToken(lobbyUserID_t);
virtual idPlayerProfile *GetProfileFromLobbyUser(lobbyUserID_t);
virtual idLocalUser *GetLocalUserFromLobbyUser(lobbyUserID_t);
virtual int GetNumLobbyUsersOnTeam(int);
virtual void SendLobbyUserUpdateToPeers();
virtual int PeerIndexFromLobbyUser(lobbyUserID_t);
virtual lobbyUserID_t *AllocLobbyUserSlotForBot(lobbyUserID_t *result, const char *, void *);
virtual void *GetLobbyUserBotData(lobbyUserID_t);
virtual void RemoveBotFromLobbyUserList(lobbyUserID_t);
virtual bool GetLobbyUserIsBot(lobbyUserID_t);
virtual const char *GetHostUserName();
virtual const idMatchParameters *GetMatchParms();
virtual bool IsLobbyFull();
virtual bool EnsureAllPeersHaveBaseState();
virtual bool AllPeersInGame();
virtual int GetNumConnectedPeers();
virtual int GetNumConnectedPeersInGame();
virtual int PeerIndexOnHost();
virtual bool IsPeerDisconnected(int);
virtual bool AllPeersHaveStaleSnapObj(int);
virtual bool AllPeersHaveExpectedSnapObj(int);
virtual void RefreshSnapObj(int);
virtual void MarkSnapObjDeleted(int);
virtual void AddSnapObjTemplate(int, idBitMsg *);
virtual void DrawDebugNetworkHUD(idRenderModelGui *);
virtual void DrawDebugNetworkHUD2(idRenderModelGui *);
virtual void DrawDebugNetworkHUD_ServerSnapshotMetrics(idRenderModelGui *, bool);
virtual bool IsLobbyUserDisconnected(int);
int lastPingValuesRecvTime;
int nextSendPingValuesTime;
int nextSendMigrationGameTime;
int nextSendMigrationGamePeer;
idLobby::lobbyType_t lobbyType;
idLobby::lobbyState_t state;
idLobby::failedReason_t failedReason;
int host;
int peerIndexOnHost;
lobbyAddress_t hostAddress;
bool isHost;
idLobbyBackend *lobbyBackend;
int helloStartTime;
int lastConnectRequest;
int connectionAttempts;
bool needToDisplayMigrateMsg;
gameDialogMessages_t migrationDlg;
unsigned __int8 migrateMsgFlags;
int migrateMsgGameType;
bool joiningMigratedGame;
int bandwidthChallengeEndTime;
int bandwidthChallengeStartTime;
bool bandwidthChallengeFinished;
int bandwidthChallengeNumGoodSeq;
int lastSnapBspHistoryUpdateSequence;
idSessionCallbacks *sessionCB;
idLobby::migrationInfo_t migrationInfo;
bool showHostLeftTheSession;
bool connectIsFromInvite;
idStaticList<lobbyConnectInfo_t,25> searchResults;
idStaticList<lobbyUser_t *,6> userList;
idStaticList<lobbyUser_t *,6> freeUsers;
idStaticList<lobbyUser_t,6> userPool;
idStaticList<idLobby::peer_t,6> peers;
unsigned int partyToken;
idMatchParameters parms;
bool loaded;
bool respondToArbitrate;
bool everyoneArbitrated;
bool waitForPartyOk;
bool startLoadingFromHost;
bool haveSubmittedSnaps;
idSnapShot *localReadSS;
idStaticList<idLobby::snapDeltaAck_t,16> snapDeltaAckQueue;
};
// IDA Local Type ordinal 22542; PDB kind: struct.
struct idLobby::migrationInvite_t
{
lobbyAddress_t address;
int pingMs;
lobbyUserID_t userId;
int lastInviteTime;
int migrationGameData;
};
// IDA Local Type ordinal 22545; PDB kind: struct.
struct __declspec(align(4)) idLobby::migrationInfo_t::persistUntilGameEnds_t
{
int ourGameData;
bool wasMigratedHost;
bool wasMigratedJoin;
bool wasMigratedGame;
bool hasRelaunchedMigratedGame;
unsigned __int8 gameData[32];
unsigned __int8 gameDataUser[6][64];
bool hasGameData;
};
// IDA Local Type ordinal 22546; PDB kind: struct.
struct idLobby::migrationInfo_t
{
idLobby::migrationState_t state;
idStaticList<idLobby::migrationInvite_t,6> invites;
int migrationStartTime;
int ourPingMs;
lobbyUserID_t ourUserId;
idLobby::migrationInfo_t::persistUntilGameEnds_t persistUntilGameEndsData;
};
// IDA Local Type ordinal 22552; PDB kind: struct.
struct idLobby::peer_t
{
idLobby::connectionState_t connectionState;
bool loaded;
bool inGame;
int lastSnapTime;
float snapHz;
int lastProcTime;
int lastInBandProcTime;
int lastFragmentSendTime;
unsigned int networkChecksum;
int pauseSnapshots;
lobbyAddress_t address;
int numResources;
idPacketProcessor *packetProc;
idSnapshotProcessor *snapProc;
idGaugeMetric latencyMetric;
idStaticList<idDebugGraph *,4> debugGraphs;
int lastResourceTime;
int lastHeartBeat;
int nextPing;
int lastPingRtt;
bool needToSubmitPendingSnap;
int lastSnapJobTime;
int startResourceLoadTime;
int maxSnapQueueSize;
int throttledSnapRate;
int nextThrottleCheck;
int numSnapsSent;
float sentBpsHistory[32];
int receivedBpsIndex;
float receivedBps;
float maxSnapBps;
float receivedThrottle;
int receivedThrottleTime;
int throttleSnapsForXSeconds;
int recoverPing;
int failedPingRecoveries;
int rightBeforeSnapsPing;
int bandwidthChallengeStartSendTime;
int bandwidthTestLastSendTime;
int bandwidthTestBytes;
int bandwidthSequenceNum;
bool bandwidthChallengeResults;
bool bandwidthChallengeSendComplete;
unsigned __int16 sessionID;
};
// IDA Local Type ordinal 22555; PDB kind: struct.
struct idLobby::snapDeltaAck_t
{
int p;
int snapshotNumber;
};
// IDA Local Type ordinal 22580; PDB kind: struct.
struct idLobby::reliablePlayerToPlayerHeader_t
{
int fromSessionUserIndex;
int toSessionUserIndex;
};
// IDA Local Type ordinal 22581; PDB kind: struct.
struct idLobby::pktPing_t
{
int timestamp;
};
// IDA Local Type ordinal 22583; PDB kind: struct.
struct idLobby::pktPingValues_t
{
idArray<short,6> pings;
};
@@ -0,0 +1,49 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_lobby_backend_direct.h
// Recovered logical types: 1
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 22616; PDB kind: class.
class idLobbyBackendDirect : public idLobbyBackend
{
public:
// Recovered virtual interface; IDA vtable ordinal 22615.
virtual void StartHosting(const idMatchParameters *, float, idLobbyBackend::lobbyBackendType_t);
virtual void StartFinding(const idMatchParameters *, int, float);
virtual void JoinFromConnectInfo(const lobbyConnectInfo_t *);
virtual void GetSearchResults(idList<lobbyConnectInfo_t,5> *);
virtual lobbyConnectInfo_t *GetConnectInfo(lobbyConnectInfo_t *result);
virtual void FillMsgWithPostConnectInfo(idBitMsg *);
virtual void PostConnectFromMsg(idBitMsg *);
virtual bool IsOwnerOfConnectInfo(const lobbyConnectInfo_t *);
virtual void Shutdown();
virtual void GetOwnerAddress(lobbyAddress_t *);
virtual bool IsHost();
virtual void SetIsJoinable(bool);
virtual void Pump();
virtual void UpdateMatchParms(const idMatchParameters *);
virtual void UpdateLobbySkill(float);
virtual void SetInGame(bool);
virtual idLobbyBackend::lobbyBackendState_t GetState();
virtual bool IsLocal();
virtual bool IsOnline();
virtual bool StartArbitration();
virtual void Arbitrate();
virtual void VerifyArbitration();
virtual bool UserArbitrated(lobbyUser_t *);
virtual void RegisterUser(lobbyUser_t *, bool);
virtual void UnregisterUser(lobbyUser_t *, bool);
virtual void StartSession();
virtual void EndSession();
virtual bool IsSessionStarted();
virtual void FlushStats();
virtual void BecomeHost(int);
virtual void RegisterAddress(lobbyAddress_t *);
virtual void FinishBecomeHost();
idLobbyBackend::lobbyBackendState_t state;
netadr_t address;
};
+45
View File
@@ -0,0 +1,45 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_local.h
// Recovered logical types: 1
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 22635; PDB kind: class.
class idSysLocal : public idSys
{
public:
// Recovered virtual interface; IDA vtable ordinal 22636.
virtual ~idSysLocal();
virtual __int64 GetClockTicks();
virtual __int64 ClockTicksPerSecond();
virtual cpuid_t GetProcessorId();
virtual const char *GetProcessorString();
virtual const char *FPU_GetState();
virtual bool FPU_StackIsEmpty();
virtual void FPU_SetFTZ(bool);
virtual void FPU_SetDAZ(bool);
virtual void FPU_EnableExceptions(int);
virtual unsigned int DLL_Load(const char *);
virtual void *DLL_GetProcAddress(unsigned int, const char *);
virtual void DLL_Unload(unsigned int);
virtual void DLL_GetFileName(const char *, char *, int);
virtual void OpenURL(const char *, bool);
virtual void StartProcess(const char *, bool);
virtual const char *GetClipboardData();
virtual void SetClipboardData(const char *);
virtual int Milliseconds();
virtual unsigned int VblCount();
virtual void PrintStackTrace();
virtual idJoystick *Joystick();
virtual idKeyboard *Keyboard();
virtual idMouse *Mouse();
virtual const char *GetOSUserName();
virtual const char *GetMachineName();
virtual void QueueEvent(sysEventType_t, int, int, int, void *, int);
virtual void GenerateEvents();
virtual sysEvent_t *GetEvent(sysEvent_t *result);
virtual void ClearEvents();
};
+19
View File
@@ -0,0 +1,19 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_profile.h
// Recovered logical types: 2
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 22941; PDB kind: class.
class idProfile
{
public:
};
// IDA Local Type ordinal 23759; PDB kind: struct.
struct profile_t
{
timings_t timings[5];
};
+25
View File
@@ -0,0 +1,25 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_server_query.h
// Recovered logical types: 2
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 22586; PDB kind: struct.
struct idServerQuery::serverQueryInfo_t
{
lobbyConnectInfo_t connectInfo;
lobbyAddress_t addr;
int lastAttemptTime;
int attempts;
bool acked;
serverInfo_t serverInfo;
};
// IDA Local Type ordinal 22589; PDB kind: class.
class idServerQuery
{
public:
idStaticList<idServerQuery::serverQueryInfo_t,32> servers;
};
+493
View File
@@ -0,0 +1,493 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_session_local.h
// Recovered logical types: 13
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 2965; PDB kind: enum.
enum idSessionLocal::state_t : __int32
{
STATE_PRESS_START = 0x0,
STATE_PARTY_LOBBY_HOST = 0x2,
STATE_PARTY_LOBBY_PEER = 0x3,
STATE_GAME_LOBBY_HOST = 0x4,
STATE_GAME_LOBBY_PEER = 0x5,
STATE_GAME_STATE_LOBBY_HOST = 0x6,
STATE_GAME_STATE_LOBBY_PEER = 0x7,
STATE_CREATE_AND_MOVE_TO_PARTY_LOBBY = 0x8,
STATE_CREATE_AND_MOVE_TO_GAME_LOBBY = 0x9,
STATE_CREATE_AND_MOVE_TO_GAME_STATE_LOBBY = 0xA,
STATE_FIND_OR_CREATE_MATCH = 0xB,
STATE_CONNECT_AND_MOVE_TO_PARTY = 0xC,
STATE_CONNECT_AND_MOVE_TO_GAME = 0xD,
STATE_CONNECT_AND_MOVE_TO_GAME_STATE = 0xE,
STATE_BUSY = 0xF,
STATE_LOADING = 0x10,
STATE_INGAME = 0x11,
};
// IDA Local Type ordinal 2980; PDB kind: enum.
enum idSessionLocal::connectType_t : __int32
{
CONNECT_NONE = 0x0,
CONNECT_DIRECT = 0x1,
CONNECT_FIND_OR_CREATE = 0x2,
CONNECT_JOIN_MATCH_AFTER_PARTY_CREATED = 0x3,
};
// IDA Local Type ordinal 2981; PDB kind: enum.
enum idSessionLocal::pendingInviteMode_t : __int32
{
PENDING_INVITE_NONE = 0x0,
PENDING_INVITE_WAITING = 0x1,
PENDING_SELF_INVITE_WAITING = 0x2,
};
// IDA Local Type ordinal 22538; PDB kind: class.
class __declspec(align(4)) idSessionLocal : public idSession
{
public:
// Recovered virtual interface; IDA vtable ordinal 22575.
virtual ~idSessionLocal();
virtual void Initialize();
virtual void Shutdown();
virtual void InitializeSoundRelatedSystems();
virtual void ShutdownSoundRelatedSystems();
virtual void CreatePartyLobby(const idMatchParameters *);
virtual void FindOrCreateMatch(const idMatchParameters *, int);
virtual void CreateMatch(const idMatchParameters *);
virtual void CreateGameStateLobby(const idMatchParameters *);
virtual void UpdateMatchParms(const idMatchParameters *);
virtual void UpdatePartyParms(const idMatchParameters *);
virtual void StartMatch();
virtual void EndMatch(bool);
virtual void MatchFinished();
virtual void QuitMatch();
virtual void QuitMatchToTitle();
virtual void SetSessionOption(idSession::sessionOption_t);
virtual void ClearSessionOption(idSession::sessionOption_t);
virtual idSession::sessionState_t GetBackState();
virtual void Cancel();
virtual void MoveToPressStart();
virtual void FinishDisconnect();
virtual void LoadingFinished();
virtual bool IsCurrentLobbyMigrating();
virtual bool IsLosingConnectionToHost();
virtual bool WasMigrationGame();
virtual bool ShouldRelaunchMigrationGame();
virtual bool WasGameLobbyCoalesced();
virtual bool GetMigrationGameData(idBitMsg *, bool);
virtual bool GetMigrationGameDataUser(lobbyUserID_t, idBitMsg *, bool);
virtual bool GetMatchParamUpdate(int *, int *);
virtual void Pump();
virtual void ProcessSnapAckQueue();
virtual void InviteFriends();
virtual void InviteParty();
virtual void ShowPartySessions();
virtual bool IsPlatformPartyInLobby();
virtual idLobbyBase *GetPartyLobbyBase();
virtual idLobbyBase *GetGameLobbyBase();
virtual idLobbyBase *GetActingGameStateLobbyBase();
virtual idLobbyBase *GetActivePlatformLobbyBase();
virtual idLobbyBase *GetLobbyFromLobbyUserID(lobbyUserID_t);
virtual void SendLocalSessionUsersToPeers();
virtual idPlayerProfile *GetProfileFromMasterLocalUser();
virtual bool ProcessInputEvent(const sysEvent_t *);
virtual float GetUpstreamDropRate();
virtual float GetUpstreamQueueRate();
virtual int GetQueuedBytes();
virtual int GetLoadingID();
virtual bool IsAboutToLoad();
virtual const char *GetLocalUserName(int);
virtual idSession::sessionState_t GetState();
virtual const char *GetStateString();
virtual const char *GetStateString_2(idSession::sessionState_t);
virtual int NumServers();
virtual void ListServers(const idCallback *);
virtual void CancelListServers();
virtual void ConnectToServer(int);
virtual const serverInfo_t *ServerInfo(int);
virtual const idList<idStr,5> *ServerPlayerList(int);
virtual void ShowServerGamerCardUI(int);
virtual void ShowOnlineSignin();
virtual void DropClient(int, int);
virtual void JoinAfterSwap(void *);
virtual void EnumerateDownloadableContent();
virtual int GetNumContentPackages();
virtual int GetContentPackageID(int);
virtual const char *GetContentPackagePath(int);
virtual int GetContentPackageIndexForID(int);
virtual void ShowSystemMarketplaceUI();
virtual bool GetSystemMarketplaceHasNewContent();
virtual void SetSystemMarketplaceHasNewContent(bool);
virtual bool GetTitleStorageFloat(const char *, float, float *);
virtual float GetTitleStorageFloat_2(const char *, float);
virtual bool GetTitleStorageInt(const char *, int, int *);
virtual int GetTitleStorageInt_2(const char *, int);
virtual bool GetTitleStorageBool(const char *, bool, bool *);
virtual bool GetTitleStorageBool_2(const char *, bool);
virtual bool GetTitleStorageString(const char *, const char *, const char **);
virtual const char *GetTitleStorageString_2(const char *, const char *);
virtual bool IsTitleStorageLoaded();
virtual void LeaderboardUpload(lobbyUserID_t, const leaderboardDefinition_t *, const column_t *, const idFile_Memory *);
virtual void LeaderboardDownload(int, const leaderboardDefinition_t *, int, int, const idLeaderboardCallback *);
virtual void LeaderboardDownloadAttachment(int, const leaderboardDefinition_t *, __int64);
virtual void LeaderboardFlush();
virtual void SetLobbyUserRelativeScore(lobbyUserID_t, int, int);
virtual int SaveGameSync(const char *, const idStaticList<idFile_SaveGame *,10> *, const idSaveGameDetails *);
virtual int SaveGameAsync(const char *, const idStaticList<idFile_SaveGame *,10> *, const idSaveGameDetails *);
virtual int LoadGameSync(const char *, idStaticList<idFile_SaveGame *,10> *);
virtual int EnumerateSaveGamesSync();
virtual int EnumerateSaveGamesAsync();
virtual int DeleteSaveGameSync(const char *);
virtual int DeleteSaveGameAsync(const char *);
virtual bool IsSaveGameCompletedFromHandle(const int *);
virtual void CancelSaveGameWithHandle(const int *);
virtual bool IsEnumerating();
virtual int GetEnumerationHandle();
virtual const idStaticList<idSaveGameDetails,16> *GetEnumeratedSavegames();
virtual void SetCurrentSaveSlot(const char *);
virtual const char *GetCurrentSaveSlot();
virtual bool IsDLCAvailable(const char *);
virtual bool LoadGameCheckDiscNumber(idSaveLoadParms *);
virtual void ShowLobbyUserGamerCardUI(lobbyUserID_t);
virtual void UpdateRichPresence();
virtual void SendUsercmds(idBitMsg *);
virtual void SendSnapshot(idSnapShot *);
virtual int GetInputRouting(int *);
virtual void UpdateSignInManager();
virtual struct idDiscSwapper *GetDiscSwapper();
virtual bool IsSystemUIShowing();
virtual void SetSystemUIShowing(bool);
virtual voiceState_t GetLobbyUserVoiceState(lobbyUserID_t);
virtual voiceStateDisplay_t GetDisplayStateFromVoiceState(voiceState_t);
virtual void ToggleLobbyUserVoiceMute(lobbyUserID_t);
virtual void SetActiveChatGroup(int);
virtual void CheckVoicePrivileges();
virtual bool StartOrContinueBandwidthChallenge(bool);
virtual void DebugSetPeerSnaprate(int, int);
virtual float GetIncomingByteRate();
virtual void HandleBootableInvite(__int64);
virtual void ClearBootableInvite();
virtual bool HasPendingBootableInvite();
virtual void OnLocalUserSignin(idLocalUser *);
virtual void OnLocalUserSignout(idLocalUser *);
virtual void OnMasterLocalUserSignout();
virtual void OnMasterLocalUserSignin();
virtual void OnLocalUserProfileLoaded(idLocalUser *);
virtual void JoinMatch(const lobbyConnectInfo_t *, bool);
virtual bool ShouldShowMigratingDialog();
virtual const char *GetPeerName(int);
virtual void PrePickNewHost(idLobby *, bool, bool);
virtual bool PreMigrateInvite(idLobby *);
virtual void UpdateMasterUserHeadsetState();
virtual void PlatformPump();
virtual bool IsSteamInitialized();
virtual bool IsSteamStatsInitialized();
virtual void ListServersCommon();
virtual void HandleServerQueryRequest(lobbyAddress_t *, idBitMsg *, idLobby::lobbyType_t, int);
virtual void HandleServerQueryAck(lobbyAddress_t *, idBitMsg *);
virtual void UpdatePendingInvite();
virtual idLobbyPort *GetPort(bool);
virtual idLobbyBackend *CreateLobbyBackend(const idMatchParameters *, float, idLobbyBackend::lobbyBackendType_t);
virtual idLobbyBackend *FindLobbyBackend(const idMatchParameters *, int, float, idLobbyBackend::lobbyBackendType_t);
virtual idLobbyBackend *JoinFromConnectInfo(const lobbyConnectInfo_t *, idLobbyBackend::lobbyBackendType_t);
virtual void DestroyLobbyBackend(idLobbyBackend *);
virtual void PumpLobbies();
virtual bool GetLobbyAddressFromNetAddress(const netadr_t *, lobbyAddress_t *);
virtual bool GetNetAddressFromLobbyAddress(const lobbyAddress_t *, netadr_t *);
virtual void RecvLeaderboardStats360(idBitMsg *);
idParallelJobList *snapshotJobList;
lzwCompressionData_t *lzwData;
unsigned __int8 *objMemory;
int storedPeer;
int storedMsgType;
bool initialized;
idSessionLocal::state_t localState;
unsigned int sessionOptions;
idSessionLocal::connectType_t connectType;
int connectTime;
lobbyConnectInfo_t connectAddress;
int fallbackGameMode;
idLobby partyLobby;
idLobby gameLobby;
idLobby gameStateLobby;
idLobbyStub stubLobby;
int currentID;
idVoiceChatMgr *voiceChat;
int lastVoiceSendtime;
bool hasShownVoiceRestrictionDialog;
idSessionLocal::pendingInviteMode_t pendingInviteMode;
int pendingInviteDevice;
lobbyConnectInfo_t pendingInviteConnectInfo;
bool isSysUIShowing;
idDict titleStorageVars;
bool titleStorageLoaded;
int showMigratingInfoStartTime;
int nextGameCoalesceTime;
bool gameLobbyWasCoalesced;
int numFullSnapsReceived;
bool flushedStats;
int loadingID;
std::auto_ptr<idSaveGameProcessorSaveFiles> processorSaveFiles;
std::auto_ptr<idSaveGameProcessorLoadFiles> processorLoadFiles;
std::auto_ptr<idSaveGameProcessorDelete> processorDelete;
std::auto_ptr<idSaveGameProcessorEnumerateGames> processorEnumerate;
idStr currentSaveSlot;
int enumerationHandle;
idStaticList<idSessionLocal::contentData_t,16> downloadedContent;
bool marketplaceHasNewContent;
idBlockAlloc<idSessionLocal::idQueuePacket,64,57> packetAllocator;
idQueue<idSessionLocal::idQueuePacket,1272> sendQueue;
idQueue<idSessionLocal::idQueuePacket,1272> recvQueue;
float upstreamDropRate;
int upstreamDropRateTime;
float upstreamQueueRate;
int upstreamQueueRateTime;
int queuedBytes;
int waitingOnGameStateMembersToLeaveTime;
int waitingOnGameStateMembersToJoinTime;
idSessionCallbacks *sessionCallbacks;
int offlineTransitionTimerStart;
bool droppedByHost;
};
// IDA Local Type ordinal 22565; PDB kind: struct.
struct idSessionLocal::contentData_t
{
bool isMounted;
idStrStatic<128> displayName;
idStrStatic<256> packageFileName;
idStrStatic<256> rootPath;
int dlcID;
_XCONTENT_DATA contentData;
};
// IDA Local Type ordinal 22568; PDB kind: class.
class idSessionLocal::idQueuePacket
{
public:
unsigned __int8 data[1200];
lobbyAddress_t address;
int size;
int time;
bool dedicated;
idQueueNode<idSessionLocal::idQueuePacket> queueNode;
};
// IDA Local Type ordinal 22590; PDB kind: class.
class idSessionLocal::idStateRecord : public idMetricRecord
{
public:
// Recovered virtual interface; IDA vtable ordinal 22591.
virtual ~idStateRecord();
virtual void WriteHeader(idMetricFile *);
virtual void SerializeEntry(idMetricFile *);
idStr state;
};
// IDA Local Type ordinal 22602; PDB kind: class.
class __declspec(align(8)) idSessionLocalXbox : public idSessionLocal
{
public:
// Recovered virtual interface; IDA vtable ordinal 22614.
virtual ~idSessionLocalXbox();
virtual void Initialize();
virtual void Shutdown();
virtual void InitializeSoundRelatedSystems();
virtual void ShutdownSoundRelatedSystems();
virtual void CreatePartyLobby(const idMatchParameters *);
virtual void FindOrCreateMatch(const idMatchParameters *, int);
virtual void CreateMatch(const idMatchParameters *);
virtual void CreateGameStateLobby(const idMatchParameters *);
virtual void UpdateMatchParms(const idMatchParameters *);
virtual void UpdatePartyParms(const idMatchParameters *);
virtual void StartMatch();
virtual void EndMatch(bool);
virtual void MatchFinished();
virtual void QuitMatch();
virtual void QuitMatchToTitle();
virtual void SetSessionOption(idSession::sessionOption_t);
virtual void ClearSessionOption(idSession::sessionOption_t);
virtual idSession::sessionState_t GetBackState();
virtual void Cancel();
virtual void MoveToPressStart();
virtual void FinishDisconnect();
virtual void LoadingFinished();
virtual bool IsCurrentLobbyMigrating();
virtual bool IsLosingConnectionToHost();
virtual bool WasMigrationGame();
virtual bool ShouldRelaunchMigrationGame();
virtual bool WasGameLobbyCoalesced();
virtual bool GetMigrationGameData(idBitMsg *, bool);
virtual bool GetMigrationGameDataUser(lobbyUserID_t, idBitMsg *, bool);
virtual bool GetMatchParamUpdate(int *, int *);
virtual void Pump();
virtual void ProcessSnapAckQueue();
virtual void InviteFriends();
virtual void InviteParty();
virtual void ShowPartySessions();
virtual bool IsPlatformPartyInLobby();
virtual idLobbyBase *GetPartyLobbyBase();
virtual idLobbyBase *GetGameLobbyBase();
virtual idLobbyBase *GetActingGameStateLobbyBase();
virtual idLobbyBase *GetActivePlatformLobbyBase();
virtual idLobbyBase *GetLobbyFromLobbyUserID(lobbyUserID_t);
virtual void SendLocalSessionUsersToPeers();
virtual idPlayerProfile *GetProfileFromMasterLocalUser();
virtual bool ProcessInputEvent(const sysEvent_t *);
virtual float GetUpstreamDropRate();
virtual float GetUpstreamQueueRate();
virtual int GetQueuedBytes();
virtual int GetLoadingID();
virtual bool IsAboutToLoad();
virtual const char *GetLocalUserName(int);
virtual idSession::sessionState_t GetState();
virtual const char *GetStateString();
virtual const char *GetStateString_2(idSession::sessionState_t);
virtual int NumServers();
virtual void ListServers(const idCallback *);
virtual void CancelListServers();
virtual void ConnectToServer(int);
virtual const serverInfo_t *ServerInfo(int);
virtual const idList<idStr,5> *ServerPlayerList(int);
virtual void ShowServerGamerCardUI(int);
virtual void ShowOnlineSignin();
virtual void DropClient(int, int);
virtual void JoinAfterSwap(void *);
virtual void EnumerateDownloadableContent();
virtual int GetNumContentPackages();
virtual int GetContentPackageID(int);
virtual const char *GetContentPackagePath(int);
virtual int GetContentPackageIndexForID(int);
virtual void ShowSystemMarketplaceUI();
virtual bool GetSystemMarketplaceHasNewContent();
virtual void SetSystemMarketplaceHasNewContent(bool);
virtual bool GetTitleStorageFloat(const char *, float, float *);
virtual float GetTitleStorageFloat_2(const char *, float);
virtual bool GetTitleStorageInt(const char *, int, int *);
virtual int GetTitleStorageInt_2(const char *, int);
virtual bool GetTitleStorageBool(const char *, bool, bool *);
virtual bool GetTitleStorageBool_2(const char *, bool);
virtual bool GetTitleStorageString(const char *, const char *, const char **);
virtual const char *GetTitleStorageString_2(const char *, const char *);
virtual bool IsTitleStorageLoaded();
virtual void LeaderboardUpload(lobbyUserID_t, const leaderboardDefinition_t *, const column_t *, const idFile_Memory *);
virtual void LeaderboardDownload(int, const leaderboardDefinition_t *, int, int, const idLeaderboardCallback *);
virtual void LeaderboardDownloadAttachment(int, const leaderboardDefinition_t *, __int64);
virtual void LeaderboardFlush();
virtual void SetLobbyUserRelativeScore(lobbyUserID_t, int, int);
virtual int SaveGameSync(const char *, const idStaticList<idFile_SaveGame *,10> *, const idSaveGameDetails *);
virtual int SaveGameAsync(const char *, const idStaticList<idFile_SaveGame *,10> *, const idSaveGameDetails *);
virtual int LoadGameSync(const char *, idStaticList<idFile_SaveGame *,10> *);
virtual int EnumerateSaveGamesSync();
virtual int EnumerateSaveGamesAsync();
virtual int DeleteSaveGameSync(const char *);
virtual int DeleteSaveGameAsync(const char *);
virtual bool IsSaveGameCompletedFromHandle(const int *);
virtual void CancelSaveGameWithHandle(const int *);
virtual bool IsEnumerating();
virtual int GetEnumerationHandle();
virtual const idStaticList<idSaveGameDetails,16> *GetEnumeratedSavegames();
virtual void SetCurrentSaveSlot(const char *);
virtual const char *GetCurrentSaveSlot();
virtual bool IsDLCAvailable(const char *);
virtual bool LoadGameCheckDiscNumber(idSaveLoadParms *);
virtual void ShowLobbyUserGamerCardUI(lobbyUserID_t);
virtual void UpdateRichPresence();
virtual void SendUsercmds(idBitMsg *);
virtual void SendSnapshot(idSnapShot *);
virtual int GetInputRouting(int *);
virtual void UpdateSignInManager();
virtual struct idDiscSwapper *GetDiscSwapper();
virtual bool IsSystemUIShowing();
virtual void SetSystemUIShowing(bool);
virtual voiceState_t GetLobbyUserVoiceState(lobbyUserID_t);
virtual voiceStateDisplay_t GetDisplayStateFromVoiceState(voiceState_t);
virtual void ToggleLobbyUserVoiceMute(lobbyUserID_t);
virtual void SetActiveChatGroup(int);
virtual void CheckVoicePrivileges();
virtual bool StartOrContinueBandwidthChallenge(bool);
virtual void DebugSetPeerSnaprate(int, int);
virtual float GetIncomingByteRate();
virtual void HandleBootableInvite(__int64);
virtual void ClearBootableInvite();
virtual bool HasPendingBootableInvite();
virtual void OnLocalUserSignin(idLocalUser *);
virtual void OnLocalUserSignout(idLocalUser *);
virtual void OnMasterLocalUserSignout();
virtual void OnMasterLocalUserSignin();
virtual void OnLocalUserProfileLoaded(idLocalUser *);
virtual void JoinMatch(const lobbyConnectInfo_t *, bool);
virtual bool ShouldShowMigratingDialog();
virtual const char *GetPeerName(int);
virtual void PrePickNewHost(idLobby *, bool, bool);
virtual bool PreMigrateInvite(idLobby *);
virtual void UpdateMasterUserHeadsetState();
virtual void PlatformPump();
virtual bool IsSteamInitialized();
virtual bool IsSteamStatsInitialized();
virtual void ListServersCommon();
virtual void HandleServerQueryRequest(lobbyAddress_t *, idBitMsg *, idLobby::lobbyType_t, int);
virtual void HandleServerQueryAck(lobbyAddress_t *, idBitMsg *);
virtual void UpdatePendingInvite();
virtual idLobbyPort *GetPort(bool);
virtual idLobbyBackend *CreateLobbyBackend(const idMatchParameters *, float, idLobbyBackend::lobbyBackendType_t);
virtual idLobbyBackend *FindLobbyBackend(const idMatchParameters *, int, float, idLobbyBackend::lobbyBackendType_t);
virtual idLobbyBackend *JoinFromConnectInfo(const lobbyConnectInfo_t *, idLobbyBackend::lobbyBackendType_t);
virtual void DestroyLobbyBackend(idLobbyBackend *);
virtual void PumpLobbies();
virtual bool GetLobbyAddressFromNetAddress(const netadr_t *, lobbyAddress_t *);
virtual bool GetNetAddressFromLobbyAddress(const lobbyAddress_t *, netadr_t *);
virtual void RecvLeaderboardStats360(idBitMsg *);
virtual bool PreInviteDiscCheck(_XINVITE_INFO *);
virtual bool GetRequiredAchievementStorage(unsigned __int64 *);
idLeaderboards leaderboards;
id360ServerFinder *serverFinder;
idList<idSessionLocalXbox::systemLinkServer_t,5> systemLinkServers;
idCallback *systemLinkFinderCB;
int startSystemLinkQuery;
idLobbyPort port;
idLobbyPort dedicatedPort;
idArray<idLobbyBackend *,3> lobbyBackends;
idStaticList<idLobbyBackend *,4> shutdownLobbies;
bool obtainedTitleAddr;
__unaligned __declspec(align(1)) XNADDR titleAddress;
unsigned __int64 machineId;
idLobbyToSessionCBLocal *lobbyToSessionCB;
};
// IDA Local Type ordinal 22605; PDB kind: struct.
struct idSessionLocalXbox::systemLinkServer_t
{
_XSESSION_INFO sessionInfo;
serverInfo_t serverInfo;
};
// IDA Local Type ordinal 22661; PDB kind: struct.
struct idSessionLocal::LoadGameSync::__l3::local_t
{
idSaveLoadParms *parms;
idStrStatic<64> slotName;
};
// IDA Local Type ordinal 22662; PDB kind: struct.
struct idSessionLocal::DeleteSaveGameSync::__l2::local_t
{
};
// IDA Local Type ordinal 22663; PDB kind: struct.
struct idSessionLocal::SaveGameAsync::__l2::local_t
{
idSaveLoadParms *parms;
};
// IDA Local Type ordinal 22664; PDB kind: struct.
struct idSessionLocal::EnumerateSaveGamesSync::__l2::local_t
{
};
+14
View File
@@ -0,0 +1,14 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\sys_signin.h
// Recovered logical types: 1
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 12255; PDB kind: class.
class idSysSignal
{
public:
void *handle;
};
@@ -0,0 +1,20 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\xenon\xen_friends_enum.h
// Recovered logical types: 1
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 22504; PDB kind: class.
class idFriendsEnum : public OverlappedOperation
{
public:
// Recovered virtual interface; IDA vtable ordinal 22505.
virtual ~idFriendsEnum();
virtual void OnCompleted();
virtual void OnFailed();
void *resultsEnum;
unsigned __int8 *resultsBuffer;
};
@@ -0,0 +1,19 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\xenon\xen_overlapped_operation.h
// Recovered logical types: 1
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 22502; PDB kind: class.
class OverlappedOperation
{
public:
// Recovered virtual interface; IDA vtable ordinal 22503.
virtual ~OverlappedOperation();
virtual void OnCompleted();
virtual void OnFailed();
_XOVERLAPPED overlapped;
};
@@ -0,0 +1,70 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\xenon\xen_server_finder.h
// Recovered logical types: 4
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 2985; PDB kind: enum.
enum id360FriendsServerFinder::finderState_t : __int32
{
STATE_IDLE = 0x0,
STATE_FINDING_FRIENDS = 0x1,
STATE_FINDING_SESSIONS = 0x2,
STATE_QUERY_SERVERS = 0x3,
STATE_SUCCESS = 0x4,
STATE_FAILED = 0x5,
};
// IDA Local Type ordinal 22603; PDB kind: class.
class id360ServerFinder
{
public:
// Recovered virtual interface; IDA vtable ordinal 22604.
virtual ~id360ServerFinder();
virtual void FindServers(const idCallback *);
virtual int NumServers();
virtual bool GetServerSessionInfo(int, _XSESSION_INFO *);
virtual void KeepServerSecurityAssociation(int);
virtual const serverInfo_t *GetServerInfo(int);
virtual unsigned __int64 GetFriendXuid(int);
virtual void Pump();
idCallback *callback;
idServerQuery serverQuery;
idLobby *partyLobby;
idLobby *gameLobby;
};
// IDA Local Type ordinal 22621; PDB kind: struct.
struct __declspec(align(4)) id360FriendsServerFinder::friendGameQuery_t
{
char szGamertag[16];
unsigned __int64 xuid;
serverInfo_t serverInfo;
XNKID sessionID;
_XSESSION_INFO sessionInfo;
bool acked;
};
// IDA Local Type ordinal 22624; PDB kind: class.
class __declspec(align(8)) id360FriendsServerFinder : public id360ServerFinder
{
public:
// Recovered virtual interface; IDA vtable ordinal 22625.
virtual ~id360FriendsServerFinder();
virtual void FindServers(const idCallback *);
virtual int NumServers();
virtual bool GetServerSessionInfo(int, _XSESSION_INFO *);
virtual void KeepServerSecurityAssociation(int);
virtual const serverInfo_t *GetServerInfo(int);
virtual unsigned __int64 GetFriendXuid(int);
virtual void Pump();
idFriendsEnum *friendsEnum;
idSessionFinder *sessionFinder;
idStaticList<XNKID,8> sessionIDs;
idStaticList<id360FriendsServerFinder::friendGameQuery_t,16> friendGames;
id360FriendsServerFinder::finderState_t state;
};
@@ -0,0 +1,23 @@
#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\engine\sys\xenon\xen_session_key_mgr.h
// Recovered logical types: 2
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 22631; PDB kind: struct.
struct idSessionKeyMgr::sessionKey_t
{
int refCount;
XNKID sessionID;
XNKEY keyExchangeKey;
idLobbyBackend *lobbyOwner;
};
// IDA Local Type ordinal 22634; PDB kind: class.
class idSessionKeyMgr
{
public:
idStaticList<idSessionKeyMgr::sessionKey_t,10> sessionKeys;
};