|
Sparkle 0.0.1
|
Base class for engine components attached to entities. More...
#include <spk_component.hpp>


Public Member Functions | |
| Component (const std::wstring &p_name) | |
| Builds a component with a name. | |
| ~Component () override | |
| Virtual destructor. | |
| void | setName (const std::wstring &p_name) |
| Sets the component name. | |
| void | setPriority (const int &p_priority) |
| Sets the component priority. | |
| const std::wstring & | name () const |
| Returns the component name. | |
| int | priority () const |
| Returns the component priority. | |
| Entity * | owner () |
| Returns the owning entity. | |
| const Entity * | owner () const |
| Returns the owning entity. | |
| virtual void | start () |
| Called when the component starts. | |
| virtual void | awake () |
| Called when the component becomes active. | |
| virtual void | sleep () |
| Called when the component is put to sleep. | |
| virtual void | stop () |
| Called when the component stops. | |
| virtual void | handleGeometryChange (const spk::Extend2D &p_geometry) |
| Handles geometry change events. | |
| virtual void | handlePaintEvent (spk::PaintEvent &p_event) |
| Handles paint events. | |
| virtual void | handleKeyPressEvent (spk::KeyPressEvent &p_event) |
| Handles key press events. | |
| virtual void | handleKeyReleaseEvent (spk::KeyReleaseEvent &p_event) |
| Handles key release events. | |
| virtual void | handleGlyphEvent (spk::GlyphEvent &p_event) |
| Handles glyph input events. | |
| virtual void | handleMousePressEvent (spk::MousePressEvent &p_event) |
| Handles mouse press events. | |
| virtual void | handleMouseReleaseEvent (spk::MouseReleaseEvent &p_event) |
| Handles mouse release events. | |
| virtual void | handleMouseDoubleClickEvent (spk::MouseDoubleClickEvent &p_event) |
| Handles mouse double-click events. | |
| virtual void | handleMouseMotionEvent (spk::MouseMotionEvent &p_event) |
| Handles mouse motion events. | |
| virtual void | handleMouseWheelEvent (spk::MouseWheelEvent &p_event) |
| Handles mouse wheel events. | |
| virtual void | handleEnterResizeModeEvent (spk::EnterResizeModeEvent &p_event) |
| Handles enter resize mode events. | |
| virtual void | handleResizeEvent (spk::ResizeEvent &p_event) |
| Handles resize events. | |
| virtual void | handleExitResizeModeEvent (spk::ExitResizeModeEvent &p_event) |
| Handles exit resize mode events. | |
| virtual void | handleQuitEvent (spk::QuitEvent &p_event) |
| Handles quit events. | |
| virtual void | handleMoveEvent (spk::MoveEvent &p_event) |
| Handles move events. | |
| virtual void | handleFullScreenModeEvent (spk::FullScreenModeEvent &p_event) |
| Handles fullscreen mode events. | |
| virtual void | handleMaximizedModeEvent (spk::MaximizedModeEvent &p_event) |
| Handles maximized mode events. | |
| virtual void | handleFocusEvent (spk::FocusEvent &p_event) |
| Handles focus events. | |
| virtual void | handleUpdateEvent (spk::UpdateEvent &p_event) |
| Handles update events. | |
| Public Member Functions inherited from spk::ActivableObject | |
| ActivableObject () | |
| Builds a deactivated object. | |
| ActivableObject (ActivationStatus p_initial) | |
| Builds with a custom initial activation state. | |
| void | activate () |
| Sets the state to Activated. | |
| void | deactivate () |
| Sets the state to Deactivated. | |
| void | toggle () |
| Toggles between activated and deactivated states. | |
| bool | isActive () const |
| Checks whether the object is currently activated. | |
| Contract | addActivationCallback (const Job &p_callback) |
| Registers a callback executed when the object activates. | |
| Contract | addDeactivationCallback (const Job &p_callback) |
| Registers a callback executed when the object deactivates. | |
| Public Member Functions inherited from spk::StatefulObject< ActivationStatus > | |
| StatefulObject (const ActivationStatus &p_initialState) | |
| Builds with an initial state. | |
| StatefulObject & | operator= (const StatefulObject &p_other)=delete |
| void | setState (const ActivationStatus &p_newState) |
| Sets a new state and triggers callbacks registered for it. | |
| ActivationStatus | state () const |
| Returns the current state. | |
| Contract | addCallback (const ActivationStatus &p_state, const Job &p_callback) |
| Subscribes a callback for a specific state. | |
Protected Member Functions | |
| virtual void | _setOwner (Entity *p_owner) |
| Assigns the owning entity. | |
| virtual void | _onGeometryChange (const spk::Extend2D &p_geometry) |
| Handles geometry changes before public callbacks. | |
| virtual void | _onPaintEvent (spk::PaintEvent &p_event) |
| Handles paint events before public callbacks. | |
| virtual void | _onKeyPressEvent (spk::KeyPressEvent &p_event) |
| Handles key press events before public callbacks. | |
| virtual void | _onKeyReleaseEvent (spk::KeyReleaseEvent &p_event) |
| Handles key release events before public callbacks. | |
| virtual void | _onGlyphEvent (spk::GlyphEvent &p_event) |
| Handles glyph input events before public callbacks. | |
| virtual void | _onMousePressEvent (spk::MousePressEvent &p_event) |
| Handles mouse press events before public callbacks. | |
| virtual void | _onMouseReleaseEvent (spk::MouseReleaseEvent &p_event) |
| Handles mouse release events before public callbacks. | |
| virtual void | _onMouseDoubleClickEvent (spk::MouseDoubleClickEvent &p_event) |
| Handles mouse double-click events before public callbacks. | |
| virtual void | _onMouseMotionEvent (spk::MouseMotionEvent &p_event) |
| Handles mouse motion events before public callbacks. | |
| virtual void | _onMouseWheelEvent (spk::MouseWheelEvent &p_event) |
| Handles mouse wheel events before public callbacks. | |
| virtual void | _onEnterResizeModeEvent (spk::EnterResizeModeEvent &p_event) |
| Handles enter resize mode events before public callbacks. | |
| virtual void | _onResizeEvent (spk::ResizeEvent &p_event) |
| Handles resize events before public callbacks. | |
| virtual void | _onExitResizeModeEvent (spk::ExitResizeModeEvent &p_event) |
| Handles exit resize mode events before public callbacks. | |
| virtual void | _onQuitEvent (spk::QuitEvent &p_event) |
| Handles quit events before public callbacks. | |
| virtual void | _onMoveEvent (spk::MoveEvent &p_event) |
| Handles move events before public callbacks. | |
| virtual void | _onFullScreenModeEvent (spk::FullScreenModeEvent &p_event) |
| Handles fullscreen mode events before public callbacks. | |
| virtual void | _onMaximizedModeEvent (spk::MaximizedModeEvent &p_event) |
| Handles maximized mode events before public callbacks. | |
| virtual void | _onFocusEvent (spk::FocusEvent &p_event) |
| Handles focus events before public callbacks. | |
| virtual void | _onUpdateEvent (spk::UpdateEvent &p_event) |
| Handles update events before public callbacks. | |
Friends | |
| class | Entity |
Additional Inherited Members | |
| Public Types inherited from spk::ActivableObject | |
| using | Contract = StatefulObject<ActivationStatus>::Contract |
| Subscription handle controlling callback lifetime. | |
| using | Job = StatefulObject<ActivationStatus>::Job |
| Callback signature executed on activation state changes. | |
| Public Types inherited from spk::StatefulObject< ActivationStatus > | |
| using | Contract |
| Handle allowing subscribers to manage callback lifetimes. | |
| using | Job |
| Callable invoked when the object transitions to a state. | |
Base class for engine components attached to entities.
| spk::Component::Component | ( | const std::wstring & | p_name | ) |
Builds a component with a name.
| p_name | Component name. |


