HPS::TurntableOperator Class Reference

#include <sprk_ops.h>

Inheritance diagram for HPS::TurntableOperator:
HPS::Operator HPS::Sprocket HPS::Object

Public Member Functions

virtual HPS::UTF8 GetName () const
 
virtual bool OnMouseDown (MouseState const &in_state)
 
virtual bool OnMouseMove (MouseState const &in_state)
 
virtual bool OnMouseUp (MouseState const &in_state)
 
virtual bool OnMouseWheel (MouseState const &in_state)
 
virtual bool OnTouchDown (TouchState const &in_state)
 
virtual bool OnTouchMove (TouchState const &in_state)
 
virtual bool OnTouchUp (TouchState const &in_state)
 
 TurntableOperator (MouseButtons in_mouse_trigger=MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger=ModifierKeys())
 
- Public Member Functions inherited from HPS::Operator
virtual void Assign (Operator const &in_that)
 
void DetachView ()
 
virtual bool Equals (Operator const &in_that) const
 
View GetAttachedView () const
 
ModifierKeys GetModifierTrigger () const
 
MouseButtons GetMouseTrigger () const
 
virtual bool IsMouseTriggered (MouseState const &in_state)
 
HPS::Type ObjectType () const
 
virtual bool OnKeyDown (KeyboardState const &in_state)
 
virtual bool OnKeyUp (KeyboardState const &in_state)
 
virtual void OnModelAttached ()
 
virtual void OnModelDetached ()
 
virtual bool OnMouseEnter (MouseState const &in_state)
 
virtual bool OnMouseLeave (MouseState const &in_state)
 
virtual bool OnTextInput (HPS::UTF8 const &in_text)
 
virtual bool OnTimerTick (HPS::TimerTickEvent const &in_event)
 
virtual void OnViewAttached (HPS::View const &in_attached_view)
 
virtual void OnViewDetached (HPS::View const &in_detached_view)
 
 Operator (MouseButtons in_mouse_trigger=MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger=ModifierKeys())
 
 Operator (Operator const &in_that)
 
virtual bool operator!= (Operator const &in_that) const
 
virtual Operatoroperator= (Operator const &in_that)
 
virtual bool operator== (Operator const &in_that) const
 
void SetModifierTrigger (ModifierKeys in_modifiers)
 
void SetMouseTrigger (MouseButtons in_buttons)
 
- Public Member Functions inherited from HPS::Sprocket
 Sprocket (Sprocket &&in_that)
 
- Public Member Functions inherited from HPS::Object
virtual bool Empty () const
 
intptr_t GetClassID () const
 
intptr_t GetInstanceID () const
 
bool HasType (HPS::Type in_mask) const
 
 Object (Object const &that)
 
 Object (Object &&in_that)
 
Objectoperator= (Object const &other_object)
 
Objectoperator= (Object &&in_that)
 
virtual void Reset ()
 
virtual HPS::Type Type () const
 

Additional Inherited Members

- Public Types inherited from HPS::Operator
enum  Priority { Low, Default, High }
 
- Static Public Member Functions inherited from HPS::Object
template<typename T >
static intptr_t ClassID ()
 
- Static Public Attributes inherited from HPS::Operator
static const HPS::Type staticType = HPS::Type::Operator
 
- Static Public Attributes inherited from HPS::Object
static const HPS::Type staticType = HPS::Type::None
 
- Protected Attributes inherited from HPS::Operator
HPS::ModifierKeys modifier_trigger
 
HPS::MouseButtons mouse_trigger
 

Detailed Description

The TurntableOperator class defines an operator which allows the user to orbit the camera along a specific axis. This Operator works for both mouse- and touch-driven devices. Mouse-Driven Devices: Left button pressed and move: Orbit camera around z-axis Mouse wheel: Orbit camera around y-axis Left click + Control: Selects click location as rotation center Touch-Driven Devices: Touch down and move: Orbit camera around z-axis Two finger touch and move: Orbit camera around y-axis Double Tap: Selects click location as rotation center

Member Function Documentation

◆ GetName()

virtual HPS::UTF8 HPS::TurntableOperator::GetName ( ) const
inlinevirtual

Returns the name of the operator.

Reimplemented from HPS::Operator.

◆ OnMouseDown()

virtual bool HPS::TurntableOperator::OnMouseDown ( MouseState const &  in_state)
virtual

This function is called whenever HPS receives a MouseEvent that signals a mouse button was pressed. This function starts the operator and computes the position of the starting point. If the Control button is pressed the click location will become the rotation center point.

Parameters
in_stateA MouseState object describing the current mouse state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS::Operator.

◆ OnMouseMove()

virtual bool HPS::TurntableOperator::OnMouseMove ( MouseState const &  in_state)
virtual

This function is called whenever HPS receives a MouseEvent that signals the mouse moved This function orbits the camera around the z-axis.

Parameters
in_stateA MouseState object describing the current mouse state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS::Operator.

◆ OnMouseUp()

virtual bool HPS::TurntableOperator::OnMouseUp ( MouseState const &  in_state)
virtual

This function is called whenever HPS receives a MouseEvent that signals a mouse button was released. This function stops the operator.

Parameters
in_stateA MouseState object describing the current mouse state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS::Operator.

◆ OnMouseWheel()

virtual bool HPS::TurntableOperator::OnMouseWheel ( MouseState const &  in_state)
virtual

This function is called whenever HPS receives a MouseEvent that signals the mouse wheel moved This function orbits the camera around the y-axis.

Parameters
in_stateA MouseState object describing the current mouse state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS::Operator.

◆ OnTouchDown()

virtual bool HPS::TurntableOperator::OnTouchDown ( TouchState const &  in_state)
virtual

This function is called whenever HPS receives a TouchEvent that signals the device was touched. This function starts the operator and computes the position of the starting point. If a double-tap is received, the touch location will become the rotation center point.

Parameters
in_stateA TouchState object describing the current touch state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS::Operator.

◆ OnTouchMove()

virtual bool HPS::TurntableOperator::OnTouchMove ( TouchState const &  in_state)
virtual

This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved. If a one-finger touch was received, this function orbits the camera around the z-axis. If a two-finger touch was received, this function orbits the camera around the y-axis.

Parameters
in_stateA TouchState object describing the current touch state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS::Operator.

◆ OnTouchUp()

virtual bool HPS::TurntableOperator::OnTouchUp ( TouchState const &  in_state)
virtual

This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released. This function stops the operator.

Parameters
in_stateA TouchState object describing the current touch state.
Returns
true if the input event was handled, false otherwise.

Reimplemented from HPS::Operator.


The documentation for this class was generated from the following file: