Workspace 6.21.5
Public Member Functions | Protected Member Functions | List of all members
SceneItemManipulationEvent Class Reference

Base class for scene item manipulation.

#include <Rendering/SceneInteraction/sceneitemmanipulationevent.h>

Inheritance diagram for SceneItemManipulationEvent:
[legend]

Public Member Functions

template<typename T >
 SceneItemManipulationEvent (const QString &opIdPath, const T &data)
 
 ~SceneItemManipulationEvent () override
 
virtual void applyManipulation (DataExecution::DataObject &target) const
 
const QString & getOpIdPath () const
 
- Public Member Functions inherited from ObservableEventType< SceneItemManipulationEvent >
CSIRO_WORKSPACE_API const EventIDSingleton< CSIRO::DataExecution::AllObservableEvents > & eventID ()
 
CSIRO_WORKSPACE_API const EventIDSingleton< CSIRO::DataExecution::ProgressEvent > & eventID ()
 
const EventIDSingleton< SceneItemManipulationEvent > & getEventID () const override
 
- Public Member Functions inherited from ObservableEvent
virtual ~ObservableEvent ()=default
 
virtual const EventIDgetEventID () const =0
 

Protected Member Functions

const DataExecution::DataObjectgetDataObject () const
 
- Protected Member Functions inherited from ObservableEventType< SceneItemManipulationEvent >
 ObservableEventType ()=default
 

Additional Inherited Members

- Static Public Member Functions inherited from ObservableEventType< SceneItemManipulationEvent >
static const EventIDSingleton< SceneItemManipulationEvent > & eventID ()
 

Constructor & Destructor Documentation

◆ SceneItemManipulationEvent()

SceneItemManipulationEvent ( const QString &  opIdPath,
const T &  data 
)
inline

◆ ~SceneItemManipulationEvent()

~SceneItemManipulationEvent ( )
inlineoverride

Member Function Documentation

◆ applyManipulation()

virtual void applyManipulation ( DataExecution::DataObject target) const
inlinevirtual
Parameters
targetThe data object to which this manipulation will be applied.

Applies the manipulation to the target data object. By default, this application will be a simple assignment. Subclasses can override this to do more complicated assignments (e.g. matrix multiplication) for an interaction based on their assumed knowledge of the data object's data type.

Reimplemented in TransformManipulationEvent.

◆ getDataObject()

const DataExecution::DataObject & getDataObject ( ) const
inlineprotected

◆ getOpIdPath()

const QString & getOpIdPath ( ) const
inline