|
protectedvirtual |
Handles enter resize mode events before public callbacks.
| p_event | Enter resize mode event. |

|
protectedvirtual |
Handles exit resize mode events before public callbacks.
| p_event | Exit resize mode event. |

|
protectedvirtual |
Handles focus events before public callbacks.
| p_event | Focus event. |

|
protectedvirtual |
Handles fullscreen mode events before public callbacks.
| p_event | Fullscreen mode event. |

|
protectedvirtual |
Handles geometry changes before public callbacks.
| p_geometry | Updated geometry. |

|
protectedvirtual |
Handles glyph input events before public callbacks.
| p_event | Glyph event. |

|
protectedvirtual |
Handles key press events before public callbacks.
| p_event | Key press event. |

|
protectedvirtual |
Handles key release events before public callbacks.
| p_event | Key release event. |

|
protectedvirtual |
Handles maximized mode events before public callbacks.
| p_event | Maximized mode event. |

|
protectedvirtual |
Handles mouse double-click events before public callbacks.
| p_event | Mouse double-click event. |

|
protectedvirtual |
Handles mouse motion events before public callbacks.
| p_event | Mouse motion event. |

|
protectedvirtual |
Handles mouse press events before public callbacks.
| p_event | Mouse press event. |

|
protectedvirtual |
Handles mouse release events before public callbacks.
| p_event | Mouse release event. |

