16 #ifndef SURGSIM_BLOCKS_COMPOUNDSHAPETOGRAPHICS_H 17 #define SURGSIM_BLOCKS_COMPOUNDSHAPETOGRAPHICS_H 47 SURGSIM_STATIC_REGISTRATION(CompoundShapeToGraphics);
63 void update(
double dt)
override;
65 int getTargetManagerType()
const override;
67 bool doInitialize()
override;
69 bool doWakeUp()
override;
73 void setShape(
const std::shared_ptr<Math::Shape>& shape);
78 void setSource(
const std::shared_ptr<Framework::Component>& component);
84 void setTargets(
const std::vector<std::shared_ptr<Framework::Component>> components);
89 void addTarget(
const std::shared_ptr<Framework::Component>& component);
92 std::vector<std::shared_ptr<Framework::Component>> getTargets()
const;
95 std::shared_ptr<Math::CompoundShape> getShape()
const;
98 std::shared_ptr<Framework::Component> getSource()
const;
Definition: CompoundShapeToGraphics.cpp:29
Component is the main interface class to pass information to the system managers each will decide whe...
Definition: Component.h:42
Keep a set of Graphics representations in sync with a CompoundShape, the shape can either be set dire...
Definition: CompoundShapeToGraphics.h:52
#define SURGSIM_CLASSNAME(ClassName)
Declare the class name of a class with the appropriate function header, do not use quotes...
Definition: Macros.h:21
Definition: CompoundShape.h:36
std::vector< std::shared_ptr< Graphics::Representation > > m_representations
List of graphics targets for updating.
Definition: CompoundShapeToGraphics.h:109
Base graphics representation class, which defines the interface that all graphics representations mus...
Definition: Representation.h:39
Behaviors perform actions.
Definition: Behavior.h:40
std::shared_ptr< Framework::Component > m_source
Source representation if known.
Definition: CompoundShapeToGraphics.h:106
Representations are manifestations of a SceneElement.
Definition: Representation.h:33
std::shared_ptr< Math::CompoundShape > m_shape
Source shape used for updating.
Definition: CompoundShapeToGraphics.h:103
Generic rigid shape class defining a shape.
Definition: Shape.h:65