バージョン
00001 /******************************************************************************* 00002 The content of this file includes portions of the AUDIOKINETIC Wwise Technology 00003 released in source code form as part of the SDK installer package. 00004 00005 Commercial License Usage 00006 00007 Licensees holding valid commercial licenses to the AUDIOKINETIC Wwise Technology 00008 may use this file in accordance with the end user license agreement provided 00009 with the software or, alternatively, in accordance with the terms contained in a 00010 written agreement between you and Audiokinetic Inc. 00011 00012 Apache License Usage 00013 00014 Alternatively, this file may be used under the Apache License, Version 2.0 (the 00015 "Apache License"); you may not use this file except in compliance with the 00016 Apache License. You may obtain a copy of the Apache License at 00017 http://www.apache.org/licenses/LICENSE-2.0. 00018 00019 Unless required by applicable law or agreed to in writing, software distributed 00020 under the Apache License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES 00021 OR CONDITIONS OF ANY KIND, either express or implied. See the Apache License for 00022 the specific language governing permissions and limitations under the License. 00023 00024 Version: <VERSION> Build: <BUILDNUMBER> 00025 Copyright (c) <COPYRIGHTYEAR> Audiokinetic Inc. 00026 *******************************************************************************/ 00027 00031 00032 #ifndef _AK_SOUNDFRAME_SF_H 00033 #define _AK_SOUNDFRAME_SF_H 00034 00035 #include <wtypes.h> 00036 00037 #include "SFObjects.h" 00038 #include <AK/SoundEngine/Common/AkTypes.h> 00039 #include <AK/SoundEngine/Common/AkSoundEngine.h> 00040 00041 struct IDataObject; // OLE data object interface 00042 00046 #define MAX_MONITORING_MSG_SIZE 256 00047 00048 namespace AK 00049 { 00051 namespace SoundFrame 00052 { 00054 enum SoundBankContentTxtFileFormat 00055 { 00056 SoundBankContentTxtFileFormat_ANSI = 0, 00057 SoundBankContentTxtFileFormat_UNICODE = 1 00058 }; 00059 00061 struct SoundBankGenerationSettings 00062 { 00063 bool bUseReferenceLanguageAsStandIn; 00064 bool bAllowExceedingSize; 00065 bool bUseSoundbankNames; 00066 bool bGenerateHeaderFile; 00067 00068 bool bGenerateContentTxtFile; 00069 SoundBankContentTxtFileFormat eContentTxtFileFormat; 00070 00071 bool bGenerateXMLMetadata; 00072 bool bGenerateJSONMetadata; 00073 bool bGenerateMetadataFile; 00074 bool bGeneratePerBankMetadataFile; 00075 00076 bool bMedatadaIncludeGUID; 00077 bool bMedatadaIncludeMaxAttenuation; 00078 bool bMedatadaIncludeEstimatedDuration; 00079 }; 00080 00085 class ISoundFrame : public ISFRefCount 00086 { 00087 public: 00094 virtual bool Connect( 00095 DWORD in_dwProcessID = 0 00096 ) = 0; 00097 00100 virtual bool IsConnected() const = 0; 00101 00104 00105 00106 00115 virtual const WCHAR * GetCurrentProjectName() const = 0; 00116 00125 virtual GUID GetCurrentProjectID() const = 0; 00126 00135 virtual const WCHAR * GetCurrentProjectOriginalRoot() const = 0; 00136 00138 00141 00142 00156 virtual bool PlayEvents( 00157 const AkUniqueID * in_pEvents, 00158 long in_cEvents, 00159 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00160 ) = 0; 00161 00175 virtual bool PlayEvents( 00176 LPCWSTR * in_pszEvents, 00177 long in_cEvents, 00178 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00179 ) = 0; 00180 00186 virtual bool ExecuteActionOnEvent( 00187 AkUniqueID in_eventID, 00188 AK::SoundEngine::AkActionOnEventType in_ActionType, 00189 AkGameObjectID in_gameObjectID = AK_INVALID_GAME_OBJECT, 00190 AkTimeMs in_uTransitionDuration = 0, 00191 AkCurveInterpolation in_eFadeCurve = AkCurveInterpolation_Linear 00192 ) = 0; 00193 00198 virtual bool SeekOnEvent( 00199 AkUniqueID in_eventID, 00200 AkGameObjectID in_gameObjectID, 00201 AkTimeMs in_iPosition, 00202 bool in_bSeekToNearestMarker = false, 00203 AkPlayingID in_PlayingID = AK_INVALID_PLAYING_ID 00204 ) = 0; 00205 00210 virtual bool SeekOnEvent( 00211 AkUniqueID in_eventID, 00212 AkGameObjectID in_gameObjectID, 00213 AkReal32 in_fPercent, 00214 bool in_bSeekToNearestMarker = false, 00215 AkPlayingID in_PlayingID = AK_INVALID_PLAYING_ID 00216 ) = 0; 00217 00228 virtual bool SetPlayBackMode( 00229 bool in_bPlayback 00230 ) const = 0; 00231 00234 virtual bool GetCurrentState( 00235 AkStateGroupID in_stateGroupID, 00236 IState** out_ppCurrentState 00237 ) const = 0; 00238 00241 virtual bool GetCurrentState( 00242 LPCWSTR in_szStateGroupName, 00243 IState** out_ppCurrentState 00244 ) const = 0; 00245 00251 virtual bool SetCurrentState( 00252 AkStateGroupID in_stateGroupID, 00253 AkStateID in_currentStateID 00254 ) = 0; 00255 00261 virtual bool SetCurrentState( 00262 LPCWSTR in_szStateGroupName, 00263 LPCWSTR in_szCurrentStateName 00264 ) = 0; 00265 00268 virtual bool GetCurrentSwitch( 00269 AkSwitchGroupID in_switchGroupID, 00270 ISwitch** out_ppCurrentSwitch, 00271 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00272 ) const = 0; 00273 00276 virtual bool GetCurrentSwitch( 00277 LPCWSTR in_szSwitchGroupName, 00278 ISwitch** out_ppCurrentSwitch, 00279 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00280 ) const = 0; 00281 00287 virtual bool SetCurrentSwitch( 00288 AkSwitchGroupID in_switchGroupID, 00289 AkSwitchStateID in_currentSwitchID, 00290 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00291 ) = 0; 00292 00298 virtual bool SetCurrentSwitch( 00299 LPCWSTR in_szSwitchGroupName, 00300 LPCWSTR in_szCurrentSwitchName, 00301 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00302 ) = 0; 00303 00312 virtual bool RegisterGameObject( 00313 AkGameObjectID in_gameObjectID, 00314 LPCWSTR in_szGameObjectName = L"" 00315 ) = 0; 00316 00325 virtual bool UnregisterGameObject( 00326 AkGameObjectID in_gameObjectID 00327 ) = 0; 00328 00334 virtual bool SetRTPCValue( 00335 AkRtpcID in_gameParameterID, 00336 AkRtpcValue in_value, 00337 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00338 ) = 0; 00339 00346 virtual bool SetRTPCValue( 00347 LPCWSTR in_szGameParameterName, 00348 AkRtpcValue in_value, 00349 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00350 ) = 0; 00351 00358 virtual bool ResetRTPCValue( 00359 AkRtpcID in_gameParameterID, 00360 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00361 ) = 0; 00362 00369 virtual bool ResetRTPCValue( 00370 LPCWSTR in_szGameParameterName, 00371 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00372 ) = 0; 00373 00379 virtual bool PostTrigger( 00380 AkTriggerID in_triggerID, 00381 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00382 ) = 0; 00383 00389 virtual bool PostTrigger( 00390 LPCWSTR in_szTriggerName, 00391 AkGameObjectID in_gameObjectID = IGameObject::s_WwiseGameObject 00392 ) = 0; 00393 00399 virtual bool SetActiveListeners( 00400 AkGameObjectID in_gameObjectID, 00401 AkUInt32 in_uiListenerMask 00402 ) = 0; 00403 00410 virtual bool SetAttenuationScalingFactor( 00411 AkGameObjectID in_GameObjectID, 00412 AkReal32 in_fAttenuationScalingFactor 00413 ) = 0; 00414 00420 virtual bool SetPosition( 00421 AkGameObjectID in_gameObjectID, 00422 const AkSoundPosition& in_rPosition 00423 ) = 0; 00424 00430 virtual bool SetListenerPosition( 00431 const AkListenerPosition& in_rPosition, 00432 AkUInt32 in_uiIndex = 0 00433 ) = 0; 00434 00441 virtual bool SetMultiplePositions( 00442 AkGameObjectID in_GameObjectID, 00443 const AkSoundPosition * in_pPositions, 00444 AkUInt16 in_NumPositions, 00445 AK::SoundEngine::MultiPositionType in_eMultiPositionType = AK::SoundEngine::MultiPositionType_MultiDirections 00446 ) = 0; 00447 00453 virtual bool SetListenerScalingFactor( 00454 AkUInt32 in_uiIndex, 00455 AkReal32 in_fAttenuationScalingFactor 00456 ) = 0; 00457 00464 virtual bool SetListenerSpatialization( 00465 AkUInt32 in_uiIndex, 00466 bool in_bSpatialized, 00467 AkChannelConfig in_channelConfig, 00468 AkReal32 * in_pVolumeOffsets = NULL 00469 ) = 0; 00470 00478 virtual bool SetGameObjectAuxSendValues( 00479 AkGameObjectID in_gameObjectID, 00480 AkAuxSendValue* in_aAuxSendValues, 00481 00482 00483 AkUInt32 in_uNumSendValues 00484 00485 ) = 0; 00486 00494 virtual bool SetGameObjectOutputBusVolume( 00495 AkGameObjectID in_gameObjectID, 00496 AkReal32 in_fControlValue 00497 00498 ) = 0; 00499 00506 virtual bool SetObjectObstructionAndOcclusion( 00507 AkGameObjectID in_ObjectID, 00508 AkUInt32 in_uListener, 00509 AkReal32 in_fObstructionLevel, 00510 AkReal32 in_fOcclusionLevel 00511 ) = 0; 00512 00519 virtual bool PostMsgMonitor( 00520 LPCWSTR in_pszMessage 00521 00522 ) = 0; 00523 00526 virtual bool StopAll( 00527 AkGameObjectID in_GameObjID = AK_INVALID_GAME_OBJECT 00528 ) = 0; 00529 00533 virtual bool StopPlayingID( 00534 AkPlayingID in_playingID, 00535 AkTimeMs in_uTransitionDuration = 0, 00536 AkCurveInterpolation in_eFadeCurve = AkCurveInterpolation_Linear 00537 ) = 0; 00538 00540 00543 00544 00547 00548 00551 virtual bool GetEventList( 00552 IEventList ** out_ppEventList 00553 ) const = 0; 00554 00557 virtual bool GetEvent( 00558 AkUniqueID in_eventID, 00559 IEvent ** out_ppEvent 00560 ) const = 0; 00561 00564 virtual bool GetEvent( 00565 LPCWSTR in_pszEvent, 00566 IEvent ** out_ppEvent 00567 ) const = 0; 00568 00571 virtual bool GetEvents( 00572 const AkUniqueID * in_pEvents, 00573 long in_cEvents, 00574 IEventList ** out_ppEventList 00575 ) const = 0; 00576 00579 virtual bool GetEvents( 00580 LPCWSTR * in_pszEvents, 00581 long in_cEvents, 00582 IEventList ** out_ppEventList 00583 ) const = 0; 00584 00586 00589 00590 00593 virtual bool GetDialogueEventList( 00594 IDialogueEventList ** out_ppDialogueEventList 00595 ) const = 0; 00596 00599 virtual bool GetDialogueEvent( 00600 AkUniqueID in_dialogueEventID, 00601 IDialogueEvent ** out_ppDialogueEvent 00602 ) const = 0; 00603 00606 virtual bool GetDialogueEvent( 00607 LPCWSTR in_pszDialogueEvent, 00608 IDialogueEvent ** out_ppDialogueEvent 00609 ) const = 0; 00610 00613 virtual bool GetDialogueEvents( 00614 const AkUniqueID * in_pDialogueEvents, 00615 long in_cDialogueEvents, 00616 IDialogueEventList ** out_ppDialogueEventList 00617 ) const = 0; 00618 00621 virtual bool GetDialogueEvents( 00622 LPCWSTR * in_pszDialogueEvents, 00623 long in_cDialogueEvents, 00624 IDialogueEventList ** out_ppDialogueEventList 00625 ) const = 0; 00626 00628 00631 00632 00635 virtual bool GetSoundObject( 00636 AkUniqueID in_soundObjectID, 00637 ISoundObject ** out_ppSoundObject 00638 ) const = 0; 00639 00642 virtual bool GetSoundObjects( 00643 const AkUniqueID * in_pSoundObjects, 00644 long in_cSoundObjects, 00645 ISoundObjectList ** out_ppSoundObjectList 00646 ) const = 0; 00647 00649 00652 00653 00656 virtual bool GetStateGroupList( 00657 IStateGroupList ** out_ppStateGroupList 00658 ) const = 0; 00659 00662 virtual bool GetStateGroup( 00663 AkUniqueID in_stateGroupID, 00664 IStateGroup ** out_ppStateGroup 00665 ) const = 0; 00666 00669 virtual bool GetStateGroup( 00670 LPCWSTR in_pszStateGroup, 00671 IStateGroup ** out_ppStateGroup 00672 ) const = 0; 00673 00676 virtual bool GetStateGroups( 00677 const AkUniqueID * in_pStateGroups, 00678 long in_cStateGroups, 00679 IStateGroupList ** out_ppStateGroupList 00680 ) const = 0; 00681 00684 virtual bool GetStateGroups( 00685 LPCWSTR * in_pszStateGroups, 00686 long in_cStateGroups, 00687 IStateGroupList ** out_ppStateGroupList 00688 ) const = 0; 00689 00691 00694 00695 00698 virtual bool GetSwitchGroupList( 00699 ISwitchGroupList ** out_ppSwitchGroupList 00700 ) const = 0; 00701 00704 virtual bool GetSwitchGroup( 00705 AkUniqueID in_switchGroupID, 00706 ISwitchGroup ** out_ppSwitchGroup 00707 ) const = 0; 00708 00711 virtual bool GetSwitchGroup( 00712 LPCWSTR in_pszSwitchGroup, 00713 ISwitchGroup ** out_ppSwitchGroup 00714 ) const = 0; 00715 00718 virtual bool GetSwitchGroups( 00719 const AkUniqueID * in_pSwitchGroups, 00720 long in_cSwitchGroups, 00721 ISwitchGroupList ** out_ppSwitchGroupList 00722 ) const = 0; 00723 00726 virtual bool GetSwitchGroups( 00727 LPCWSTR * in_pszSwitchGroups, 00728 long in_cSwitchGroups, 00729 ISwitchGroupList ** out_ppSwitchGroupList 00730 ) const = 0; 00731 00733 00740 00741 00744 virtual bool GetGameParameterList( 00745 IGameParameterList ** out_ppGameParameterList 00746 ) const = 0; 00747 00750 virtual bool GetGameParameter( 00751 AkUniqueID in_gameParameterID, 00752 IGameParameter ** out_ppGameParameter 00753 ) const = 0; 00754 00757 virtual bool GetGameParameter( 00758 LPCWSTR in_pszGameParameter, 00759 IGameParameter ** out_ppGameParameter 00760 ) const = 0; 00761 00764 virtual bool GetGameParameters( 00765 const AkUniqueID * in_pGameParameters, 00766 long in_cGameParameters, 00767 IGameParameterList ** out_ppGameParameterList 00768 ) const = 0; 00769 00772 virtual bool GetGameParameters( 00773 LPCWSTR * in_pszGameParameters, 00774 long in_cGameParameters, 00775 IGameParameterList ** out_ppGameParameterList 00776 ) const = 0; 00777 00779 00782 virtual bool GetConversionSettingsList( 00783 IConversionSettingsList ** out_ppConversionSettingsList 00784 ) const = 0; 00785 00788 00789 00792 virtual bool GetTriggerList( 00793 ITriggerList ** out_ppTriggerList 00794 ) const = 0; 00795 00798 virtual bool GetTrigger( 00799 AkUniqueID in_triggerID, 00800 ITrigger ** out_ppTrigger 00801 ) const = 0; 00802 00805 virtual bool GetTrigger( 00806 LPCWSTR in_pszTrigger, 00807 ITrigger ** out_ppTrigger 00808 ) const = 0; 00809 00812 virtual bool GetTriggers( 00813 const AkUniqueID * in_pTriggers, 00814 long in_cTriggers, 00815 ITriggerList ** out_ppTriggerList 00816 ) const = 0; 00817 00820 virtual bool GetTriggers( 00821 LPCWSTR * in_pszTriggers, 00822 long in_cTriggers, 00823 ITriggerList ** out_ppTriggerList 00824 ) const = 0; 00825 00827 00836 00837 00840 virtual bool GetArgument( 00841 AkUniqueID in_ArgumentID, 00842 IArgument ** out_ppArgument 00843 ) const = 0; 00844 00847 virtual bool GetArguments( 00848 const AkUniqueID * in_pArguments, 00849 long in_cArguments, 00850 IArgumentList ** out_ppArgumentList 00851 ) const = 0; 00852 00854 00857 00858 00861 virtual bool GetAuxBusList( 00862 IAuxBusList ** out_ppAuxBusList 00863 ) const = 0; 00864 00867 virtual bool GetAuxBus( 00868 AkUniqueID in_AuxBusID, 00869 IAuxBus ** out_ppAuxBus 00870 ) const = 0; 00871 00874 virtual bool GetAuxBus( 00875 LPCWSTR in_pszAuxBus, 00876 IAuxBus ** out_ppAuxBus 00877 ) const = 0; 00878 00881 virtual bool GetAuxBus( 00882 const AkUniqueID * in_pAuxBus, 00883 long in_cAuxBus, 00884 IAuxBusList ** out_ppAuxBusList 00885 ) const = 0; 00886 00889 virtual bool GetAuxBus( 00890 LPCWSTR * in_pszAuxBus, 00891 long in_cAuxBus, 00892 IAuxBusList ** out_ppAuxBusList 00893 ) const = 0; 00894 00896 00899 00900 00903 virtual bool GetSoundBank( 00904 AkUniqueID in_SoundBankID, 00905 ISoundBank ** out_ppArgument 00906 ) const = 0; 00907 00910 virtual bool GetSoundBankList( 00911 ISoundBankList ** out_ppSoundBankList 00912 ) const = 0; 00913 00915 00918 00919 00930 virtual bool GetGameObjectList( 00931 IGameObjectList ** out_ppGameObjectList 00932 ) const = 0; 00933 00935 00938 00939 00942 virtual bool GetEventOriginalFileList( 00943 LPCWSTR in_pszEvent, 00944 IOriginalFileList ** out_ppOriginalFileList 00945 ) const = 0; 00946 00949 virtual bool GetDialogueEventOriginalFileList( 00950 LPCWSTR in_pszDialogueEvent, 00951 IOriginalFileList ** out_ppOriginalFileList 00952 ) const = 0; 00953 00955 00958 00959 00963 virtual bool EventHasVoiceContent( 00964 LPCWSTR in_pszEvent 00965 ) const = 0; 00966 00970 virtual bool DialogueEventHasVoiceContent( 00971 LPCWSTR in_pszDialogueEvent 00972 ) const = 0; 00973 00975 00977 00980 00981 00985 virtual bool ListenAttenuation( 00986 const AkUniqueID * in_pSoundObjects, 00987 long in_cSoundObjects 00988 ) = 0; 00989 00991 00994 00995 00997 enum DnDType 00998 { 00999 TypeUnknown = 0, 01000 TypeEvent = 1, 01001 TypeStates = 2, 01002 TypeSwitches = 3, 01003 TypeGameParameters = 4, 01004 TypeTriggers = 5, 01005 TypeAuxBus = 6, 01006 TypeDialogueEvent = 7, 01007 TypeSoundBank = 8 01008 }; 01009 01012 virtual DnDType GetDnDType( 01013 IDataObject * in_pDataObject 01014 ) = 0; 01015 01018 virtual bool ProcessEventDnD( 01019 IDataObject * in_pDataObject, 01020 IEventList ** out_ppEventList 01021 ) = 0; 01022 01025 virtual bool ProcessStateGroupDnD( 01026 IDataObject * in_pDataObject, 01027 IStateGroupList ** out_ppStateGroupList 01028 ) = 0; 01029 01032 virtual bool ProcessSwitchGroupDnD( 01033 IDataObject * in_pDataObject, 01034 ISwitchGroupList ** out_ppSwitchGroupList 01035 ) = 0; 01036 01039 virtual bool ProcessGameParameterDnD( 01040 IDataObject * in_pDataObject, 01041 IGameParameterList ** out_ppGameParameterList 01042 ) = 0; 01043 01046 virtual bool ProcessTriggerDnD( 01047 IDataObject * in_pDataObject, 01048 ITriggerList ** out_ppTriggerList 01049 ) = 0; 01050 01053 virtual bool ProcessAuxBusDnD( 01054 IDataObject * in_pDataObject, 01055 IAuxBusList ** out_ppAuxBusList 01056 ) = 0; 01057 01060 virtual bool ProcessDialogueEventDnD( 01061 IDataObject * in_pDataObject, 01062 IDialogueEventList ** out_ppDialogueEventList 01063 ) = 0; 01064 01067 virtual bool ProcessSoundBankDnD( 01068 IDataObject * in_pDataObject, 01069 ISoundBankList ** out_ppSoundBankList 01070 ) = 0; 01071 01073 01076 01077 01082 virtual bool ProcessDefinitionFiles( 01083 LPCWSTR * in_pszPaths, 01084 long in_cFiles 01085 ) = 0; 01086 01091 virtual bool GetSoundBankGenerationSettings( 01092 bool in_bUser, 01093 SoundBankGenerationSettings & out_settings 01094 ) = 0; 01095 01100 virtual bool GenerateSoundBanks( 01101 LPCWSTR * in_pszBanks, 01102 long in_cBanks, 01103 LPCWSTR * in_pszPlatforms, 01104 long in_cPlatforms, 01105 LPCWSTR * in_pszLanguages, 01106 long in_cLanguages, 01107 SoundBankGenerationSettings * in_pSettings = NULL 01108 ) = 0; 01109 01111 01116 virtual bool ConvertExternalSources( 01117 LPCWSTR * in_pszPlatforms, 01118 long in_cPlatforms, 01119 LPCWSTR * in_pszFileSourcesInput, 01120 long in_cFileSourcesInput, 01121 LPCWSTR * in_pszFileSourcesOutput, 01122 long in_cFileSourcesOutput 01123 ) = 0; 01124 01126 enum ShowLocation 01127 { 01128 ShowLocation_Editor = 1, 01129 ShowLocation_MultiEditor, 01130 ShowLocation_ListView, 01131 ShowLocation_ReferenceView, 01132 ShowLocation_SchematicView, 01133 ShowLocation_ProjectExplorer0, 01134 ShowLocation_ProjectExplorer1, 01135 ShowLocation_ProjectExplorer2, 01136 ShowLocation_ProjectExplorer3, 01137 ShowLocation_ProjectExplorer4, 01138 ShowLocation_Transport 01139 }; 01140 01143 virtual bool ShowWwiseObject( 01144 const GUID* in_pGuids, 01145 long in_cGuids, 01146 ShowLocation in_eLocation 01147 ) = 0; 01148 01150 01153 01154 01160 virtual bool GetAkUniqueID( 01161 const GUID& in_guid, 01162 AkUniqueID& out_uniqueID 01163 ) const = 0; 01164 01167 virtual bool GetWwiseObjectPath( 01168 const AK::SoundFrame::ISFObject* in_pObject, 01169 const AK::SoundFrame::ISFObject* in_pParent, 01170 LPWSTR out_szBuffer, 01171 long in_lLength 01172 ) const = 0; 01173 01175 }; 01176 01180 class IClient 01181 { 01182 public: 01184 enum Notif 01185 { 01186 Notif_Added, 01187 Notif_Removed, 01188 Notif_Changed, 01189 Notif_Reset, 01190 Notif_Push 01191 }; 01192 01194 virtual void OnConnect( 01195 bool in_bConnect 01196 ) = 0; 01197 01199 virtual void OnEventNotif( 01200 Notif in_eNotif, 01201 AkUniqueID in_eventID 01202 ) = 0; 01203 01208 virtual void OnDialogueEventNotif( 01209 Notif in_eNotif, 01210 AkUniqueID in_dialogueEventID 01211 ) = 0; 01212 01214 virtual void OnSoundObjectNotif( 01215 Notif in_eNotif, 01216 AkUniqueID in_soundObjectID 01217 ) = 0; 01218 01224 virtual void OnStatesNotif( 01225 Notif in_eNotif, 01226 AkUniqueID in_stateGroupID 01227 ) = 0; 01228 01237 virtual void OnSwitchesNotif( 01238 Notif in_eNotif, 01239 AkUniqueID in_switchGroupID 01240 ) = 0; 01241 01243 virtual void OnGameParametersNotif( 01244 Notif in_eNotif, 01245 AkUniqueID in_gameParameterID 01246 ) = 0; 01247 01249 virtual void OnTriggersNotif( 01250 Notif in_eNotif, 01251 AkUniqueID in_triggerID 01252 ) = 0; 01253 01259 virtual void OnArgumentsNotif( 01260 Notif in_eNotif, 01261 AkUniqueID in_argumentID 01262 ) = 0; 01263 01265 virtual void OnAuxBusNotif( 01266 Notif in_eNotif, 01267 AkUniqueID in_AuxBusID 01268 ) = 0; 01269 01271 virtual void OnSoundBankNotif( 01272 Notif in_eNotif, 01273 AkUniqueID in_AuxBusID 01274 ) = 0; 01275 01284 virtual void OnGameObjectsNotif( 01285 Notif in_eNotif, 01286 AkGameObjectID in_gameObjectID 01287 ) = 0; 01288 }; 01289 01292 bool Create( 01293 IClient * in_pClient, 01294 ISoundFrame ** out_ppSoundFrame 01295 ); 01296 } 01297 } 01298 01299 #endif // _AK_SOUNDFRAME_SF_H