|
protectedvirtual |
Handles mouse wheel events before public callbacks.
| p_event | Mouse wheel event. |

|
protectedvirtual |
Handles move events before public callbacks.
| p_event | Move event. |

|
protectedvirtual |
Handles paint events before public callbacks.
| p_event | Paint event. |

|
protectedvirtual |
Handles quit events before public callbacks.
| p_event | Quit event. |

|
protectedvirtual |
Handles resize events before public callbacks.
| p_event | Resize event. |

|
protectedvirtual |
Handles update events before public callbacks.
| p_event | Update event. |
Reimplemented in spk::Transform2D.

|
protectedvirtual |
Assigns the owning entity.
| p_owner | Owner entity. |
|
virtual |
Handles enter resize mode events.
| p_event | Enter resize mode event. |


|
virtual |
Handles exit resize mode events.
| p_event | Exit resize mode event. |


|
virtual |
Handles focus events.
| p_event | Focus event. |


|
virtual |
Handles fullscreen mode events.
| p_event | Fullscreen mode event. |


|
virtual |
Handles geometry change events.
| p_geometry | Updated geometry. |


|
virtual |
Handles glyph input events.
| p_event | Glyph event. |


|
virtual |
Handles key press events.
| p_event | Key press event. |


|
virtual |
Handles key release events.
| p_event | Key release event. |


|
virtual |
Handles maximized mode events.
| p_event | Maximized mode event. |


|
virtual |
Handles mouse double-click events.
| p_event | Mouse double-click event. |


|
virtual |
Handles mouse motion events.
| p_event | Mouse motion event. |


|
virtual |
Handles mouse press events.
| p_event | Mouse press event. |


|
virtual |
Handles mouse release events.
| p_event | Mouse release event. |


|
virtual |
Handles mouse wheel events.
| p_event | Mouse wheel event. |


|
virtual |
Handles move events.
| p_event | Move event. |


|
virtual |
Handles paint events.
| p_event | Paint event. |


|
virtual |
Handles quit events.
| p_event | Quit event. |


|
virtual |
Handles resize events.
| p_event | Resize event. |


|
virtual |
Handles update events.
| p_event | Update event. |


| const std::wstring & spk::Component::name | ( | ) | const |
Returns the component name.
| Entity * spk::Component::owner | ( | ) |
Returns the owning entity.
| const Entity * spk::Component::owner | ( | ) | const |
Returns the owning entity.
| int spk::Component::priority | ( | ) | const |
Returns the component priority.
| void spk::Component::setName | ( | const std::wstring & | p_name | ) |
Sets the component name.
| p_name | New name. |
| void spk::Component::setPriority | ( | const int & | p_priority | ) |
Sets the component priority.
| p_priority | Priority value. |
|
virtual |
Called when the component starts.
Reimplemented in spk::AnimationController2D, spk::CollisionMeshRenderer2D, spk::OrthographicCameraComponent2D, spk::RigidBody2D, and spk::SpriteRenderer2D.
|
virtual |
Called when the component stops.
Reimplemented in spk::RigidBody2D.