Radium Engine  1.5.20
Loading...
Searching...
No Matches
Ra::Engine::Scene::GeometryComponent Class Reference

Abstract interface of a geometric compoennet in the Engine. More...

#include <Engine/Scene/GeometryComponent.hpp>

+ Inheritance diagram for Ra::Engine::Scene::GeometryComponent:
+ Collaboration diagram for Ra::Engine::Scene::GeometryComponent:

Public Member Functions

 GeometryComponent (const std::string &name, Entity *entity)
 
void initialize () override
 Pure virtual method to be overridden by any component. When this method is called you are guaranteed that all other startup systems have been loaded.
 
virtual void setupIO (const std::string &id)
 
void setContentName (const std::string &name)
 
- Public Member Functions inherited from Ra::Engine::Scene::Component
 Component (const std::string &name, Entity *entity)
 CONSTRUCTOR.
 
virtual ~Component ()
 DESTRUCTOR.
 
virtual void setEntity (Entity *entity)
 Set entity the component is part of. This method is called by the entity.
 
virtual EntitygetEntity () const
 Return the entity the component belongs to.
 
virtual const std::stringgetName () const
 Return the component's name.
 
virtual void setSystem (System *system)
 Set the system to which the component belongs.
 
virtual SystemgetSystem () const
 Returns the system to which the component belongs.
 
Core::Utils::Index addRenderObject (Rendering::RenderObject *renderObject)
 Add a new render object to the component. This adds the RO to the manager for drawing.
 
void removeRenderObject (const Core::Utils::Index &roIdx)
 Remove the render object from the component.
 
virtual bool canEdit (const Core::Utils::Index &) const
 Returns true if a transform can be edited with the render object index given as a key.
 
virtual Core::Transform getTransform (const Core::Utils::Index &) const
 Get the transform associated with the given RO index key.
 
virtual void setTransform (const Core::Utils::Index &, const Core::Transform &)
 Set the new transform associated with the RO index key.
 
void notifyRenderObjectExpired (const Core::Utils::Index &idx)
 
virtual Core::Aabb computeAabb ()
 
void invalidateAabb ()
 
const std::vector< Core::Utils::Index > & getRenderObjects ()
 

Protected Attributes

Ra::Core::Utils::Index m_roIndex {}
 
std::string m_contentName {}
 
- Protected Attributes inherited from Ra::Engine::Scene::Component
std::string m_name {}
 
Entitym_entity { nullptr }
 
Systemm_system { nullptr }
 

Additional Inherited Members

- Public Attributes inherited from Ra::Engine::Scene::Component
std::vector< Core::Utils::Index > m_renderObjects
 
- Static Protected Member Functions inherited from Ra::Engine::Scene::Component
static Rendering::RenderObjectManager * getRoMgr ()
 Shortcut to access the render object manager.
 

Detailed Description

Abstract interface of a geometric compoennet in the Engine.

Definition at line 26 of file GeometryComponent.hpp.

Constructor & Destructor Documentation

◆ GeometryComponent()

Ra::Engine::Scene::GeometryComponent::GeometryComponent ( const std::string & name,
Entity * entity )
inline

Definition at line 29 of file GeometryComponent.hpp.

◆ ~GeometryComponent()

Ra::Engine::Scene::GeometryComponent::~GeometryComponent ( )
inlineoverride

Definition at line 31 of file GeometryComponent.hpp.

Member Function Documentation

◆ initialize()

void Ra::Engine::Scene::GeometryComponent::initialize ( )
inlineoverridevirtual

Pure virtual method to be overridden by any component. When this method is called you are guaranteed that all other startup systems have been loaded.

Implements Ra::Engine::Scene::Component.

Reimplemented in Ra::Engine::Scene::PointCloudComponent.

Definition at line 33 of file GeometryComponent.hpp.

◆ setContentName()

void Ra::Engine::Scene::GeometryComponent::setContentName ( const std::string & name)
inline

Definition at line 38 of file GeometryComponent.hpp.

◆ setupIO()

void Ra::Engine::Scene::GeometryComponent::setupIO ( const std::string & id)
virtual

Definition at line 32 of file GeometryComponent.cpp.

Member Data Documentation

◆ m_contentName

std::string Ra::Engine::Scene::GeometryComponent::m_contentName {}
protected

Definition at line 50 of file GeometryComponent.hpp.

◆ m_roIndex

Ra::Core::Utils::Index Ra::Engine::Scene::GeometryComponent::m_roIndex {}
protected

Definition at line 49 of file GeometryComponent.hpp.


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