Wwise SDK
_plugin_def_8h_source
バージョン
menu_open
link
PluginDef.h
[詳解]
63 };
73 };
86 };
143 };
172 virtual void ErrorMessage(const char * in_rErrorText, Severity in_eSeverity = Severity_Warning) = 0;
473 uint32_t decodedFileSize; ///< File size of file when decoded to PCM format, *If* offline decoding is supported by the codec. Otherwise has value NO_OFFLINE_DECODING (-1)
492 typedef struct ak_wwise_plugin_base_interface* ak_wwise_plugin_interface_ptr; ///< Pointer to a generic base from a plug-in interface.
495 * \brief Generic base for all plug-in instances. In C++, this is derived. In C, they are equivalent.
501 typedef struct ak_wwise_plugin_base_instance* ak_wwise_plugin_instance_ptr; ///< Pointer to a generic base for a plug-in instances.
513 * \warning This differs from the ak_wwise_plugin_base_instance, as C++ classes have a virtual table as their first member.
514 * It's important to make the distinction between the two by specifically doing a static_cast between the C version and the C++ version,
515 * and not a mere reinterpret_cast or a C-style cast. As such, it is expected to instantiate a plug-in in C++, and return
526 * \warning These are NOT equivalent! In C, it is expected you can directly cast from your instance to an
527 * ak_wwise_plugin_base_instance. In C++, since the base classes have a virtual table, the pointer to the C members is
538 * A backend contains all the logic for the Authoring part of the plug-in. It is uniquely instantiated for each plug-in instance
546 * A frontend contains the visual part of the Authoring plug-in. It is optional, for example, it is never instantiated when
547 * connecting through WwiseConsole. As such, there should never be any processing or "intelligence" done in a frontend part.
549 * For example, the frontend should not affect licensing, soundbank generation, audio processing, property handling (such as
550 * validating ranges for property sets), media handling, media conversion, custom data loading, ...
552 * \aknote Porting note: In legacy plug-ins, there is only one instance of the Authoring plug-in that contains both
553 * the backend and the frontend. This has changed for multiple reasons: to be able to instantiate a plug-in backend without any
554 * frontend, or alternatively, to instantiate multiple copies of a frontend for a unique backend. \endaknote
562 * In C++, this derives the backend instance from the ak_wwise_plugin_backend_instance in a separate action so that RTTI can help
565 * In C, this is a typedef, as we cannot derive. The compiler also doesn't need to lookup addresses for complex structures, so this
579 * In C++, this derives the frontend instance from the ak_wwise_plugin_frontend_instance in a separate action so that RTTI can help
582 * In C, this is a typedef, as we cannot derive. The compiler also doesn't need to lookup addresses for complex structures, so this
624 struct ak_wwise_plugin_host_conversion_helpers_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
633 struct ak_wwise_plugin_host_data_writer_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
642 struct ak_wwise_plugin_host_object_media_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
651 struct ak_wwise_plugin_host_object_store_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
660 struct ak_wwise_plugin_host_property_set_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
669 struct ak_wwise_plugin_host_undo_manager_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
672 * \brief Base host-provided instance type for reading XML files through ak_wwise_plugin_host_xml_v1.
678 struct ak_wwise_plugin_host_xml_reader_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
681 * \brief Base host-provided instance type for writing XML files through ak_wwise_plugin_host_xml_v1.
687 struct ak_wwise_plugin_host_xml_writer_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
692 * \brief Base instance type for providing analysis task services through ak_wwise_plugin_analysis_task_v1.
702 * \brief Base instance type for providing audio plug-in backend services through ak_wwise_plugin_audio_plugin_v1.
712 * \brief Base instance type for providing a conversion plug-in through ak_wwise_plugin_conversion_v1.
722 * \brief Base instance type for providing custom data loading and saving through ak_wwise_plugin_custom_data_v1.
732 * \brief Base instance type for providing display names to properties through ak_wwise_plugin_property_display_name_v1.
738 struct ak_wwise_plugin_property_display_name_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
742 * \brief Base instance type for providing property-based feedback through ak_wwise_plugin_feedback_aware_v1.
752 * \brief Base instance type for providing a Windows frontend for a conversion plug-in through ak_wwise_plugin_gui_conversion_windows_v1.
760 AK_WWISE_PLUGIN_DERIVE_FROM_FRONTEND_INSTANCE(ak_wwise_plugin_gui_conversion_windows_instance_v1);
764 * \brief Base instance type for providing a Windows frontend for an audio plug-in through ak_wwise_plugin_gui_windows_v1.
776 * \brief Base host-provided instance to retrieve the related backend instance, as shown in the frontend.
786 * \brief Base host-provided instance to retrieve the related frontend instances related to the current backend.
796 * \brief Base instance type for providing custom media conversion through ak_wwise_plugin_media_converter_v1.
802 struct ak_wwise_plugin_media_converter_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
814 struct ak_wwise_plugin_notifications_host_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
825 struct ak_wwise_plugin_notifications_monitor_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
837 struct ak_wwise_plugin_notifications_object_media_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
849 struct ak_wwise_plugin_notifications_object_store_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
861 struct ak_wwise_plugin_notifications_property_set_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
865 * \brief Base instance type for providing source-specific information, through ak_wwise_plugin_source_v1.
875 * \brief Base instance type for providing custom undo operations through ak_wwise_plugin_undo_event_v1.
887 * \brief Base instance type for providing licensing information, through ak_wwise_plugin_license_v1.
897 * \brief Base instance type for providing a message shown the first time an instance is created through ak_wwise_plugin_first_time_creation_message_v1.
903 struct ak_wwise_plugin_first_time_creation_message_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
906 * \brief Base instance type for providing a device list for your custom sink through ak_wwise_plugin_sink_devices_v1.
920 struct ak_wwise_plugin_host_frontend_model_instance_v1 AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE {};
932 * Allows to bind an event from any source: Authoring or any plug-in. Allows to have multiple separate interfaces.
942 struct ak_wwise_plugin_undo_event_v1* m_interface; ///< The interface to execute that undo event's commands.
943 struct ak_wwise_plugin_undo_event_instance_v1* m_instance; ///< The specific instance usued for that particular undo event.
946 typedef int ak_wwise_plugin_undo_group_id; ///< Unique identifier for a particular undo group. Useful to reopen an unapplied closed group session.
951 * The goal of an undo group is to keep a list of actions being executed that can be undone (for example, a
952 * property set modification). Once the operations are all done, this indicates what should be done with the internal
955 * - \ref AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY : The usual operation is to open an undo group, and then close
956 * and apply the group to the undo stack. This provides a valid Undo/Redo label, as well as a description of all
959 * and AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY_LAST_EVENT_NAME are convenience operations, where the Undo
960 * operation title is retrieved from either the first or the last event's name, instead of hard-coding it ourselves.
961 * - \ref AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_CANCEL cancels the undo operations. It happens when an abnormal
962 * termination occurs, such as an error, or the user cancelling a lengthy operation. Since the operation states
963 * aren't known, you are responsible to handle the stored undo yourself, and manually revert all operations first
964 * before closing the action. An example of this operation is doing a slider drag event, where the user presses
965 * the Escape key instead of doing a Mouse Up. Effectively, all the inner operations will simply be cancelled by storing
967 * - \ref AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_CLOSE temporarily closes the undo state, leaving it possible to reopen
968 * it later. This is useful during lengthy processes, such as a user dragging a slider. You are expected to
969 * temporarily close the undo group when going out of scope, and reopening it when receiving a new system mouse drag
973 AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_CLOSE, ///< Close this group session (going out of scope), but do not apply it yet.
974 AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY, ///< Close this group session permanently, and apply its operations to the englobing group.
975 AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY_FIRST_EVENT_NAME, ///< Same than AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY, but copies the name of the first inner undo event as the name.
976 AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY_LAST_EVENT_NAME, ///< Same than AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY, but copies the name of the last inner undo event as the name.
977 AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_CANCEL ///< Close this group session permanently, and cancel all its internal operations. Undo operations are not applied.
987 using CBaseInterface = ak_wwise_plugin_base_interface; ///< \copydoc ak_wwise_plugin_base_interface
989 using CInterfaceArrayItem = ak_wwise_plugin_interface_array_item; ///< \copydoc ak_wwise_plugin_interface_array_item
996 using InterfaceArrayItem = CInterfaceArrayItem; ///< \copydoc ak_wwise_plugin_interface_array_item
virtual bool SetValueUInt16(const char *in_pszPropertyName, uint16_t in_varProperty)=0
virtual void ErrorMessage(const char *in_rErrorText, Severity in_eSeverity=Severity_Warning)=0
Base instance type for providing custom undo operations through ak_wwise_plugin_undo_event_v1.
Definition: PluginDef.h:883
virtual bool GetValueReal64(const char *in_pszPropertyName, double &out_varProperty) const =0
@ AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_CLOSE
Close this group session (going out of scope), but do not apply it yet.
Definition: PluginDef.h:973
int32_t GetInt32(const char *in_pszPropertyName) const
Definition: PluginDef.h:273
Base host-provided instance type for ak_wwise_plugin_host_undo_manager_v1.
Definition: PluginDef.h:669
virtual bool GetValueBool(const char *in_pszPropertyName, bool &out_varProperty) const =0
virtual void WriteString(const char *in_szString, int in_iStringLength)=0
Generic base for all plug-in instances. In C++, this is derived. In C, they are equivalent.
Definition: PluginDef.h:500
uint16_t GetUInt16(const char *in_pszPropertyName) const
Definition: PluginDef.h:318
virtual bool SetValueReal32(const char *in_pszPropertyName, float in_varProperty)=0
virtual bool GetValueInt16(const char *in_pszPropertyName, int16_t &out_varProperty) const =0
virtual bool GetValueInt8(const char *in_pszPropertyName, int8_t &out_varProperty) const =0
const char * destinationFileName
Definition: PluginDef.h:450
API to convert used object medias to a format usable by the plug-in's Sound Engine part.
Definition: MediaConverter.h:44
@ AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY
Close this group session permanently, and apply its operations to the englobing group.
Definition: PluginDef.h:974
const char * sourceFileName
Definition: PluginDef.h:449
virtual bool SetValueInt8(const char *in_pszPropertyName, int8_t in_varProperty)=0
ak_wwise_plugin_interface_ptr CInterfacePtr
Definition: PluginDef.h:988
Base host-provided instance type for ak_wwise_plugin_host_object_media_v1.
Definition: PluginDef.h:642
double GetReal64(const char *in_pszPropertyName) const
Definition: PluginDef.h:336
ak_wwise_plugin_interface_array_item CInterfaceArrayItem
A single instantiatable plug-in interface.
Definition: PluginDef.h:989
virtual bool SetValueUInt64(const char *in_pszPropertyName, uint64_t in_varProperty)=0
int8_t GetInt8(const char *in_pszPropertyName) const
Definition: PluginDef.h:291
Base instance type for providing custom media conversion through ak_wwise_plugin_media_converter_v1.
Definition: PluginDef.h:802
Definition: AkSpeakerConfig.h:497
uint8_t GetUInt8(const char *in_pszPropertyName) const
Definition: PluginDef.h:327
Base instance type for providing custom data loading and saving through ak_wwise_plugin_custom_data_v...
Definition: PluginDef.h:728
Base instance type for providing a message shown the first time an instance is created through ak_wwi...
Definition: PluginDef.h:903
ak_wwise_plugin_container CPluginContainer
Root interface allowing a logical unit (variable, library) to contain more than one interface.
Definition: PluginDef.h:991
API to create a custom undo event in a plug-in.
Definition: HostUndoManager.h:45
virtual bool GetValueUInt8(const char *in_pszPropertyName, uint8_t &out_varProperty) const =0
virtual void NotifyProgress(uint32_t in_dwProgress)=0
Notify of the advancement of the task.
virtual bool SetValueInt64(const char *in_pszPropertyName, int64_t in_varProperty)=0
NotifyInnerObjectOperation
Type of operation for the NotifyInnerObjectAddedRemoved function.
Definition: PluginDef.h:83
virtual bool ClearValue(const char *in_pszPropertyName)=0
const GUID * basePlatformID
Definition: PluginDef.h:448
struct ak_wwise_plugin_undo_event_v1 * m_interface
The interface to execute that undo event's commands.
Definition: PluginDef.h:942
const char * templateName
Definition: PluginDef.h:924
#define AK_WWISE_PLUGIN_DERIVE_FROM_BACKEND_INSTANCE(x)
Define an instance type as a backend.
Definition: PluginDef.h:573
uint64_t GetUInt64(const char *in_pszPropertyName) const
Definition: PluginDef.h:300
Base host-provided instance type for ak_wwise_plugin_host_data_writer_v1.
Definition: PluginDef.h:633
Base instance type for providing audio plug-in backend services through ak_wwise_plugin_audio_plugin_...
Definition: PluginDef.h:708
Windows frontend plug-in API for Audio plug-ins.
Definition: GUIWindows.h:92
virtual bool GetValueUInt32(const char *in_pszPropertyName, uint32_t &out_varProperty) const =0
virtual bool GetValueUInt16(const char *in_pszPropertyName, uint16_t &out_varProperty) const =0
uint32_t decodedFileSize
File size of file when decoded to PCM format, If offline decoding is supported by the codec....
Definition: PluginDef.h:473
Root interface allowing a logical unit (variable, library) to contain more than one interface.
Definition: PluginContainer.h:51
uint32_t GetUInt32(const char *in_pszPropertyName) const
Definition: PluginDef.h:309
Base host-provided instance to retrieve the related backend instance, as shown in the frontend.
Definition: PluginDef.h:782
Base host-provided instance type for ak_wwise_plugin_host_v1.
Definition: PluginDef.h:606
virtual bool SetValueInt32(const char *in_pszPropertyName, int32_t in_varProperty)=0
AK::Wwise::Plugin::IWriteString * error
Definition: PluginDef.h:452
virtual bool GetValue(const char *in_szPropertyName, AK::WwiseAuthoringAPI::AkVariantBase &out_rValue) const =0
int16_t GetInt16(const char *in_pszPropertyName) const
Definition: PluginDef.h:282
Generic base for all plug-in instances in C++
Definition: PluginDef.h:519
Definition: PluginDef.h:76
Base instance type for providing analysis task services through ak_wwise_plugin_analysis_task_v1.
Definition: PluginDef.h:698
Base host-provided instance type for ak_wwise_plugin_host_conversion_helpers_v1.
Definition: PluginDef.h:624
API for Sound Engine's Monitor Data notification.
Definition: Notifications.h:48
int ak_wwise_plugin_undo_group_id
Unique identifier for a particular undo group. Useful to reopen an unapplied closed group session.
Definition: PluginDef.h:946
ak_wwise_plugin_base_interface CBaseInterface
Interface description and base class for every Wwise Authoring plug-in interface.
Definition: PluginDef.h:987
#define AK_WWISE_PLUGIN_DERIVE_FROM_INSTANCE_BASE
Define a generic instance base, either in C or in C++.
Definition: PluginDef.h:530
virtual void SetCurrentOperationName(const char *in_szOperationName)=0
virtual bool SetValueString(const char *in_pszPropertyName, const char *in_varProperty)=0
ak_wwise_plugin_undo_group_close_action
Action to apply once this undo group is closed.
Definition: PluginDef.h:972
virtual bool GetValueString(const char *in_pszPropertyName, const char *&out_varProperty) const =0
float GetReal32(const char *in_pszPropertyName) const
Definition: PluginDef.h:345
virtual bool IsCancelled() const =0
Check if the user has cancelled the task
Base instance type for providing display names to properties through ak_wwise_plugin_property_display...
Definition: PluginDef.h:738
Base instance type for providing a device list for your custom sink through ak_wwise_plugin_sink_devi...
Definition: PluginDef.h:912
Base instance type for providing source-specific information, through ak_wwise_plugin_source_v1.
Definition: PluginDef.h:871
Base instance type for receiving notifications on host changes events.
Definition: PluginDef.h:814
Base instance type for providing licensing information, through ak_wwise_plugin_license_v1.
Definition: PluginDef.h:893
Base instance type for receiving notifications on related Object Store's changes.
Definition: PluginDef.h:849
Interfaces used to set and get the properties from a plug in.
Definition: PluginDef.h:186
@ AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY_LAST_EVENT_NAME
Same than AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY, but copies the name of the last inner undo e...
Definition: PluginDef.h:976
virtual bool GetValueUInt64(const char *in_pszPropertyName, uint64_t &out_varProperty) const =0
virtual int GetType(const char *in_pszPropertyName) const =0
virtual ~ak_wwise_plugin_cpp_base_instance()
Definition: PluginDef.h:520
virtual bool SetValueUInt32(const char *in_pszPropertyName, uint32_t in_varProperty)=0
Base host-provided instance type for ak_wwise_plugin_host_v2.
Definition: PluginDef.h:615
const char * GetString(const char *in_pszPropertyName) const
Definition: PluginDef.h:255
@ Severity_Warning
potentially impacting the integrity of the current operation
Definition: PluginDef.h:112
Interface able to receive notifications for custom inner property sets.
Definition: HostObjectStore.h:299
Base instance type for receiving Sound Engine's monitoring data.
Definition: PluginDef.h:825
Base instance type for providing a conversion plug-in through ak_wwise_plugin_conversion_v1.
Definition: PluginDef.h:718
virtual bool SetValueReal64(const char *in_pszPropertyName, double in_varProperty)=0
@ AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_CANCEL
Close this group session permanently, and cancel all its internal operations. Undo operations are not...
Definition: PluginDef.h:977
IReadWriteProperties * pluginProperties
Definition: PluginDef.h:457
const IReadOnlyProperties * sourceProperties
Definition: PluginDef.h:456
Host API to retrieve a link to the plug-in's frontend interfaces.
Definition: PluginLinks.h:82
Wwise API for general Audio Plug-in's backend.
Definition: AudioPlugin.h:52
Host API to retrieve a link to the plug-in's backend instance.
Definition: PluginLinks.h:45
Backend API to specify display names for properties
Definition: PropertyDisplayName.h:46
virtual bool SetValue(const char *in_szPropertyName, const AK::WwiseAuthoringAPI::AkVariantBase &in_rValue)=0
virtual bool GetValueInt32(const char *in_pszPropertyName, int32_t &out_varProperty) const =0
Base host-provided instance to retrieve the related frontend instances related to the current backend...
Definition: PluginDef.h:792
Interface description and base class for every Wwise Authoring plug-in interface.
Definition: PluginBaseInterface.h:120
Definition: PluginDef.h:178
@ Severity_Success
operation was executed without errors or will not produce errors
Definition: PluginDef.h:110
Base host-provided instance type for reading XML files through ak_wwise_plugin_host_xml_v1.
Definition: PluginDef.h:678
Base host-provided instance type for ak_wwise_plugin_host_property_set_v1.
Definition: PluginDef.h:660
A definition of an undo event, with a specific interface and instance.
Definition: PluginDef.h:941
bool GetBool(const char *in_pszPropertyName) const
Definition: PluginDef.h:354
Definition: PluginDef.h:437
Base instance type for providing a Windows frontend for a conversion plug-in through ak_wwise_plugin_...
Definition: PluginDef.h:760
virtual void SetRange(uint32_t in_dwMinValue, uint32_t in_dwMaxValue)=0
Should be called at the beginning of the operation to set the min and max value
#define AK_WWISE_PLUGIN_DERIVE_FROM_FRONTEND_INSTANCE(x)
Define an instance type as a frontend.
Definition: PluginDef.h:590
Base host-provided instance type for ak_wwise_plugin_host_object_store_v1.
Definition: PluginDef.h:651
float downmixNormalizationGain
Definition: PluginDef.h:466
virtual bool SetValueUInt8(const char *in_pszPropertyName, uint8_t in_varProperty)=0
@ AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY_FIRST_EVENT_NAME
Same than AK_WWISE_PLUGIN_UNDO_GROUP_CLOSE_ACTION_APPLY, but copies the name of the first inner undo ...
Definition: PluginDef.h:975
int64_t GetInt64(const char *in_pszPropertyName) const
Definition: PluginDef.h:264
A single instantiatable plug-in interface.
Definition: PluginInterfaceArrayItem.h:44
Definition: PluginInfo.h:38
Base instance type for providing property-based feedback through ak_wwise_plugin_feedback_aware_v1.
Definition: PluginDef.h:748
AK::Wwise::Plugin::IProgress * progress
Definition: PluginDef.h:451
Wwise Authoring Plug-ins - Helper tools, potentially defined elsewhere.
Base instance type for receiving notifications on related object media's changes.
Definition: PluginDef.h:837
@ LicenseStatus_Incompatible
The plugin was made for an older version of Wwise
Definition: PluginDef.h:72
Base instance type for receiving notifications on property set's changes.
Definition: PluginDef.h:861
Definition: PluginDef.h:154
Base host-provided instance type for writing XML files through ak_wwise_plugin_host_xml_v1.
Definition: PluginDef.h:687
Backend API to load and save custom data in XML format.
Definition: CustomData.h:54
virtual bool GetValueInt64(const char *in_pszPropertyName, int64_t &out_varProperty) const =0
virtual bool SetValueInt16(const char *in_pszPropertyName, int16_t in_varProperty)=0
Definition: PluginDef.h:89
Base instance type for providing a Windows frontend for an audio plug-in through ak_wwise_plugin_gui_...
Definition: PluginDef.h:772
virtual bool GetValueReal32(const char *in_pszPropertyName, float &out_varProperty) const =0
struct ak_wwise_plugin_undo_event_instance_v1 * m_instance
The specific instance usued for that particular undo event.
Definition: PluginDef.h:943
Definition: PluginHelpers.h:45
Definition: AudioPlugin.h:111
virtual bool SetValueBool(const char *in_pszPropertyName, bool in_varProperty)=0
uint32_t analysisDataTypes
Definition: PluginDef.h:460