include/AK/Wwise/Utilities.h
Go to the documentation of this file.00001
00002
00003
00004
00006
00009
00010 #ifndef _AK_WWISE_UTILITIES_H
00011 #define _AK_WWISE_UTILITIES_H
00012
00013 #include <AK/SoundEngine/Common/AkTypes.h>
00014
00016
00018
00029 #define AK_BEGIN_POPULATE_TABLE(theName) AK::Wwise::PopulateTableItem theName[] = {
00030
00043 #define AK_POP_ITEM(theID, theProp) {theID, theProp },
00044
00051 #define AK_END_POPULATE_TABLE() AK_POP_ITEM(0, NULL) };
00052
00054
00056
00057
00058 namespace AK
00059 {
00060
00061 namespace Wwise
00062 {
00064 enum AudioFileChannel
00065 {
00066 Channel_mono = 0,
00067 Channel_stereo = 1,
00068 Channel_mono_drop = 2,
00069 Channel_stereo_drop = 3,
00070 Channel_as_input = 4,
00071 Channel_mono_drop_right = 5,
00072 Channel_stereo_balance = 6,
00073 };
00074
00076 enum LicenseType
00077 {
00078 LicenseType_Trial = 1,
00079 LicenseType_Purchased,
00080 LicenseType_Academic
00081 };
00082
00084 enum LicenseStatus
00085 {
00086 LicenseStatus_Unlicensed,
00087 LicenseStatus_Expired,
00088 LicenseStatus_Valid
00089 };
00090
00092 enum Severity
00093 {
00094 Severity_Success = -1,
00095 Severity_Message,
00096 Severity_Warning,
00097 Severity_Error,
00098 Severity_FatalError,
00099
00100 };
00101
00104 class IWriteString
00105 {
00106 public:
00107 virtual void WriteString( LPCWSTR in_szString,
00108 int in_iStringLength ) = 0;
00109 };
00110
00112 class IReadOnlyProperties
00113 {
00114 public:
00115 virtual bool GetValue( LPCWSTR in_szPropertyName,
00116 VARIANT& out_rValue ) const = 0;
00117 };
00118
00119 class IReadWriteProperties : public IReadOnlyProperties
00120 {
00121 public:
00122 virtual bool SetValue( LPCWSTR in_szPropertyName,
00123 const VARIANT& in_rValue ) = 0;
00124 };
00125
00126 class IProgress
00127 {
00128 public:
00132 virtual void SetCurrentOperationName( LPCWSTR in_szOperationName ) = 0;
00133
00135 virtual void SetRange( DWORD in_dwMinValue, DWORD in_dwMaxValue ) = 0;
00136
00138 virtual void NotifyProgress( DWORD in_dwProgress ) = 0;
00139
00141 virtual bool IsCancelled() = 0;
00142
00145 virtual void ErrorMessage( const CString& in_rErrorText, Severity in_eSeverity = Severity_Warning ) = 0;
00146 };
00147
00149 class IDoubleProgress : public IProgress
00150 {
00151 public:
00155 virtual void SetSecondOperationName( LPCWSTR in_szOperationName ) = 0;
00156
00159 virtual void SetSecondRange( DWORD in_dwMinValue, DWORD in_dwMaxValue ) = 0;
00160
00162 virtual void NotifySecondProgress( DWORD in_dwProgress ) = 0;
00163 };
00164
00173 struct PopulateTableItem
00174 {
00175 UINT uiID;
00176 LPCWSTR pszProp;
00177 };
00178
00183 class IPluginBase
00184 {
00185 public:
00191 virtual void Destroy() = 0;
00192 };
00193
00195 enum ConversionResult
00196 {
00197 ConversionSuccess = 0,
00198 ConversionWarning = 1,
00199 ConversionFailed = 2,
00200 };
00201
00212 class IWriteData
00213 {
00214 public:
00219 virtual bool WriteData(
00220 LPCVOID in_pData,
00221 UINT32 in_cBytes,
00222 UINT32 & out_cWritten
00223 ) = 0;
00224
00240 virtual bool WritePascalString(
00241 LPCWSTR in_szString,
00242 UINT32 in_uiStringLength
00243 ) = 0;
00244
00255 virtual bool WriteUtf16String(
00256 LPCWSTR in_szString
00257 ) = 0;
00258
00261 virtual bool WriteUtf8String(
00262 const char * in_szString
00263 ) = 0;
00264
00267 virtual bool WriteBool(
00268 bool in_bBool
00269 ) = 0;
00270
00273 virtual bool WriteByte(
00274 BYTE in_bByte
00275 ) = 0;
00276
00279 virtual bool WriteInt16(
00280 UINT16 in_uiInt16
00281 ) = 0;
00282
00285 virtual bool WriteInt32(
00286 UINT32 in_uiInt32
00287 ) = 0;
00288
00291 virtual bool WriteInt64(
00292 UINT64 in_uiInt64
00293 ) = 0;
00294
00297 virtual bool WriteReal32(
00298 float in_fReal32
00299 ) = 0;
00300
00303 virtual bool WriteReal64(
00304 double in_dblReal64
00305 ) = 0;
00306 };
00307 }
00308 }
00309
00310 #endif // _WWISE_UTILITIES_H
介绍一下自己的项目。我们会竭力为您提供帮助。
来注册自己的项目,我们帮您快速入门,不带任何附加条件!
开始 Wwise 之旅