waapi.ts 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469
  1. /*
  2. The content of this file includes portions of the AUDIOKINETIC Wwise Technology
  3. released in source code form as part of the SDK installer package.
  4. Commercial License Usage
  5. Licensees holding valid commercial licenses to the AUDIOKINETIC Wwise Technology
  6. may use this file in accordance with the end user license agreement provided
  7. with the software or, alternatively, in accordance with the terms contained in a
  8. written agreement between you and Audiokinetic Inc.
  9. Apache License Usage
  10. Alternatively, this file may be used under the Apache License, Version 2.0 (the
  11. "Apache License"); you may not use this file except in compliance with the
  12. Apache License. You may obtain a copy of the Apache License at
  13. http://www.apache.org/licenses/LICENSE-2.0.
  14. Unless required by applicable law or agreed to in writing, software distributed
  15. under the Apache License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
  16. OR CONDITIONS OF ANY KIND, either express or implied. See the Apache License for
  17. the specific language governing permissions and limitations under the License.
  18. Copyright (c) 2023 Audiokinetic Inc.
  19. */
  20. export const ak = {
  21. soundengine: {
  22. /** Executes an action on all nodes that are referenced in the specified event in a Play action. See <tt>AK::SoundEngine::ExecuteActionOnEvent</tt>. */
  23. executeActionOnEvent: "ak.soundengine.executeActionOnEvent",
  24. /** Gets the current state of a State Group. When using setState just prior to getState, allow a brief delay (no more than 10ms) for the information to update in the sound engine. */
  25. getState: "ak.soundengine.getState",
  26. /** Gets the current state of a Switch Group for a given Game Object. */
  27. getSwitch: "ak.soundengine.getSwitch",
  28. /** Load a SoundBank. See <tt>AK::SoundEngine::LoadBank</tt>. */
  29. loadBank: "ak.soundengine.loadBank",
  30. /** Asynchronously post an Event to the sound engine (by event ID). See <tt>AK::SoundEngine::PostEvent</tt>. */
  31. postEvent: "ak.soundengine.postEvent",
  32. /** Display a message in the Profiler's Capture Log view. */
  33. postMsgMonitor: "ak.soundengine.postMsgMonitor",
  34. /** Posts the specified Trigger. See <tt>AK::SoundEngine::PostTrigger</tt>. */
  35. postTrigger: "ak.soundengine.postTrigger",
  36. /** Register a game object. Registering a game object twice does nothing. Unregistering it once unregisters it no matter how many times it has been registered. See <tt>AK::SoundEngine::RegisterGameObj</tt>. */
  37. registerGameObj: "ak.soundengine.registerGameObj",
  38. /** Resets the value of a real-time parameter control to its default value, as specified in the Wwise project. See <tt>AK::SoundEngine::ResetRTPCValue</tt>. */
  39. resetRTPCValue: "ak.soundengine.resetRTPCValue",
  40. /** Seeks inside all playing objects that are referenced in Play Actions of the specified Event. See <tt>AK::SoundEngine::SeekOnEvent</tt>. */
  41. seekOnEvent: "ak.soundengine.seekOnEvent",
  42. /** Sets the default active listeners for all subsequent game objects that are registered. See <tt>AK::SoundEngine::SetDefaultListeners</tt>. */
  43. setDefaultListeners: "ak.soundengine.setDefaultListeners",
  44. /** Sets the Auxiliary Busses to route the specified game object. See <tt>AK::SoundEngine::SetGameObjectAuxSendValues</tt>. */
  45. setGameObjectAuxSendValues: "ak.soundengine.setGameObjectAuxSendValues",
  46. /** Set the output bus volume (direct) to be used for the specified game object. See <tt>AK::SoundEngine::SetGameObjectOutputBusVolume</tt>. */
  47. setGameObjectOutputBusVolume: "ak.soundengine.setGameObjectOutputBusVolume",
  48. /** Sets a listener's spatialization parameters. This lets you define listener-specific volume offsets for each audio channel. See <tt>AK::SoundEngine::SetListenerSpatialization</tt>. */
  49. setListenerSpatialization: "ak.soundengine.setListenerSpatialization",
  50. /** Sets a single game object's active listeners. By default, all new game objects have no listeners active, but this behavior can be overridden with <tt>SetDefaultListeners()</tt>. Inactive listeners are not computed. See <tt>AK::SoundEngine::SetListeners</tt>. */
  51. setListeners: "ak.soundengine.setListeners",
  52. /** Sets multiple positions for a single game object. Setting multiple positions for a single game object is a way to simulate multiple emission sources while using the resources of only one voice. This can be used to simulate wall openings, area sounds, or multiple objects emitting the same sound in the same area. See <tt>AK::SoundEngine::SetMultiplePositions</tt>. */
  53. setMultiplePositions: "ak.soundengine.setMultiplePositions",
  54. /** Set a game object's obstruction and occlusion levels. This function is used to affect how an object should be heard by a specific listener. See <tt>AK::SoundEngine::SetObjectObstructionAndOcclusion</tt>. */
  55. setObjectObstructionAndOcclusion: "ak.soundengine.setObjectObstructionAndOcclusion",
  56. /** Sets the position of a game object. See <tt>AK::SoundEngine::SetPosition</tt>. */
  57. setPosition: "ak.soundengine.setPosition",
  58. /** Sets the value of a real-time parameter control. See <tt>AK::SoundEngine::SetRTPCValue</tt>. */
  59. setRTPCValue: "ak.soundengine.setRTPCValue",
  60. /** Sets the scaling factor of a game object. You can modify the attenuation computations on this game object to simulate sounds with a larger or smaller affected areas. See <tt>AK::SoundEngine::SetScalingFactor</tt>. */
  61. setScalingFactor: "ak.soundengine.setScalingFactor",
  62. /** Sets the State of a State Group. See <tt>AK::SoundEngine::SetState</tt>. */
  63. setState: "ak.soundengine.setState",
  64. /** Sets the State of a Switch Group. See <tt>AK::SoundEngine::SetSwitch</tt>. */
  65. setSwitch: "ak.soundengine.setSwitch",
  66. /** Stop playing the current content associated to the specified game object ID. If no game object is specified, all sounds are stopped. See <tt>AK::SoundEngine::StopAll</tt>. */
  67. stopAll: "ak.soundengine.stopAll",
  68. /** Stops the current content, associated to the specified playing ID, from playing. See <tt>AK::SoundEngine::StopPlayingID</tt>. */
  69. stopPlayingID: "ak.soundengine.stopPlayingID",
  70. /** Unload a SoundBank. See <tt>AK::SoundEngine::UnloadBank</tt>. */
  71. unloadBank: "ak.soundengine.unloadBank",
  72. /** Unregisters a game object. Registering a game object twice does nothing. Unregistering it once unregisters it no matter how many times it has been registered. Unregistering a game object while it is in use is allowed, but the control over the parameters of this game object is lost. For example, say a sound associated with this game object is a 3D moving sound. It stops moving when the game object is unregistered, and there is no way to regain control over the game object. See <tt>AK::SoundEngine::UnregisterGameObj</tt>. */
  73. unregisterGameObj: "ak.soundengine.unregisterGameObj"
  74. },
  75. wwise: {
  76. cli: {
  77. /** Adds a new platform to a project. The platform must not already exist. */
  78. addNewPlatform: "ak.wwise.cli.addNewPlatform",
  79. /** External sources conversion. Converts the external sources files for the specified project. Optionally, additional WSOURCES can be specified. External Sources are a special type of source that you can put in a sound object in Wwise. It indicates that the real sound data will be provided at runtime. While external source conversion can be triggered by SoundBank generation, this operation can be used to process sources not contained in the Wwise Project. Refer to \ref integrating_external_sources. */
  80. convertExternalSource: "ak.wwise.cli.convertExternalSource",
  81. /** Creates a blank new project. The project must not already exist. If the directory does not exist, it is created. */
  82. createNewProject: "ak.wwise.cli.createNewProject",
  83. /** Dump the objects model of a project as a JSON file. */
  84. dumpObjects: "ak.wwise.cli.dumpObjects",
  85. /** Execute a Lua script. Optionally, specify additional Lua search paths, additional modules, and additional Lua scripts to load prior to the main script. The script can return a value. All arguments will be passed to the Lua script in the "wa_args" global variable. */
  86. executeLuaScript: "ak.wwise.cli.executeLuaScript",
  87. /** SoundBank generation. SoundBank generation is performed according to the settings stored in the project. User SoundBanks Settings are normally ignored when SoundBank generation is launched from the command line. However, when using the Source Control for generated SoundBanks, the User Project Settings are loaded for the Source Control settings. Also, some of these settings can be overridden from the command line. */
  88. generateSoundbank: "ak.wwise.cli.generateSoundbank",
  89. /** Migrates and saves the project. */
  90. migrate: "ak.wwise.cli.migrate",
  91. /** Moves the project's media IDs from its work units (.wwu) to a single file, <project-name>.mediaid. This command forces a save of all the project's work units. */
  92. moveMediaIdsToSingleFile: "ak.wwise.cli.moveMediaIdsToSingleFile",
  93. /** Moves the project's media IDs from a single xml file <project-name>.mediaid to its work units (.wwu). This command forces a save of all the project's work units. */
  94. moveMediaIdsToWorkUnits: "ak.wwise.cli.moveMediaIdsToWorkUnits",
  95. /** Imports a tab-delimited file to create and modify different object hierarchies. The project is automatically migrated (if required). It is also automatically saved following the import. */
  96. tabDelimitedImport: "ak.wwise.cli.tabDelimitedImport",
  97. /** Loads the project and updates the contents of <project-name>.mediaid, if it exists. */
  98. updateMediaIdsInSingleFile: "ak.wwise.cli.updateMediaIdsInSingleFile",
  99. /** Loads the project and does nothing else. This is useful to see the log for verification purposes without actually migrating and saving. */
  100. verify: "ak.wwise.cli.verify",
  101. /** Starts a command-line Wwise Authoring API server, to which client applications, using the Wwise Authoring API, can connect. */
  102. waapiServer: "ak.wwise.cli.waapiServer"
  103. },
  104. console: {
  105. project: {
  106. /** Closes the current project. This operation is synchronous. */
  107. close: "ak.wwise.console.project.close",
  108. /** Creates, saves and opens new empty project, specified by path and platform. The project has no factory setting WorkUnit. This operation is synchronous. */
  109. create: "ak.wwise.console.project.create",
  110. /** Opens a project, specified by path. This operation is synchronous. */
  111. open: "ak.wwise.console.project.open"
  112. }
  113. },
  114. core: {
  115. audio: {
  116. /** Creates Wwise objects and imports audio files. This function does not return an error when something fails during the import process, please refer to the log for the result of each import command. This function uses the same importation processor available through the Tab Delimited import in the Audio File Importer. The function returns an array of all objects created, replaced or re-used. Use the options to specify how the objects are returned. For more information, refer to \ref waapi_import. */
  117. import_: "ak.wwise.core.audio.import",
  118. /** Creates Wwise objects and imports audio files. This function does not return an error when something fails during the import process, please refer to the log for the result of each import command. This function uses the same importation processor available through the Tab Delimited import in the Audio File Importer. The function returns an array of all objects created, replaced or re-used. Use the options to specify how the objects are returned. For more information, refer to \ref waapi_import. */
  119. import: "ak.wwise.core.audio.import",
  120. /** Scripted object creation and audio file import from a tab-delimited file. */
  121. importTabDelimited: "ak.wwise.core.audio.importTabDelimited",
  122. /** Sent at the end of an import operation. */
  123. imported: "ak.wwise.core.audio.imported",
  124. /** Mutes an object. */
  125. mute: "ak.wwise.core.audio.mute",
  126. /** Unmute all muted objects. */
  127. resetMute: "ak.wwise.core.audio.resetMute",
  128. /** Unsolo all soloed objects. */
  129. resetSolo: "ak.wwise.core.audio.resetSolo",
  130. /** Solos an object. */
  131. solo: "ak.wwise.core.audio.solo"
  132. },
  133. audioSourcePeaks: {
  134. /** Gets the min/max peak pairs, in the given region of an audio source, as a collection of binary strings (one per channel). The strings are base-64 encoded, 16-bit signed int arrays, with min and max values being interleaved. If getCrossChannelPeaks is true, only one binary string represents the peaks across all channels globally. */
  135. getMinMaxPeaksInRegion: "ak.wwise.core.audioSourcePeaks.getMinMaxPeaksInRegion",
  136. /** Gets the min/max peak pairs in the entire trimmed region of an audio source, for each channel, as an array of binary strings (one per channel). The strings are base-64 encoded, 16-bit signed int arrays, with min and max values being interleaved. If getCrossChannelPeaks is true, there is only one binary string representing peaks across all channels globally. */
  137. getMinMaxPeaksInTrimmedRegion: "ak.wwise.core.audioSourcePeaks.getMinMaxPeaksInTrimmedRegion"
  138. },
  139. /** Execute a Lua script. Optionally, specify additional Lua search paths, additional modules, and additional Lua scripts to load prior to the main script. The script can return a value. All arguments will be passed to the Lua script in the "wa_args" global variable. */
  140. executeLuaScript: "ak.wwise.core.executeLuaScript",
  141. /** Retrieve global Wwise information. */
  142. getInfo: "ak.wwise.core.getInfo",
  143. /** Retrieve information about the current project opened, including platforms, languages and project directories. */
  144. getProjectInfo: "ak.wwise.core.getProjectInfo",
  145. log: {
  146. /** Adds a new item to the logs on the specified channel. */
  147. addItem: "ak.wwise.core.log.addItem",
  148. /** Clears the logs on the specified channel. */
  149. clear: "ak.wwise.core.log.clear",
  150. /** Retrieves the latest log for a specific channel. Refer to \ref ak_wwise_core_log_itemadded to be notified when an item is added to the log. The log is empty when used in WwiseConsole. */
  151. get: "ak.wwise.core.log.get",
  152. /** Sent when an item is added to the log. This could be used to retrieve items added to the SoundBank generation log. To retrieve the complete log, refer to \ref ak_wwise_core_log_get. */
  153. itemAdded: "ak.wwise.core.log.itemAdded"
  154. },
  155. object: {
  156. /** Sent when an attenuation curve is changed. */
  157. attenuationCurveChanged: "ak.wwise.core.object.attenuationCurveChanged",
  158. /** Sent when an attenuation curve's link/unlink is changed. */
  159. attenuationCurveLinkChanged: "ak.wwise.core.object.attenuationCurveLinkChanged",
  160. /** Sent when an object is added as a child to another object. */
  161. childAdded: "ak.wwise.core.object.childAdded",
  162. /** Sent when an object is removed from the children of another object. */
  163. childRemoved: "ak.wwise.core.object.childRemoved",
  164. /** Copies an object to the given parent. Note that if a Work Unit is copied, the operation cannot be undone and the project will be saved. */
  165. copy: "ak.wwise.core.object.copy",
  166. /** Creates an object of type 'type', as a child of 'parent'. Refer to \ref waapi_import for more information about creating objects. Also refer to \ref ak_wwise_core_audio_import to import audio files to Wwise. To create Effect or Source plug-ins, use \ref ak_wwise_core_object_set, and refer to \ref wobjects_index for the classId. */
  167. create: "ak.wwise.core.object.create",
  168. /** Sent when an object is created. */
  169. created: "ak.wwise.core.object.created",
  170. /** Sent when one or many curves are changed. */
  171. curveChanged: "ak.wwise.core.object.curveChanged",
  172. /** Deletes the specified object. Note that if a Work Unit is deleted, the operation cannot be undone and the project will be saved. */
  173. delete_: "ak.wwise.core.object.delete",
  174. /** Deletes the specified object. Note that if a Work Unit is deleted, the operation cannot be undone and the project will be saved. */
  175. delete: "ak.wwise.core.object.delete",
  176. /** Compares properties and lists of the source object with those in the target object. */
  177. diff: "ak.wwise.core.object.diff",
  178. /** Performs a query and returns the data, as specified in the options, for each object in the query result. The query can specify either a 'waql' argument or a 'from' argument with an optional 'transform' argument. Refer to \ref waql_introduction or \ref waapi_query for more information. Refer to \ref waapi_query_return to learn about options. */
  179. get: "ak.wwise.core.object.get",
  180. /** Gets the specified attenuation curve for a given attenuation object. */
  181. getAttenuationCurve: "ak.wwise.core.object.getAttenuationCurve",
  182. /** Retrieves the list of property and reference names for an object. */
  183. getPropertyAndReferenceNames: "ak.wwise.core.object.getPropertyAndReferenceNames",
  184. /** Retrieves information about an object property. Note that this function does not return the value of a property. To retrieve the value of a property, refer to \ref ak_wwise_core_object_get and \ref waapi_query_return. */
  185. getPropertyInfo: "ak.wwise.core.object.getPropertyInfo",
  186. /**
  187. * Retrieves the list of property and reference names for an object.
  188. * \deprecated in favor of ak.wwise.core.object.getPropertyAndReferenceNames
  189. */
  190. getPropertyNames: "ak.wwise.core.object.getPropertyNames",
  191. /** Retrieves the list of all object types registered in Wwise's object model. This function returns the equivalent of \ref wobjects_index . */
  192. getTypes: "ak.wwise.core.object.getTypes",
  193. /** Indicates whether a property, reference, or object list is bound to a particular platform or to all platforms. */
  194. isLinked: "ak.wwise.core.object.isLinked",
  195. /** Returns true if a property is enabled based on the values of the properties it depends on. */
  196. isPropertyEnabled: "ak.wwise.core.object.isPropertyEnabled",
  197. /** Moves an object to the given parent. Returns the moved object. */
  198. move: "ak.wwise.core.object.move",
  199. /** Sent when an object is renamed. Publishes the renamed object. */
  200. nameChanged: "ak.wwise.core.object.nameChanged",
  201. /** Sent when the object's notes are changed. */
  202. notesChanged: "ak.wwise.core.object.notesChanged",
  203. /** Pastes properties, references and lists from one object to any number of target objects. Only those properties, references and lists which differ between source and target are pasted. Refer to \ref wobjects_index for more information on the properties, references and lists available on each object type. */
  204. pasteProperties: "ak.wwise.core.object.pasteProperties",
  205. /** Sent following an object's deletion. */
  206. postDeleted: "ak.wwise.core.object.postDeleted",
  207. /** Sent prior to an object's deletion. */
  208. preDeleted: "ak.wwise.core.object.preDeleted",
  209. /** Sent when the watched property of an object changes. */
  210. propertyChanged: "ak.wwise.core.object.propertyChanged",
  211. /** Sent when an object reference is changed. */
  212. referenceChanged: "ak.wwise.core.object.referenceChanged",
  213. /** Allows for batch processing of the following operations: Object creation in a child hierarchy, Object creation in a list, Setting name, notes, properties and references. Refer to \ref waapi_import for more information about creating objects. Also refer to \ref ak_wwise_core_audio_import to import audio files to Wwise. */
  214. set: "ak.wwise.core.object.set",
  215. /** Sets the specified attenuation curve for a given attenuation object. */
  216. setAttenuationCurve: "ak.wwise.core.object.setAttenuationCurve",
  217. /** Link or unlink a property/reference or object list to a particular platform. */
  218. setLinked: "ak.wwise.core.object.setLinked",
  219. /** Renames an object. */
  220. setName: "ak.wwise.core.object.setName",
  221. /** Sets the object's notes. */
  222. setNotes: "ak.wwise.core.object.setNotes",
  223. /** Sets a property value of an object for a specific platform. Refer to \ref wobjects_index for more information on the properties available on each object type. Refer to \ref ak_wwise_core_object_setreference to set a reference to an object. Refer to \ref ak_wwise_core_object_get to obtain the value of a property for an object. */
  224. setProperty: "ak.wwise.core.object.setProperty",
  225. /** Sets the randomizer values of a property of an object for a specific platform. Refer to \ref wobjects_index for more information on the properties available on each object type. */
  226. setRandomizer: "ak.wwise.core.object.setRandomizer",
  227. /** Sets an object's reference value. Refer to \ref wobjects_index for more information on the references available on each object type. */
  228. setReference: "ak.wwise.core.object.setReference",
  229. /** Sets the State Group objects associated with an object. Note, this will remove any previously associated State Group. */
  230. setStateGroups: "ak.wwise.core.object.setStateGroups",
  231. /** Set the state properties of an object. Note, this will remove any previous state property, including the default ones. */
  232. setStateProperties: "ak.wwise.core.object.setStateProperties"
  233. },
  234. plugin: {
  235. /**
  236. * Retrieves the list of all object types registered in Wwise's object model. This function returns the equivalent of \ref wobjects_index .
  237. * \deprecated in favor of ak.wwise.core.object.getTypes
  238. */
  239. getList: "ak.wwise.core.plugin.getList",
  240. /**
  241. * Retrieves the list of property and reference names for an object.
  242. * \deprecated in favor of ak.wwise.core.object.getPropertyAndReferenceNames
  243. */
  244. getProperties: "ak.wwise.core.plugin.getProperties",
  245. /**
  246. * Retrieves information about an object property. Note that this function does not return the value of a property. To retrieve the value of a property, refer to \ref ak_wwise_core_object_get and \ref waapi_query_return.
  247. * \deprecated in favor of ak.wwise.core.object.getPropertyInfo
  248. */
  249. getProperty: "ak.wwise.core.plugin.getProperty"
  250. },
  251. profiler: {
  252. captureLog: {
  253. /** Sent when a new entry is added to the capture log. Note that all entries are being sent. No filtering is applied as opposed to the Capture Log view. */
  254. itemAdded: "ak.wwise.core.profiler.captureLog.itemAdded"
  255. },
  256. /** Specifies the type of data you want to capture. Overrides the user's profiler settings. */
  257. enableProfilerData: "ak.wwise.core.profiler.enableProfilerData",
  258. /** Sent when a game object has been registered. */
  259. gameObjectRegistered: "ak.wwise.core.profiler.gameObjectRegistered",
  260. /** Sent when the game objects have been reset, such as closing a connection to a game while profiling. */
  261. gameObjectReset: "ak.wwise.core.profiler.gameObjectReset",
  262. /** Sent when a game object has been unregistered. */
  263. gameObjectUnregistered: "ak.wwise.core.profiler.gameObjectUnregistered",
  264. /** Retrieves the Audio Objects at a specific profiler capture time. */
  265. getAudioObjects: "ak.wwise.core.profiler.getAudioObjects",
  266. /** Retrieves the busses at a specific profiler capture time. */
  267. getBusses: "ak.wwise.core.profiler.getBusses",
  268. /** Retrieves CPU usage statistics at a specific profiler capture time. This data can also be found in the Advanced Profiler, under the CPU tab. To ensure the CPU data is received, refer to \ref ak_wwise_core_profiler_enableprofilerdata. The returned data includes "Inclusive" and "Exclusive" values, where "Inclusive" refers to the time spent in the element plus the time spent in any called elements, and "Exclusive" values pertain to execution only within the element itself. */
  269. getCpuUsage: "ak.wwise.core.profiler.getCpuUsage",
  270. /** Returns the current time of the specified profiler cursor, in milliseconds. */
  271. getCursorTime: "ak.wwise.core.profiler.getCursorTime",
  272. /** Retrieves the game objects at a specific profiler capture time. */
  273. getGameObjects: "ak.wwise.core.profiler.getGameObjects",
  274. /** Retrieves the loaded media at a specific profiler capture time. This data can also be found in the Advanced Profiler, under the Loaded Media tab. To ensure the Loaded Media data is received, refer to \ref ak_wwise_core_profiler_enableprofilerdata. */
  275. getLoadedMedia: "ak.wwise.core.profiler.getLoadedMedia",
  276. /** Retrieves the Performance Monitor statistics at a specific profiler capture time. Refer to \ref globalcountersids for the available counters. */
  277. getPerformanceMonitor: "ak.wwise.core.profiler.getPerformanceMonitor",
  278. /** Retrieves active RTPCs at a specific profiler capture time. */
  279. getRTPCs: "ak.wwise.core.profiler.getRTPCs",
  280. /** Retrieves the streaming media at a specific profiler capture time. This data can also be found in the Advanced Profiler, under the Streams tab. To ensure the Streams data is received, refer to \ref ak_wwise_core_profiler_enableprofilerdata. */
  281. getStreamedMedia: "ak.wwise.core.profiler.getStreamedMedia",
  282. /** Retrieves all parameters affecting voice volume, highpass and lowpass for a voice path, resolved from pipeline IDs. */
  283. getVoiceContributions: "ak.wwise.core.profiler.getVoiceContributions",
  284. /** Retrieves the voices at a specific profiler capture time. */
  285. getVoices: "ak.wwise.core.profiler.getVoices",
  286. /** Saves profiler as a .prof file according to the given file path. */
  287. saveCapture: "ak.wwise.core.profiler.saveCapture",
  288. /** Starts the profiler capture and returns the time at the beginning of the capture, in milliseconds. */
  289. startCapture: "ak.wwise.core.profiler.startCapture",
  290. /** Sent when a state group state has been changed. This subscription does not require the profiler capture log to be started. */
  291. stateChanged: "ak.wwise.core.profiler.stateChanged",
  292. /** Stops the profiler capture and returns the time at the end of the capture, in milliseconds. */
  293. stopCapture: "ak.wwise.core.profiler.stopCapture",
  294. /** Sent when a switch group state has been changed. This function does not require the profiler capture log to be started. */
  295. switchChanged: "ak.wwise.core.profiler.switchChanged"
  296. },
  297. project: {
  298. /** Sent when the project has been successfully loaded. */
  299. loaded: "ak.wwise.core.project.loaded",
  300. /** Sent when the after the project is completely closed. */
  301. postClosed: "ak.wwise.core.project.postClosed",
  302. /** Sent when the project begins closing. */
  303. preClosed: "ak.wwise.core.project.preClosed",
  304. /** Saves the current project. */
  305. save: "ak.wwise.core.project.save",
  306. /** Sent when the project has been saved. */
  307. saved: "ak.wwise.core.project.saved"
  308. },
  309. remote: {
  310. /** Connects the Wwise Authoring application to a Wwise Sound Engine running executable or to a saved profile file. The host must be running code with communication enabled. If only "host" is provided, Wwise connects to the first Sound Engine instance found. To distinguish between different instances, you can also provide the name of the application to connect to. */
  311. connect: "ak.wwise.core.remote.connect",
  312. /** Disconnects the Wwise Authoring application from a connected Wwise Sound Engine running executable. */
  313. disconnect: "ak.wwise.core.remote.disconnect",
  314. /** Retrieves all consoles available for connecting Wwise Authoring to a Sound Engine instance. */
  315. getAvailableConsoles: "ak.wwise.core.remote.getAvailableConsoles",
  316. /** Retrieves the connection status. */
  317. getConnectionStatus: "ak.wwise.core.remote.getConnectionStatus"
  318. },
  319. sound: {
  320. /** Sets which version of the source is being used for the specified sound. Use \ref ak_wwise_core_object_get with the 'activeSource' return option to get the active source of a sound. */
  321. setActiveSource: "ak.wwise.core.sound.setActiveSource"
  322. },
  323. soundbank: {
  324. /** Converts the external sources files for the project as detailed in the wsources file, and places them into either the default folder, or the folder specified by the output argument. External Sources are a special type of source that you can put in a Sound object in Wwise. It indicates that the real sound data will be provided at run time. While External Source conversion is also triggered by SoundBank generation, this operation can be used to process sources not contained in the Wwise Project. Please refer to Wwise SDK help page "Integrating External Sources". */
  325. convertExternalSources: "ak.wwise.core.soundbank.convertExternalSources",
  326. /** Generate a list of SoundBanks with the import definition specified in the WAAPI request. If you do not write the SoundBanks to disk, subscribe to \ref ak_wwise_core_soundbank_generated to receive SoundBank structure info and the bank data as base64. Note: This is a synchronous operation. */
  327. generate: "ak.wwise.core.soundbank.generate",
  328. /** Sent when a single SoundBank is generated. This could be sent multiple times during SoundBank generation, for every SoundBank generated and for every platform. To generate SoundBanks, refer to \ref ak_wwise_core_soundbank_generate or \ref ak_wwise_ui_commands_execute with one of the SoundBank generation commands. Refer to \ref globalcommandsids for the list of commands. */
  329. generated: "ak.wwise.core.soundbank.generated",
  330. /** Sent when all SoundBanks are generated. Note: This notification is only sent when SoundBanks have been generated, it is not a reliable way to determine when \ref ak_wwise_core_soundbank_generate has completed. */
  331. generationDone: "ak.wwise.core.soundbank.generationDone",
  332. /** Retrieves a SoundBank's inclusion list. */
  333. getInclusions: "ak.wwise.core.soundbank.getInclusions",
  334. /** Imports SoundBank definitions from the specified file. Multiple files can be specified. See the WAAPI log for status messages. */
  335. processDefinitionFiles: "ak.wwise.core.soundbank.processDefinitionFiles",
  336. /** Modifies a SoundBank's inclusion list. The 'operation' argument determines how the 'inclusions' argument modifies the SoundBank's inclusion list; 'inclusions' may be added to / removed from / replace the SoundBank's inclusion list. */
  337. setInclusions: "ak.wwise.core.soundbank.setInclusions"
  338. },
  339. sourceControl: {
  340. /** Add files to source control. Equivalent to Mark for Add for Perforce. */
  341. add: "ak.wwise.core.sourceControl.add",
  342. /** Check out files from source control. Equivalent to Check Out for Perforce. */
  343. checkOut: "ak.wwise.core.sourceControl.checkOut",
  344. /** Commit files to source control. Equivalent to Submit Changes for Perforce. */
  345. commit: "ak.wwise.core.sourceControl.commit",
  346. /** Delete files from source control. Equivalent to Mark for Delete for Perforce. */
  347. delete_: "ak.wwise.core.sourceControl.delete",
  348. /** Delete files from source control. Equivalent to Mark for Delete for Perforce. */
  349. delete: "ak.wwise.core.sourceControl.delete",
  350. /** Retrieve all original files. */
  351. getSourceFiles: "ak.wwise.core.sourceControl.getSourceFiles",
  352. /** Get the source control status of the specified files. */
  353. getStatus: "ak.wwise.core.sourceControl.getStatus",
  354. /** Move or rename files in source control. Always pass the same number of elements in files and newFiles. Equivalent to Move for Perforce. */
  355. move: "ak.wwise.core.sourceControl.move",
  356. /** Revert changes to files in source control. */
  357. revert: "ak.wwise.core.sourceControl.revert",
  358. /** Change the source control provider and credentials. This is the same setting as the Source Control option in the Project Settings dialog in Wwise. */
  359. setProvider: "ak.wwise.core.sourceControl.setProvider"
  360. },
  361. switchContainer: {
  362. /** Assigns a Switch Container's child to a Switch. This is the equivalent of doing a drag&drop of the child to a state in the Assigned Objects view. The child is always added at the end for each state. */
  363. addAssignment: "ak.wwise.core.switchContainer.addAssignment",
  364. /** Sent when an assignment is added to a Switch Container. */
  365. assignmentAdded: "ak.wwise.core.switchContainer.assignmentAdded",
  366. /** Sent when an assignment is removed from a Switch Container. */
  367. assignmentRemoved: "ak.wwise.core.switchContainer.assignmentRemoved",
  368. /** Returns the list of assignments between a Switch Container's children and states. */
  369. getAssignments: "ak.wwise.core.switchContainer.getAssignments",
  370. /** Removes an assignment between a Switch Container's child and a State. */
  371. removeAssignment: "ak.wwise.core.switchContainer.removeAssignment"
  372. },
  373. transport: {
  374. /** Creates a transport object for the given Wwise object. The return transport object can be used to play, stop, pause and resume the Wwise object via the other transport functions. */
  375. create: "ak.wwise.core.transport.create",
  376. /** Destroys the given transport object. */
  377. destroy: "ak.wwise.core.transport.destroy",
  378. /** Executes an action on the given transport object, or all transport objects if none is specified. */
  379. executeAction: "ak.wwise.core.transport.executeAction",
  380. /** Returns the list of transport objects. */
  381. getList: "ak.wwise.core.transport.getList",
  382. /** Gets the state of the given transport object. */
  383. getState: "ak.wwise.core.transport.getState",
  384. /** Prepare the object and its dependencies for playback. Use this function before calling PostEventSync or PostMIDIOnEventSync from IAkGlobalPluginContext. */
  385. prepare: "ak.wwise.core.transport.prepare",
  386. /** Sent when the transport's state has changed. */
  387. stateChanged: "ak.wwise.core.transport.stateChanged",
  388. /** Sets the Original/Converted transport toggle globally. This allows playing the original or the converted sound files. */
  389. useOriginals: "ak.wwise.core.transport.useOriginals"
  390. },
  391. undo: {
  392. /** Begins an undo group. Make sure to call \ref ak_wwise_core_undo_endgroup exactly once for every ak.wwise.core.beginUndoGroup call you make. Calls to ak.wwise.core.undo.beginGroup can be nested. When closing a WAMP session, a check is made to ensure that all undo groups are closed. If not, a cancelGroup is called for each of the groups still open. */
  393. beginGroup: "ak.wwise.core.undo.beginGroup",
  394. /** Cancels the last undo group. */
  395. cancelGroup: "ak.wwise.core.undo.cancelGroup",
  396. /** Ends the last undo group. */
  397. endGroup: "ak.wwise.core.undo.endGroup",
  398. /** Redoes the last operation in the Undo stack. */
  399. redo: "ak.wwise.core.undo.redo",
  400. /** Undoes the last operation in the Undo stack. */
  401. undo: "ak.wwise.core.undo.undo"
  402. }
  403. },
  404. debug: {
  405. /** Sent when an assert has failed. This is only available in Debug builds. */
  406. assertFailed: "ak.wwise.debug.assertFailed",
  407. /** Enables debug assertions. Every call to enableAsserts with 'false' increments the ref count. Calling with true decrements the ref count. This is only available with Debug builds. */
  408. enableAsserts: "ak.wwise.debug.enableAsserts",
  409. /** Enables or disables the automation mode for Wwise. This reduces the potential interruptions caused by message boxes and dialogs. For instance, enabling the automation mode silently accepts: project migration, project load log, EULA acceptance, project licence display and generic message boxes. */
  410. enableAutomationMode: "ak.wwise.debug.enableAutomationMode",
  411. /** Generate a WAV file playing a tone with a simple envelope and save it to the specified location. This is provided as a utility to generate test WAV files. */
  412. generateToneWAV: "ak.wwise.debug.generateToneWAV",
  413. /** Retrieves the WAL tree, which describes the nodes that are synchronized in the Sound Engine. Private use only. */
  414. getWalTree: "ak.wwise.debug.getWalTree",
  415. /** Restart WAAPI servers. For internal use only. */
  416. restartWaapiServers: "ak.wwise.debug.restartWaapiServers",
  417. /** Private use only. */
  418. testAssert: "ak.wwise.debug.testAssert",
  419. /** Private use only. */
  420. testCrash: "ak.wwise.debug.testCrash"
  421. },
  422. ui: {
  423. /** Bring Wwise main window to foreground. Refer to SetForegroundWindow and AllowSetForegroundWindow on MSDN for more information on the restrictions. Refer to ak.wwise.core.getInfo to obtain the Wwise process ID for AllowSetForegroundWindow. */
  424. bringToForeground: "ak.wwise.ui.bringToForeground",
  425. /** Captures a part of the Wwise UI relative to a view. */
  426. captureScreen: "ak.wwise.ui.captureScreen",
  427. commands: {
  428. /** Executes a command. Some commands can take a list of objects as parameters. Refer to \ref globalcommandsids for the available commands. */
  429. execute: "ak.wwise.ui.commands.execute",
  430. /** Sent when a command is executed. The objects for which the command is executed are sent in the publication. */
  431. executed: "ak.wwise.ui.commands.executed",
  432. /** Gets the list of commands. */
  433. getCommands: "ak.wwise.ui.commands.getCommands",
  434. /** Registers an array of add-on commands. Registered commands remain until the Wwise process is terminated. Refer to \ref defining_custom_commands for more information about registering commands. Also refer to \ref ak_wwise_ui_commands_executed. */
  435. register: "ak.wwise.ui.commands.register",
  436. /** Unregisters an array of add-on UI commands. */
  437. unregister: "ak.wwise.ui.commands.unregister"
  438. },
  439. /** Retrieves the list of objects currently selected by the user in the active view. */
  440. getSelectedObjects: "ak.wwise.ui.getSelectedObjects",
  441. project: {
  442. /** Closes the current project. */
  443. close: "ak.wwise.ui.project.close",
  444. /** Creates, saves and opens new empty project, specified by path and platform. The project has no factory setting WorkUnit. Please refer to \ref ak_wwise_core_project_loaded for further explanations on how to be notified when the operation has completed. */
  445. create: "ak.wwise.ui.project.create",
  446. /** Opens a project, specified by path. Please refer to \ref ak_wwise_core_project_loaded for further explanations on how to be notified when the operation has completed. */
  447. open: "ak.wwise.ui.project.open"
  448. },
  449. /** Sent when the selection changes in the project. */
  450. selectionChanged: "ak.wwise.ui.selectionChanged"
  451. },
  452. waapi: {
  453. /** Retrieves the list of functions. */
  454. getFunctions: "ak.wwise.waapi.getFunctions",
  455. /** Retrieves the JSON schema of a Waapi URI. */
  456. getSchema: "ak.wwise.waapi.getSchema",
  457. /** Retrieves the list of topics to which a client can subscribe. */
  458. getTopics: "ak.wwise.waapi.getTopics"
  459. }
  460. }
  461. }