The plugin state contains fields which are universal across all plugins of each type (eg: status)
Each plugin instance has its own state
The plugin store can be used to persist any custom data
Use the generic parameter to specify a store interface
Each plugin instance has its own store
Create a subscription to a given topic on the engine plugin
The pubsub topic name to subscribe to
Create a subscription to a given topic on another plugin
The target identifier for the plugin for the topic
The pubsub topic name to subscribe to
Create a pubsub topic with a name (use dot seperation for nesting)
Called when a plugin should destroy itself, this should be used with super.destroy()
Execute an instance method on the engine plugin through a proxy
The method name to execute
A function which can be executed with the arguments to pass to target method
Execute a static instance method on the engine plugin through a proxy
The method name to execute
A function which can be executed with the arguments to pass to target method
Called when a plugin should initialize itself, this should be used with super.init()
All plugins have been constructed at this point
Execute an instance method on another plugin through a proxy
The plugin instance to use
The method name to execute
A function which can be executed with the arguments to pass to target method
Update the plugin store and trigger storeDidUpdate notifications
Notify the plugin that a state change has taken place
The previous state object which has been replaced
Execute a static method on another plugin through a proxy
The method name to execute
A function which can be executed with the arguments to pass to target method
Notify the plugin that a store change has taken place
The previous store object which has been replaced
Execute an instance method on the target plugin through a proxy
The method name to execute
A function which can be executed with the arguments to pass to target method
Execute a static method on the target plugin through a proxy
The method name to execute
A function which can be executed with the arguments to pass to target method
Create a new model for a given prototype
The full prototype model, should be used for context
Name of the model that should be created
The model to be created
Create a new tool model for a given target
The target model, should be used as context
The tool model to be created or null if it shouldn't be supported
Execute a static instance method on another plugin through a proxy
The method name to execute
A function which can be executed with the arguments to pass to target method
The base class for tool plugins