Files
2026-02-21 16:45:37 +08:00

824 lines
24 KiB
C#

using System;
using Oculus.Platform.Models;
using UnityEngine;
namespace Oculus.Platform
{
public abstract class Message<T> : Message
{
public new delegate void Callback(Message<T> message);
private T data;
public T Data
{
get
{
return data;
}
}
public Message(IntPtr c_message)
: base(c_message)
{
if (!base.IsError)
{
data = GetDataFromMessage(c_message);
}
}
protected abstract T GetDataFromMessage(IntPtr c_message);
}
public class Message
{
public delegate void Callback(Message message);
public enum MessageType : uint
{
Unknown = 0u,
Achievements_AddCount = 65495601u,
Achievements_AddFields = 346693929u,
Achievements_GetAllDefinitions = 64177549u,
Achievements_GetAllProgress = 1335877149u,
Achievements_GetDefinitionsByName = 1653670332u,
Achievements_GetNextAchievementDefinitionArrayPage = 712888917u,
Achievements_GetNextAchievementProgressArrayPage = 792913703u,
Achievements_GetProgressByName = 354837425u,
Achievements_Unlock = 1497156573u,
ApplicationLifecycle_GetRegisteredPIDs = 82169698u,
ApplicationLifecycle_GetSessionKey = 984570141u,
ApplicationLifecycle_RegisterSessionKey = 1303818232u,
Application_GetVersion = 1751583246u,
Application_LaunchOtherApp = 1424151032u,
AssetFile_Delete = 1834842246u,
AssetFile_DeleteById = 1525206354u,
AssetFile_DeleteByName = 1108001231u,
AssetFile_Download = 289710021u,
AssetFile_DownloadById = 755009938u,
AssetFile_DownloadByName = 1664536314u,
AssetFile_DownloadCancel = 134927303u,
AssetFile_DownloadCancelById = 1365611796u,
AssetFile_DownloadCancelByName = 1147858170u,
AssetFile_GetList = 1258057588u,
AssetFile_Status = 47394656u,
AssetFile_StatusById = 1570069816u,
AssetFile_StatusByName = 1104140880u,
CloudStorage_Delete = 685393261u,
CloudStorage_GetNextCloudStorageMetadataArrayPage = 1544004335u,
CloudStorage_Load = 1082420033u,
CloudStorage_LoadBucketMetadata = 1931977997u,
CloudStorage_LoadConflictMetadata = 1146770162u,
CloudStorage_LoadHandle = 845863478u,
CloudStorage_LoadMetadata = 65446546u,
CloudStorage_ResolveKeepLocal = 811109637u,
CloudStorage_ResolveKeepRemote = 1965400838u,
CloudStorage_Save = 1270570030u,
Entitlement_GetIsViewerEntitled = 409688241u,
IAP_ConsumePurchase = 532378329u,
IAP_GetNextProductArrayPage = 467225263u,
IAP_GetNextPurchaseArrayPage = 1196886677u,
IAP_GetProductsBySKU = 2124073717u,
IAP_GetViewerPurchases = 974095385u,
IAP_LaunchCheckoutFlow = 1067126029u,
LanguagePack_GetCurrent = 529592533u,
LanguagePack_SetCurrent = 1531952096u,
Leaderboard_GetEntries = 1572030284u,
Leaderboard_GetEntriesAfterRank = 406293487u,
Leaderboard_GetNextEntries = 1310751961u,
Leaderboard_GetPreviousEntries = 1224858304u,
Leaderboard_WriteEntry = 293587198u,
Livestreaming_GetStatus = 1218079125u,
Livestreaming_PauseStream = 916223619u,
Livestreaming_ResumeStream = 575827343u,
Matchmaking_Browse = 509948616u,
Matchmaking_Browse2 = 1715641947u,
Matchmaking_Cancel = 543705519u,
Matchmaking_Cancel2 = 285117908u,
Matchmaking_CreateAndEnqueueRoom = 1615617480u,
Matchmaking_CreateAndEnqueueRoom2 = 693889755u,
Matchmaking_CreateRoom = 54203178u,
Matchmaking_CreateRoom2 = 1231922052u,
Matchmaking_Enqueue = 1086418033u,
Matchmaking_Enqueue2 = 303174325u,
Matchmaking_EnqueueRoom = 1888108644u,
Matchmaking_EnqueueRoom2 = 1428741028u,
Matchmaking_GetAdminSnapshot = 1008820116u,
Matchmaking_GetStats = 1123849272u,
Matchmaking_JoinRoom = 1295177725u,
Matchmaking_ReportResultInsecure = 439800205u,
Matchmaking_StartMatch = 1154746693u,
Media_ShareToFacebook = 14912239u,
Notification_GetNextRoomInviteNotificationArrayPage = 102890359u,
Notification_GetRoomInvites = 1871801234u,
Notification_MarkAsRead = 1903319523u,
Party_GetCurrent = 1200830304u,
Room_CreateAndJoinPrivate = 1977017207u,
Room_CreateAndJoinPrivate2 = 1513775683u,
Room_Get = 1704628152u,
Room_GetCurrent = 161916164u,
Room_GetCurrentForUser = 234887141u,
Room_GetInvitableUsers = 506615698u,
Room_GetInvitableUsers2 = 1330899120u,
Room_GetModeratedRooms = 159645047u,
Room_GetNextRoomArrayPage = 1317239238u,
Room_InviteUser = 1093266451u,
Room_Join = 382373641u,
Room_Join2 = 1303059522u,
Room_KickUser = 1233344310u,
Room_LaunchInvitableUserFlow = 843047539u,
Room_Leave = 1916281973u,
Room_SetDescription = 809796911u,
Room_UpdateDataStore = 40779816u,
Room_UpdateMembershipLockStatus = 923514796u,
Room_UpdateOwner = 850803997u,
Room_UpdatePrivateRoomJoinPolicy = 289473179u,
User_Get = 1808768583u,
User_GetAccessToken = 111696574u,
User_GetLoggedInUser = 1131361373u,
User_GetLoggedInUserFriends = 1484532365u,
User_GetLoggedInUserFriendsAndRooms = 1585908615u,
User_GetLoggedInUserRecentlyMetUsersAndRooms = 694139440u,
User_GetNextUserAndRoomArrayPage = 2143146719u,
User_GetNextUserArrayPage = 645723971u,
User_GetOrgScopedID = 418426907u,
User_GetSdkAccounts = 1733454467u,
User_GetUserProof = 578880643u,
User_LaunchFriendRequestFlow = 151303576u,
User_LaunchProfile = 171537047u,
Voip_SetSystemVoipSuppressed = 1161808298u,
Notification_ApplicationLifecycle_LaunchIntentChanged = 78859427u,
Notification_AssetFile_DownloadUpdate = 803015885u,
Notification_Cal_FinalizeApplication = 1963741337u,
Notification_Cal_ProposeApplication = 779375093u,
Notification_HTTP_Transfer = 2111073839u,
Notification_Livestreaming_StatusChange = 575101294u,
Notification_Matchmaking_MatchFound = 197393623u,
Notification_Networking_ConnectionStateChange = 1577243802u,
Notification_Networking_PeerConnectRequest = 1295114959u,
Notification_Networking_PingResult = 1360343058u,
Notification_Party_PartyUpdate = 487688882u,
Notification_Room_InviteAccepted = 1829794225u,
Notification_Room_InviteReceived = 1783209300u,
Notification_Room_RoomUpdate = 1626094639u,
Notification_Voip_ConnectRequest = 908343318u,
Notification_Voip_StateChange = 888120928u,
Notification_Voip_SystemVoipState = 1490179237u,
Platform_InitializeWithAccessToken = 896085803u,
Platform_InitializeStandaloneOculus = 1375260172u,
Platform_InitializeAndroidAsynchronous = 450037684u,
Platform_InitializeWindowsAsynchronous = 1839708815u
}
internal delegate Message ExtraMessageTypesHandler(IntPtr messageHandle, MessageType message_type);
private MessageType type;
private ulong requestID;
private Error error;
public MessageType Type
{
get
{
return type;
}
}
public bool IsError
{
get
{
return error != null;
}
}
public ulong RequestID
{
get
{
return requestID;
}
}
internal static ExtraMessageTypesHandler HandleExtraMessageTypes { private get; set; }
public Message(IntPtr c_message)
{
type = CAPI.ovr_Message_GetType(c_message);
bool flag = CAPI.ovr_Message_IsError(c_message);
requestID = CAPI.ovr_Message_GetRequestID(c_message);
if (flag)
{
IntPtr obj = CAPI.ovr_Message_GetError(c_message);
error = new Error(CAPI.ovr_Error_GetCode(obj), CAPI.ovr_Error_GetMessage(obj), CAPI.ovr_Error_GetHttpCode(obj));
}
else if (Core.LogMessages)
{
string text = CAPI.ovr_Message_GetString(c_message);
if (text != null)
{
Debug.Log(text);
}
else
{
Debug.Log(string.Format("null message string {0}", c_message));
}
}
}
~Message()
{
}
public virtual Error GetError()
{
return error;
}
public virtual PingResult GetPingResult()
{
return null;
}
public virtual Oculus.Platform.Models.NetworkingPeer GetNetworkingPeer()
{
return null;
}
public virtual HttpTransferUpdate GetHttpTransferUpdate()
{
return null;
}
public virtual PlatformInitialize GetPlatformInitialize()
{
return null;
}
public virtual AbuseReportRecording GetAbuseReportRecording()
{
return null;
}
public virtual AchievementDefinitionList GetAchievementDefinitions()
{
return null;
}
public virtual AchievementProgressList GetAchievementProgressList()
{
return null;
}
public virtual AchievementUpdate GetAchievementUpdate()
{
return null;
}
public virtual ApplicationVersion GetApplicationVersion()
{
return null;
}
public virtual AssetDetails GetAssetDetails()
{
return null;
}
public virtual AssetDetailsList GetAssetDetailsList()
{
return null;
}
public virtual AssetFileDeleteResult GetAssetFileDeleteResult()
{
return null;
}
public virtual AssetFileDownloadCancelResult GetAssetFileDownloadCancelResult()
{
return null;
}
public virtual AssetFileDownloadResult GetAssetFileDownloadResult()
{
return null;
}
public virtual AssetFileDownloadUpdate GetAssetFileDownloadUpdate()
{
return null;
}
public virtual CalApplicationFinalized GetCalApplicationFinalized()
{
return null;
}
public virtual CalApplicationProposed GetCalApplicationProposed()
{
return null;
}
public virtual CalApplicationSuggestionList GetCalApplicationSuggestionList()
{
return null;
}
public virtual CloudStorageConflictMetadata GetCloudStorageConflictMetadata()
{
return null;
}
public virtual CloudStorageData GetCloudStorageData()
{
return null;
}
public virtual CloudStorageMetadata GetCloudStorageMetadata()
{
return null;
}
public virtual CloudStorageMetadataList GetCloudStorageMetadataList()
{
return null;
}
public virtual CloudStorageUpdateResponse GetCloudStorageUpdateResponse()
{
return null;
}
public virtual InstalledApplicationList GetInstalledApplicationList()
{
return null;
}
public virtual LaunchBlockFlowResult GetLaunchBlockFlowResult()
{
return null;
}
public virtual LaunchFriendRequestFlowResult GetLaunchFriendRequestFlowResult()
{
return null;
}
public virtual LaunchReportFlowResult GetLaunchReportFlowResult()
{
return null;
}
public virtual LaunchUnblockFlowResult GetLaunchUnblockFlowResult()
{
return null;
}
public virtual bool GetLeaderboardDidUpdate()
{
return false;
}
public virtual LeaderboardEntryList GetLeaderboardEntryList()
{
return null;
}
public virtual LinkedAccountList GetLinkedAccountList()
{
return null;
}
public virtual LivestreamingApplicationStatus GetLivestreamingApplicationStatus()
{
return null;
}
public virtual LivestreamingStartResult GetLivestreamingStartResult()
{
return null;
}
public virtual LivestreamingStatus GetLivestreamingStatus()
{
return null;
}
public virtual LivestreamingVideoStats GetLivestreamingVideoStats()
{
return null;
}
public virtual MatchmakingAdminSnapshot GetMatchmakingAdminSnapshot()
{
return null;
}
public virtual MatchmakingBrowseResult GetMatchmakingBrowseResult()
{
return null;
}
public virtual MatchmakingEnqueueResult GetMatchmakingEnqueueResult()
{
return null;
}
public virtual MatchmakingEnqueueResultAndRoom GetMatchmakingEnqueueResultAndRoom()
{
return null;
}
public virtual MatchmakingStats GetMatchmakingStats()
{
return null;
}
public virtual OrgScopedID GetOrgScopedID()
{
return null;
}
public virtual Party GetParty()
{
return null;
}
public virtual PartyID GetPartyID()
{
return null;
}
public virtual PartyUpdateNotification GetPartyUpdateNotification()
{
return null;
}
public virtual PidList GetPidList()
{
return null;
}
public virtual ProductList GetProductList()
{
return null;
}
public virtual Purchase GetPurchase()
{
return null;
}
public virtual PurchaseList GetPurchaseList()
{
return null;
}
public virtual Oculus.Platform.Models.Room GetRoom()
{
return null;
}
public virtual RoomInviteNotification GetRoomInviteNotification()
{
return null;
}
public virtual RoomInviteNotificationList GetRoomInviteNotificationList()
{
return null;
}
public virtual RoomList GetRoomList()
{
return null;
}
public virtual SdkAccountList GetSdkAccountList()
{
return null;
}
public virtual ShareMediaResult GetShareMediaResult()
{
return null;
}
public virtual string GetString()
{
return null;
}
public virtual SystemPermission GetSystemPermission()
{
return null;
}
public virtual SystemVoipState GetSystemVoipState()
{
return null;
}
public virtual User GetUser()
{
return null;
}
public virtual UserAndRoomList GetUserAndRoomList()
{
return null;
}
public virtual UserList GetUserList()
{
return null;
}
public virtual UserProof GetUserProof()
{
return null;
}
public virtual UserReportID GetUserReportID()
{
return null;
}
internal static Message ParseMessageHandle(IntPtr messageHandle)
{
if (messageHandle.ToInt64() == 0)
{
return null;
}
Message message = null;
MessageType messageType = CAPI.ovr_Message_GetType(messageHandle);
switch (messageType)
{
case MessageType.Achievements_GetAllDefinitions:
case MessageType.Achievements_GetNextAchievementDefinitionArrayPage:
case MessageType.Achievements_GetDefinitionsByName:
message = new MessageWithAchievementDefinitions(messageHandle);
break;
case MessageType.Achievements_GetProgressByName:
case MessageType.Achievements_GetNextAchievementProgressArrayPage:
case MessageType.Achievements_GetAllProgress:
message = new MessageWithAchievementProgressList(messageHandle);
break;
case MessageType.Achievements_AddCount:
case MessageType.Achievements_AddFields:
case MessageType.Achievements_Unlock:
message = new MessageWithAchievementUpdate(messageHandle);
break;
case MessageType.Application_GetVersion:
message = new MessageWithApplicationVersion(messageHandle);
break;
case MessageType.AssetFile_Status:
case MessageType.LanguagePack_GetCurrent:
case MessageType.AssetFile_StatusByName:
case MessageType.AssetFile_StatusById:
message = new MessageWithAssetDetails(messageHandle);
break;
case MessageType.AssetFile_GetList:
message = new MessageWithAssetDetailsList(messageHandle);
break;
case MessageType.AssetFile_DeleteByName:
case MessageType.AssetFile_DeleteById:
case MessageType.AssetFile_Delete:
message = new MessageWithAssetFileDeleteResult(messageHandle);
break;
case MessageType.AssetFile_DownloadCancel:
case MessageType.AssetFile_DownloadCancelByName:
case MessageType.AssetFile_DownloadCancelById:
message = new MessageWithAssetFileDownloadCancelResult(messageHandle);
break;
case MessageType.AssetFile_Download:
case MessageType.AssetFile_DownloadById:
case MessageType.LanguagePack_SetCurrent:
case MessageType.AssetFile_DownloadByName:
message = new MessageWithAssetFileDownloadResult(messageHandle);
break;
case MessageType.Notification_AssetFile_DownloadUpdate:
message = new MessageWithAssetFileDownloadUpdate(messageHandle);
break;
case MessageType.Notification_Cal_FinalizeApplication:
message = new MessageWithCalApplicationFinalized(messageHandle);
break;
case MessageType.Notification_Cal_ProposeApplication:
message = new MessageWithCalApplicationProposed(messageHandle);
break;
case MessageType.CloudStorage_LoadConflictMetadata:
message = new MessageWithCloudStorageConflictMetadata(messageHandle);
break;
case MessageType.CloudStorage_LoadHandle:
case MessageType.CloudStorage_Load:
message = new MessageWithCloudStorageData(messageHandle);
break;
case MessageType.CloudStorage_LoadMetadata:
message = new MessageWithCloudStorageMetadataUnderLocal(messageHandle);
break;
case MessageType.CloudStorage_GetNextCloudStorageMetadataArrayPage:
case MessageType.CloudStorage_LoadBucketMetadata:
message = new MessageWithCloudStorageMetadataList(messageHandle);
break;
case MessageType.CloudStorage_Delete:
case MessageType.CloudStorage_ResolveKeepLocal:
case MessageType.CloudStorage_Save:
case MessageType.CloudStorage_ResolveKeepRemote:
message = new MessageWithCloudStorageUpdateResponse(messageHandle);
break;
case MessageType.User_LaunchProfile:
case MessageType.Matchmaking_Cancel2:
case MessageType.Entitlement_GetIsViewerEntitled:
case MessageType.Matchmaking_ReportResultInsecure:
case MessageType.IAP_ConsumePurchase:
case MessageType.Matchmaking_Cancel:
case MessageType.Room_LaunchInvitableUserFlow:
case MessageType.Room_UpdateOwner:
case MessageType.Matchmaking_StartMatch:
case MessageType.ApplicationLifecycle_RegisterSessionKey:
case MessageType.Notification_MarkAsRead:
message = new Message(messageHandle);
break;
case MessageType.User_LaunchFriendRequestFlow:
message = new MessageWithLaunchFriendRequestFlowResult(messageHandle);
break;
case MessageType.Leaderboard_GetEntriesAfterRank:
case MessageType.Leaderboard_GetPreviousEntries:
case MessageType.Leaderboard_GetNextEntries:
case MessageType.Leaderboard_GetEntries:
message = new MessageWithLeaderboardEntryList(messageHandle);
break;
case MessageType.Leaderboard_WriteEntry:
message = new MessageWithLeaderboardDidUpdate(messageHandle);
break;
case MessageType.Notification_Livestreaming_StatusChange:
case MessageType.Livestreaming_ResumeStream:
case MessageType.Livestreaming_PauseStream:
case MessageType.Livestreaming_GetStatus:
message = new MessageWithLivestreamingStatus(messageHandle);
break;
case MessageType.Matchmaking_GetAdminSnapshot:
message = new MessageWithMatchmakingAdminSnapshot(messageHandle);
break;
case MessageType.Matchmaking_Browse:
case MessageType.Matchmaking_Browse2:
message = new MessageWithMatchmakingBrowseResult(messageHandle);
break;
case MessageType.Matchmaking_Enqueue2:
case MessageType.Matchmaking_Enqueue:
case MessageType.Matchmaking_EnqueueRoom2:
case MessageType.Matchmaking_EnqueueRoom:
message = new MessageWithMatchmakingEnqueueResult(messageHandle);
break;
case MessageType.Matchmaking_CreateAndEnqueueRoom2:
case MessageType.Matchmaking_CreateAndEnqueueRoom:
message = new MessageWithMatchmakingEnqueueResultAndRoom(messageHandle);
break;
case MessageType.Matchmaking_GetStats:
message = new MessageWithMatchmakingStatsUnderMatchmakingStats(messageHandle);
break;
case MessageType.User_GetOrgScopedID:
message = new MessageWithOrgScopedID(messageHandle);
break;
case MessageType.Party_GetCurrent:
message = new MessageWithPartyUnderCurrentParty(messageHandle);
break;
case MessageType.Notification_Party_PartyUpdate:
message = new MessageWithPartyUpdateNotification(messageHandle);
break;
case MessageType.ApplicationLifecycle_GetRegisteredPIDs:
message = new MessageWithPidList(messageHandle);
break;
case MessageType.IAP_GetNextProductArrayPage:
case MessageType.IAP_GetProductsBySKU:
message = new MessageWithProductList(messageHandle);
break;
case MessageType.IAP_LaunchCheckoutFlow:
message = new MessageWithPurchase(messageHandle);
break;
case MessageType.IAP_GetViewerPurchases:
case MessageType.IAP_GetNextPurchaseArrayPage:
message = new MessageWithPurchaseList(messageHandle);
break;
case MessageType.Room_Get:
message = new MessageWithRoom(messageHandle);
break;
case MessageType.Room_GetCurrent:
case MessageType.Room_GetCurrentForUser:
message = new MessageWithRoomUnderCurrentRoom(messageHandle);
break;
case MessageType.Room_UpdateDataStore:
case MessageType.Matchmaking_CreateRoom:
case MessageType.Room_UpdatePrivateRoomJoinPolicy:
case MessageType.Room_Join:
case MessageType.Room_SetDescription:
case MessageType.Room_UpdateMembershipLockStatus:
case MessageType.Room_InviteUser:
case MessageType.Matchmaking_CreateRoom2:
case MessageType.Room_KickUser:
case MessageType.Matchmaking_JoinRoom:
case MessageType.Room_Join2:
case MessageType.Room_CreateAndJoinPrivate2:
case MessageType.Notification_Room_RoomUpdate:
case MessageType.Room_Leave:
case MessageType.Room_CreateAndJoinPrivate:
message = new MessageWithRoomUnderViewerRoom(messageHandle);
break;
case MessageType.Room_GetModeratedRooms:
case MessageType.Room_GetNextRoomArrayPage:
message = new MessageWithRoomList(messageHandle);
break;
case MessageType.Notification_Room_InviteReceived:
message = new MessageWithRoomInviteNotification(messageHandle);
break;
case MessageType.Notification_GetNextRoomInviteNotificationArrayPage:
case MessageType.Notification_GetRoomInvites:
message = new MessageWithRoomInviteNotificationList(messageHandle);
break;
case MessageType.User_GetSdkAccounts:
message = new MessageWithSdkAccountList(messageHandle);
break;
case MessageType.Media_ShareToFacebook:
message = new MessageWithShareMediaResult(messageHandle);
break;
case MessageType.Notification_ApplicationLifecycle_LaunchIntentChanged:
case MessageType.User_GetAccessToken:
case MessageType.ApplicationLifecycle_GetSessionKey:
case MessageType.Application_LaunchOtherApp:
case MessageType.Notification_Room_InviteAccepted:
message = new MessageWithString(messageHandle);
break;
case MessageType.Voip_SetSystemVoipSuppressed:
message = new MessageWithSystemVoipState(messageHandle);
break;
case MessageType.User_GetLoggedInUser:
case MessageType.User_Get:
message = new MessageWithUser(messageHandle);
break;
case MessageType.User_GetLoggedInUserRecentlyMetUsersAndRooms:
case MessageType.User_GetLoggedInUserFriendsAndRooms:
case MessageType.User_GetNextUserAndRoomArrayPage:
message = new MessageWithUserAndRoomList(messageHandle);
break;
case MessageType.Room_GetInvitableUsers:
case MessageType.User_GetNextUserArrayPage:
case MessageType.Room_GetInvitableUsers2:
case MessageType.User_GetLoggedInUserFriends:
message = new MessageWithUserList(messageHandle);
break;
case MessageType.User_GetUserProof:
message = new MessageWithUserProof(messageHandle);
break;
case MessageType.Notification_Networking_PeerConnectRequest:
case MessageType.Notification_Networking_ConnectionStateChange:
message = new MessageWithNetworkingPeer(messageHandle);
break;
case MessageType.Notification_Networking_PingResult:
message = new MessageWithPingResult(messageHandle);
break;
case MessageType.Notification_Matchmaking_MatchFound:
message = new MessageWithMatchmakingNotification(messageHandle);
break;
case MessageType.Notification_Voip_StateChange:
case MessageType.Notification_Voip_ConnectRequest:
message = new MessageWithNetworkingPeer(messageHandle);
break;
case MessageType.Notification_Voip_SystemVoipState:
message = new MessageWithSystemVoipState(messageHandle);
break;
case MessageType.Notification_HTTP_Transfer:
message = new MessageWithHttpTransferUpdate(messageHandle);
break;
case MessageType.Platform_InitializeAndroidAsynchronous:
case MessageType.Platform_InitializeWithAccessToken:
case MessageType.Platform_InitializeStandaloneOculus:
case MessageType.Platform_InitializeWindowsAsynchronous:
message = new MessageWithPlatformInitialize(messageHandle);
break;
default:
message = PlatformInternal.ParseMessageHandle(messageHandle, messageType);
if (message == null)
{
Debug.LogError(string.Format("Unrecognized message type {0}\n", messageType));
}
break;
}
return message;
}
public static Message PopMessage()
{
if (!Core.IsInitialized())
{
return null;
}
IntPtr intPtr = CAPI.ovr_PopMessage();
Message result = ParseMessageHandle(intPtr);
CAPI.ovr_FreeMessage(intPtr);
return result;
}
}
}