Warning: you were redirected to the latest documentation corresponding to your major release ( 2023.1.7.8574 ). Should you wish to access your specific version's documentation, please download the offline documentation from the Audiokinetic Launcher and check the Offline Documentation option in Wwise Authoring.
Go to the documentation of this file.
30Â
#ifndef _AK_WWISE_AUDIOPLUGIN_H
31Â
#define _AK_WWISE_AUDIOPLUGIN_H
45Â
class IXmlTextReader;
46Â
class IXmlTextWriter;
59Â
const GUID & in_guidPlatform,
61Â LPCWSTR in_szSourceFile,
62Â LPCWSTR in_szDestFile,
70Â
const GUID & in_guidPlatform,
95Â
const GUID & in_guidPlatform,
96Â LPCWSTR in_pszPropertyName,
97Â VARIANT & out_varProperty
103Â
const GUID & in_guidPlatform,
104Â LPCWSTR in_pszPropertyName,
105Â
const VARIANT & in_varProperty
111Â LPCWSTR in_pszPropertyName
149Â
const GUID & in_guidPlatform,
152Â UINT32 & out_uDaysToExpiry
157Â
const GUID & in_guidPlatform,
161Â UINT32 & out_uDaysToExpiry
169Â
const char* in_szUri,
170Â
const char* in_szArgs,
171Â
const char* in_szOptions,
173Â
char*& out_szResults,
196Â LPCWSTR in_pszListName,
197Â
unsigned int in_uiIndex,
211Â LPCWSTR in_pszListName,
212Â
unsigned int in_uiIndex
218Â LPCWSTR in_pszListName
242Â
unsigned int in_uiListIndex,
243Â LPWSTR out_pszListName,
244Â
unsigned int in_uiBufferSize
261Â LPCWSTR in_pszFilePathToImport,
262Â
unsigned int in_Index = 0,
263Â
bool in_bReplace =
false
268Â
unsigned int in_Index = 0
280Â LPWSTR out_pszFileName,
281Â
unsigned int in_uiBufferSize,
282Â
unsigned int in_Index = 0
288Â LPWSTR out_pszFileName,
289Â
unsigned int in_uiBufferSize,
290Â
unsigned int in_Index = 0
296Â LPWSTR out_pszFileName,
297Â
unsigned int in_uiBufferSize,
298Â
const GUID & in_guidPlatform,
299Â
unsigned int in_Index = 0
308Â LPWSTR out_pszDirectory,
309Â
unsigned int in_uiBufferSize
315Â LPWSTR out_pszDirectory,
316Â
unsigned int in_uiBufferSize,
317Â
const GUID & in_guidPlatform
412Â
virtual bool Load( AK::IXmlTextReader* in_pReader ) = 0;
416Â
virtual bool Save( AK::IXmlTextWriter* in_pWriter ) = 0;
431Â
const GUID & in_guidCurrentPlatform
439Â
const GUID & in_guidPlatform,
440Â LPCWSTR in_pszPropertyName
450Â
const GUID & in_guidPlatform,
451Â LPCWSTR in_pszPropertyName
460Â
unsigned int in_uiIndex,
481Â
const GUID & in_guidPlatform,
496Â
const GUID & in_guidPlatform,
516Â UINT & out_uiDialogID,
531Â LRESULT & out_lResult
544Â LPCWSTR in_pszPropertyName,
545Â LPWSTR out_pszDisplayName,
565Â LPCWSTR in_pszPropertyName,
566Â LPWSTR out_pszValuesName,
578Â LPCWSTR in_szLanguageCode
589Â
unsigned int in_uCount,
590Â
bool in_bNeedsByteSwap,
605Â
const GUID & in_guidPlatform,
607Â LPWSTR out_pszMessage,
608Â
unsigned int in_uiBufferSize
614Â
double& out_dblMinDuration,
615Â
double& out_dblMaxDuration
629Â
virtual bool Load( AK::IXmlTextReader* in_pReader ) {
return false; }
630Â
virtual bool Save( AK::IXmlTextWriter* in_pWriter ) {
return false; }
639Â
virtual bool WindowProc(
eDialog in_eDialog, HWND in_hWnd, UINT in_message, WPARAM in_wParam, LPARAM in_lParam, LRESULT & out_lResult ){
return false; }
640Â
virtual bool DisplayNameForProp( LPCWSTR in_pszPropertyName, LPWSTR out_pszDisplayName, UINT in_unCharCount )
const {
return false; }
641Â
virtual bool DisplayNamesForPropValues( LPCWSTR in_pszPropertyName, LPWSTR out_pszValuesName, UINT in_unCharCount )
const {
return false; }
642Â
virtual bool Help( HWND in_hWnd,
eDialog in_eDialog, LPCWSTR in_szLanguageCode )
const {
return false; }
646Â
virtual bool GetSourceDuration(
double& out_dblMinDuration,
double& out_dblMaxDuration )
const { out_dblMinDuration = 0.f; out_dblMaxDuration = FLT_MAX;
return false; }
657Â
AKASSERT(!
"g_pAKPluginList is NULL. Did you use the AK_STATIC_LINK_PLUGIN macro in your DLL?");
661Â HMODULE hLib = ::LoadLibrary(L
"WwiseSoundEngine.dll");
674Â
#define AK_MAX_OUTPUTDEVICEDESCRIPTOR 256
687Â
#ifndef WM_AK_PRIVATE_SHOW_HELP_TOPIC
688Â
#define WM_AK_PRIVATE_SHOW_HELP_TOPIC 0x4981
691Â
#endif // _AK_WWISE_AUDIOPLUGIN_H
virtual bool Load(AK::IXmlTextReader *in_pReader)
virtual IPluginPropertySet * CreateObject(LPCWSTR in_pszType)=0
virtual bool GetBankParameters(const GUID &in_guidPlatform, IWriteData *in_pDataWriter) const =0
virtual void NotifyMonitorData(AkTimeMs in_iTimeStamp, const AK::Wwise::IAudioPlugin::MonitorData *in_pData, unsigned int in_uDataSize, bool in_bNeedsByteSwap, bool in_bRealtime)
virtual bool WindowProc(eDialog in_eDialog, HWND in_hWnd, UINT in_message, WPARAM in_wParam, LPARAM in_lParam, LRESULT &out_lResult)
virtual bool DisplayNamesForPropValues(LPCWSTR in_pszPropertyName, LPWSTR out_pszValuesName, UINT in_unCharCount) const =0
virtual AK::Wwise::LicenseStatus GetLicenseStatus(const GUID &in_guidPlatform, AK::Wwise::Severity &out_eSeverity, LPWSTR out_pszMessage, unsigned int in_uiBufferSize)=0
AkInt32 AkTimeMs
Time in ms.
@ AK_Fail
The operation failed.
virtual bool RemoveObject(IPluginPropertySet *in_pPropertySet)=0
virtual const GUID & GetID() const =0
Obtain the unique identifier of the corresponding IWObject.
virtual void SetPluginPropertySet(IPluginPropertySet *in_pPSet)=0
AKRESULT RegisterWwisePlugin()
AK_DLLEXPORT AK::PluginRegistration * g_pAKPluginList
virtual IPluginMediaConverter * GetPluginMediaConverterInterface()
virtual HINSTANCE GetResourceHandle() const
virtual bool GetBankParameters(const GUID &in_guidPlatform, IWriteData *in_pDataWriter) const
virtual void InitToDefault()
AKRESULT
Standard function call result.
virtual bool DisplayNameForProp(LPCWSTR in_pszPropertyName, LPWSTR out_pszDisplayName, UINT in_unCharCount) const
virtual bool Help(HWND in_hWnd, eDialog in_eDialog, LPCWSTR in_szLanguageCode) const =0
virtual bool CanLogUndos()=0
virtual unsigned int GetListName(unsigned int in_uiListIndex, LPWSTR out_pszListName, unsigned int in_uiBufferSize) const =0
virtual bool CopyInto(IAudioPlugin *io_pWObject) const =0
virtual bool WindowProc(eDialog in_eDialog, HWND in_hWnd, UINT in_message, WPARAM in_wParam, LPARAM in_lParam, LRESULT &out_lResult)=0
ConversionResult
Conversion error code.
virtual IPluginMediaConverter * GetPluginMediaConverterInterface()=0
@ LicenseStatus_Valid
A license is found and is valid.
virtual AK::Wwise::LicenseStatus GetLicenseStatus(const GUID &, AK::Wwise::Severity &, LPWSTR, unsigned int in_uiBufferSize)
AkUInt32 idDevice
Display name of the device. Null terminated. Note that the name can't be more than 256 characters inc...
virtual bool PropertyHasRTPC(LPCWSTR in_pszPropertyName)=0
virtual void NotifyPropertyChanged(const GUID &in_guidPlatform, LPCWSTR in_pszPropertyName)=0
virtual void NotifyPluginMediaChanged()
Use this base class to quickly implement most plugin functions empty.
virtual bool GetValue(const GUID &in_guidPlatform, LPCWSTR in_pszPropertyName, VARIANT &out_varProperty)=0
NotifyInnerObjectOperation
Type of operation for the NotifyInnerObjectAddedRemoved function.
AKRESULT(CALLBACK * RegisterWwisePluginFn)(AK::PluginRegistration *in_pList)
virtual void NotifyInnerObjectAddedRemoved(IPluginPropertySet *in_pPSet, unsigned int in_uiIndex, NotifyInnerObjectOperation in_eOperation)=0
virtual IPluginPropertySet * GetObject(LPCWSTR in_pszListName, unsigned int in_uiIndex) const =0
virtual void WaapiCall(const char *in_szUri, const char *in_szArgs, const char *in_szOptions, AK::IAkPluginMemAlloc *in_pAlloc, char *&out_szResults, char *&out_szError) const =0
Find and call the specified procedure. Calls made using this function are always blocking.
virtual bool IsPlayable() const
#define AKASSERT(Condition)
virtual bool GetSourceDuration(double &out_dblMinDuration, double &out_dblMaxDuration) const =0
virtual void NotifyInnerObjectPropertyChanged(IPluginPropertySet *in_pPSet, const GUID &in_guidPlatform, LPCWSTR in_pszPropertyName)=0
virtual HINSTANCE GetResourceHandle() const =0
virtual bool GetDialog(eDialog in_eDialog, UINT &out_uiDialogID, PopulateTableItem *&out_pTable) const =0
virtual void InsertObject(LPCWSTR in_pszListName, unsigned int in_uiIndex, IPluginPropertySet *in_pPropertySet)=0
virtual void NotifyInternalDataChanged(AkPluginParamID in_idData, bool in_bMakeProjectDirty=true)=0
virtual BasePlatformID GetCurrentBasePlatform()=0
virtual void SetPluginPropertySet(IPluginPropertySet *in_pPSet)
virtual bool Load(AK::IXmlTextReader *in_pReader)=0
virtual GUID GetCurrentPlatform()=0
WCHAR name[AK_MAX_OUTPUTDEVICEDESCRIPTOR]
virtual bool DisplayNameForProp(LPCWSTR in_pszPropertyName, LPWSTR out_pszDisplayName, UINT in_unCharCount) const =0
virtual void NotifyCurrentPlatformChanged(const GUID &in_guidCurrentPlatform)=0
virtual bool SetValue(const GUID &in_guidPlatform, LPCWSTR in_pszPropertyName, const VARIANT &in_varProperty)=0
virtual bool Save(AK::IXmlTextWriter *in_pWriter)=0
virtual bool DisplayNamesForPropValues(LPCWSTR in_pszPropertyName, LPWSTR out_pszValuesName, UINT in_unCharCount) const
virtual GUID GetAuthoringPlaybackPlatform()=0
This function is called To retrieve the custom platform being used to run while in authoring.
virtual void SetPluginObjectStore(IPluginObjectStore *in_pObjectStore)
uint64_t AkUInt64
Unsigned 64-bit integer.
virtual void InitToDefault()=0
virtual bool Help(HWND in_hWnd, eDialog in_eDialog, LPCWSTR in_szLanguageCode) const
LicenseStatus
License status.
virtual bool GetSourceDuration(double &out_dblMinDuration, double &out_dblMaxDuration) const
virtual void NotifyPluginMediaChanged()=0
virtual AK::Wwise::IUndoManager * GetUndoManager()=0
virtual bool GetPluginData(const GUID &in_guidPlatform, AkPluginParamID in_idParam, IWriteData *in_pDataWriter) const =0
virtual bool IsPlayable() const =0
virtual void NotifyInnerObjectAddedRemoved(IPluginPropertySet *in_pPSet, unsigned int in_uiIndex, NotifyInnerObjectOperation in_eOperation)
virtual bool CopyInto(IAudioPlugin *io_pWObject) const
virtual bool Save(AK::IXmlTextWriter *in_pWriter)
virtual unsigned int GetListCount() const =0
virtual void GetAssetLicenseStatus(const GUID &in_guidPlatform, AkUInt32 in_uAssetID, AK::Wwise::LicenseType &out_eType, AK::Wwise::LicenseStatus &out_eStatus, UINT32 &out_uDaysToExpiry)=0
Obtain licensing status for a plug-in-specific asset ID. Refer to Managing Licenses for more informat...
#define AK_MAX_OUTPUTDEVICEDESCRIPTOR
Struct to be used with the function GetSinkPluginDevices to return devices.
virtual void NotifyPropertyChanged(const GUID &in_guidPlatform, LPCWSTR in_pszPropertyName)
uint32_t AkUInt32
Unsigned 32-bit integer.
AkInt16 AkPluginParamID
Source or effect plug-in parameter ID.
virtual void NotifyInnerObjectPropertyChanged(IPluginPropertySet *in_pPSet, const GUID &in_guidPlatform, LPCWSTR in_pszPropertyName)
virtual void DeleteObject(IPluginPropertySet *in_pPropertySet)=0
virtual void SetPluginObjectStore(IPluginObjectStore *in_pObjectStore)=0
virtual bool GetPluginData(const GUID &in_guidPlatform, AkPluginParamID in_idParam, IWriteData *in_pDataWriter) const
virtual unsigned int GetObjectCount(LPCWSTR in_pszListName) const =0
virtual bool GetDialog(eDialog in_eDialog, UINT &out_uiDialogID, PopulateTableItem *&out_pTable) const
virtual void GetLicenseStatus(const GUID &in_guidPlatform, AK::Wwise::LicenseType &out_eType, AK::Wwise::LicenseStatus &out_eStatus, UINT32 &out_uDaysToExpiry)=0
Obtain licensing status for the plug-in. Refer to Managing Licenses for more information.
virtual void SetPluginObjectMedia(IPluginObjectMedia *in_pObjectMedia)
virtual void SetPluginObjectMedia(IPluginObjectMedia *in_pObjectMedia)=0
virtual BasePlatformID GetDefaultNativeAuthoringPlaybackPlatform()=0
This function is called To retrieve the base platforms of the authoring tool.
Severity
Log message severity.
virtual void NotifyCurrentPlatformChanged(const GUID &in_guidCurrentPlatform)
virtual void NotifyMonitorData(AkTimeMs in_iTimeStamp, const MonitorData *in_pDataArray, unsigned int in_uCount, bool in_bNeedsByteSwap, bool in_bRealtime)=0
Tell us about your project. We're here to help.
Register your project and we'll help you get started with no strings attached!
Get started with Wwise