00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00030
00031 #ifndef AK_WWISE_PLATFORMID_H
00032 #define AK_WWISE_PLATFORMID_H
00033
00034 #if defined( _MSC_VER )
00035 #define AK_ID_DECLARE extern const _declspec( selectany )
00036 #else
00037 #define AK_ID_DECLARE const
00038 #endif
00039
00040 struct BasePlatformID
00041 {
00042 BasePlatformID():guid( GUID_NULL ){}
00043
00044
00045
00046
00047 static BasePlatformID Create( const GUID& in_BasePlatformID )
00048 {
00049 BasePlatformID ret;
00050 ret.guid = in_BasePlatformID;
00051 return ret;
00052 }
00053
00054 static BasePlatformID Empty()
00055 {
00056 return BasePlatformID::Create(GUID_NULL);
00057 }
00058
00059 bool IsNull() const
00060 {
00061 return (guid == GUID_NULL) ? true : false;
00062 }
00063
00064 bool operator == ( const BasePlatformID& in_rOther ) const
00065 {
00066 return (in_rOther.guid == guid)? true : false;
00067 }
00068 bool operator != ( const BasePlatformID& in_rOther ) const
00069 {
00070 return (in_rOther.guid != guid)? true : false;
00071 }
00072 GUID guid;
00073
00074 struct GUIDLessNative
00075 {
00076 bool operator()( const BasePlatformID& in_rLeft, const BasePlatformID& in_rRight ) const
00077 {
00078 return ( ::memcmp( &in_rLeft, &in_rRight, sizeof BasePlatformID ) < 0 );
00079 }
00080 };
00081 };
00082
00083 namespace PlatformID
00084 {
00085
00086 AK_ID_DECLARE GUID Windows_unsafeguid = { 0x6E0CB257, 0xC6C8, 0x4c5c, { 0x83, 0x66, 0x27, 0x40, 0xDF, 0xC4, 0x41, 0xEB } };
00087 AK_ID_DECLARE BasePlatformID Windows = BasePlatformID::Create( Windows_unsafeguid );
00088
00089
00090 AK_ID_DECLARE GUID Xbox360_unsafeguid = { 0xE0C09284, 0x6F61, 0x43dc, { 0x9C, 0x9D, 0xD8, 0x04, 0x7E, 0x47, 0xAB, 0x3B } };
00091 AK_ID_DECLARE BasePlatformID Xbox360 = BasePlatformID::Create( Xbox360_unsafeguid );
00092
00093
00094 AK_ID_DECLARE GUID PS3_unsafeguid = { 0xD85DACB3, 0x8FDB, 0x4aba, { 0x8C, 0x8A, 0x1F, 0x46, 0xAF, 0xB3, 0x53, 0x66 } };
00095 AK_ID_DECLARE BasePlatformID PS3 = BasePlatformID::Create( PS3_unsafeguid );
00096
00097
00098 AK_ID_DECLARE GUID Mac_unsafeguid = { 0x9c6217d5, 0xdd11, 0x4795, { 0x87, 0xc1, 0x6c, 0xe0, 0x28, 0x53, 0xc5, 0x40 } };
00099 AK_ID_DECLARE BasePlatformID Mac = BasePlatformID::Create( Mac_unsafeguid );
00100
00101
00102 AK_ID_DECLARE GUID VitaSW_unsafeguid = { 0x2db55050, 0x4b70, 0x4243, { 0xa2, 0x2c, 0x43, 0x4d, 0x77, 0x6a, 0x7, 0x53 } };
00103 AK_ID_DECLARE BasePlatformID VitaSW = BasePlatformID::Create( VitaSW_unsafeguid );
00104
00105
00106 AK_ID_DECLARE GUID VitaHW_unsafeguid = { 0x91ebcff, 0x5e04, 0x4260, { 0xb0, 0x25, 0x56, 0x62, 0x6, 0x27, 0x2e, 0xa6 } };
00107 AK_ID_DECLARE BasePlatformID VitaHW = BasePlatformID::Create( VitaHW_unsafeguid );
00108
00109
00110 AK_ID_DECLARE GUID PS4_unsafeguid = { 0x3af9b9b6, 0x6ef1, 0x47e9, { 0xb5, 0xfe, 0xe3, 0xc, 0x9e, 0x60, 0x2c, 0x77 } };
00111 AK_ID_DECLARE BasePlatformID PS4 = BasePlatformID::Create( PS4_unsafeguid );
00112
00113
00114 AK_ID_DECLARE GUID iOS_unsafeguid = { 0xece03db4, 0xf948, 0x462d, { 0xb2, 0xbb, 0xa9, 0x17, 0x30, 0x12, 0xb1, 0xf8 } };
00115 AK_ID_DECLARE BasePlatformID iOS = BasePlatformID::Create( iOS_unsafeguid );
00116
00117
00118 AK_ID_DECLARE GUID WiiUSW_unsafeguid = { 0x7cb75869, 0x58ad, 0x4458, { 0x94, 0x8a, 0x19, 0x35, 0xcc, 0xb4, 0xac, 0x66 } };
00119 AK_ID_DECLARE BasePlatformID WiiUSW = BasePlatformID::Create( WiiUSW_unsafeguid );
00120
00121
00122 AK_ID_DECLARE GUID WiiUHW_unsafeguid = { 0xff757ae1, 0xfce5, 0x420d, { 0x9e, 0x8a, 0x32, 0x13, 0x9d, 0x43, 0x6f, 0x74 } };
00123 AK_ID_DECLARE BasePlatformID WiiUHW = BasePlatformID::Create( WiiUHW_unsafeguid );
00124
00125
00126 AK_ID_DECLARE GUID Android_unsafeguid = { 0xa2d401de, 0xb8b6, 0x4feb, { 0x81, 0x42, 0x13, 0x7c, 0x34, 0xd5, 0x07, 0xCA } };
00127 AK_ID_DECLARE BasePlatformID Android = BasePlatformID::Create( Android_unsafeguid );
00128
00129
00130 AK_ID_DECLARE GUID XboxOne_unsafeguid = { 0xb131584b, 0x9961, 0x4bb5, { 0x9c, 0x58, 0xa3, 0xe9, 0xab, 0xff, 0xbb, 0xf6 } };
00131 AK_ID_DECLARE BasePlatformID XboxOne = BasePlatformID::Create( XboxOne_unsafeguid );
00132
00133
00134 AK_ID_DECLARE GUID Linux_unsafeguid = { 0xbd0bdf13, 0x3125, 0x454f, { 0x8b, 0xfd, 0x31, 0x95, 0x37, 0x16, 0x9f, 0x81 } };
00135 AK_ID_DECLARE BasePlatformID Linux = BasePlatformID::Create( Linux_unsafeguid );
00136
00137
00138 AK_ID_DECLARE GUID NintendoNX_unsafeguid = { 0x874f26d2, 0x416d, 0x4698, { 0xbf, 0xb6, 0x34, 0x27, 0xca, 0xfc, 0xff, 0x9c } };
00139 AK_ID_DECLARE BasePlatformID NintendoNX = BasePlatformID::Create(NintendoNX_unsafeguid);
00140
00141
00142 AK_ID_DECLARE GUID Emscripten_unsafeguid = { 0x639ad233, 0x23f2, 0x4c0f, { 0x91, 0x27, 0x79, 0xf4, 0x4c, 0x15, 0xe1, 0xdA } };
00143 AK_ID_DECLARE BasePlatformID Emscripten = BasePlatformID::Create(Emscripten_unsafeguid);
00144
00146 inline bool IsPlatformBigEndian( const BasePlatformID & in_guidPlatform )
00147 {
00148 return in_guidPlatform == PlatformID::WiiUSW
00149 || in_guidPlatform == PlatformID::WiiUHW
00150 || in_guidPlatform == PlatformID::PS3
00151 || in_guidPlatform == PlatformID::Xbox360;
00152 }
00153 }
00154
00155 #endif // AK_WWISE_PLATFORMID_H