EBus interface used to send requests to ManipulatorManager.
More...
#include <ManipulatorBus.h>
Inherits AZ::EBusTraits.
|
static const AZ::EBusAddressPolicy | AddressPolicy = AZ::EBusAddressPolicy::ById |
|
static const AZ::EBusHandlerPolicy | HandlerPolicy = AZ::EBusHandlerPolicy::Single |
|
EBus interface used to send requests to ManipulatorManager.
◆ RegisterManipulator()
virtual void AzToolsFramework::ManipulatorManagerRequests::RegisterManipulator |
( |
AZStd::shared_ptr< BaseManipulator > |
manipulator | ) |
|
|
pure virtual |
Register a manipulator with the Manipulator Manager.
- Parameters
-
manipulator | The manipulator parameter is passed as a shared_ptr so that the system responsible for managing manipulators can maintain ownership of the manipulator even if is destroyed while in use. |
◆ SetBoundDirty()
Mark the bound of a manipulator dirty so it's excluded from mouse hit detection. This should be called whenever a manipulator is moved.
◆ UnregisterManipulator()
virtual void AzToolsFramework::ManipulatorManagerRequests::UnregisterManipulator |
( |
BaseManipulator * |
manipulator | ) |
|
|
pure virtual |
Unregister a manipulator from the Manipulator Manager. After unregistering the manipulator, it will be excluded from mouse hit detection and will not receive any mouse action events. The Manipulator Manager will also relinquish ownership of the manipulator.
◆ UpdateBound()
Update the bound for a manipulator. If boundId hasn't been registered before or it's invalid, a new bound is created and set using boundShapeData.
- Parameters
-
manipulatorId | The id of the manipulator whose bound needs to update. |
boundId | The id of the bound that needs to update. |
boundShapeData | The pointer to the new bound shape data. |
- Returns
- If boundId has been registered return the same id, otherwise create a new bound and return its id.
◆ AddressPolicy
const AZ::EBusAddressPolicy AzToolsFramework::ManipulatorManagerRequests::AddressPolicy = AZ::EBusAddressPolicy::ById |
|
static |
We can have multiple manipulator managers. In the case where there are multiple viewports, each displaying a different set of entities, a different manipulator manager is required to provide a different collision space for each viewport so that mouse hit detection can be handled properly.
The documentation for this class was generated from the following file:
- Code/Framework/AzToolsFramework/AzToolsFramework/Manipulators/ManipulatorBus.h