opensurgsim
|
Behaviors perform actions. More...
#include <Behavior.h>
Public Member Functions | |
Behavior (const std::string &name) | |
virtual void | update (double dt)=0 |
Update the behavior. More... | |
virtual int | getTargetManagerType () const |
Specifies which manger will handle this behavior. | |
![]() | |
Component (const std::string &name) | |
Constructor. More... | |
virtual | ~Component () |
Destructor. | |
std::string | getName () const |
Gets component name. More... | |
std::string | getFullName () const |
Gets a string containing the name of the Component and (if it has one) its SceneElement. More... | |
void | setName (const std::string &name) |
Sets the name of component. More... | |
boost::uuids::uuid | getUuid () const |
Gets the id of the component. | |
bool | isInitialized () const |
bool | initialize (const std::weak_ptr< Runtime > &runtime) |
Initialize this component, this needs to be called before wakeUp() can be called. More... | |
bool | isAwake () const |
bool | wakeUp () |
Wakeup this component, this will be called when the component is inserted into the ComponentManager that is responsible for handling this component. More... | |
void | retire () |
Retire this component, this will be called when the component is removed from the ComponentManager that is responsible for handling this component. More... | |
void | setScene (std::weak_ptr< Scene > scene) |
Sets the scene. More... | |
std::shared_ptr< Scene > | getScene () |
Gets the scene. More... | |
void | setSceneElement (std::weak_ptr< SceneElement > sceneElement) |
Sets the scene element. More... | |
std::shared_ptr< SceneElement > | getSceneElement () |
Gets the scene element. More... | |
std::shared_ptr< const SceneElement > | getSceneElement () const |
Gets the scene element, constant version. More... | |
std::shared_ptr< Runtime > | getRuntime () const |
Get the runtime which contains this component. More... | |
virtual std::string | getClassName () const |
The class name for this class, this being the base class it should return SurgSim::Framework::Component but this would make missing implemenentations of this hard to catch, therefore this calls SURGSIM_FAILURE. More... | |
std::shared_ptr< Component > | getSharedPtr () |
Gets a shared pointer to this component. More... | |
virtual bool | doInitialize ()=0 |
Interface to be implemented by derived classes. More... | |
virtual bool | doWakeUp ()=0 |
Interface to be implemented by derived classes. More... | |
virtual void | doRetire () |
Interface to be implemented by derived classes Has a default implementation, does nothing. | |
bool | isActive () const |
virtual void | setLocalActive (bool val) |
Set the component's active state. More... | |
bool | isLocalActive () const |
![]() | |
Accessible () | |
Default Constructor. | |
~Accessible () | |
Destructor. | |
template<class T > | |
T | getValue (const std::string &name) const |
Retrieves the value with the name by executing the getter if it is found and tries to convert it to the given type. More... | |
boost::any | getValue (const std::string &name) const |
Retrieves the value with the name by executing the getter if it is found. More... | |
template<class T > | |
bool | getValue (const std::string &name, T *value) const |
Retrieves the value with the name by executing the getter if it is found, and converts it to the type of the output parameter. More... | |
void | setValue (const std::string &name, const boost::any &value) |
Sets a value of a property that has setter. More... | |
bool | isReadable (const std::string &name) const |
Check whether a property is readable. More... | |
bool | isWriteable (const std::string &name) const |
Check whether a property is writable. More... | |
void | setGetter (const std::string &name, GetterType func) |
Sets a getter for a given property. More... | |
void | setSetter (const std::string &name, SetterType func) |
Sets a setter for a given property. More... | |
void | setAccessors (const std::string &name, GetterType getter, SetterType setter) |
Sets the accessors getter and setter in one function. More... | |
void | removeAccessors (const std::string &name) |
Removes all the accessors (getter and setter) for a given property. More... | |
void | forwardProperty (const std::string &name, const Accessible &target, const std::string &targetProperty) |
Adds a property with the given name that uses the targets accessors, in effect forwarding the value to the target. More... | |
void | setSerializable (const std::string &name, EncoderType encoder, DecoderType decoder) |
Sets the functions used to convert data from and to a YAML::Node. More... | |
void | setDecoder (const std::string &name, DecoderType decoder) |
Sets the functions used to convert data from a YAML::Node. More... | |
YAML::Node | encode () const |
Encode this Accessible to a YAML::Node. More... | |
void | decode (const YAML::Node &node, const std::vector< std::string > &ignoredProperties=std::vector< std::string >()) |
Decode this Accessible from a YAML::Node, will throw an exception if the data type cannot be converted. More... | |
std::vector< std::string > | getProperties () |
template<> | |
boost::any | getValue (const std::string &name) const |
Additional Inherited Members | |
![]() | |
typedef std::function< boost::any(void)> | GetterType |
typedef std::function< void(boost::any)> | SetterType |
typedef std::function< YAML::Node(void)> | EncoderType |
typedef std::function< void(const YAML::Node *)> | DecoderType |
![]() | |
typedef ObjectFactory1< Component, std::string > | FactoryType |
![]() | |
static FactoryType & | getFactory () |
![]() | |
virtual std::shared_ptr< PoseComponent > | getPoseComponent () |
Get the PoseComponent for this component. More... | |
virtual std::shared_ptr< const PoseComponent > | getPoseComponent () const |
Get the PoseComponent for this component, constant access. More... | |
Behaviors perform actions.
They can update components, facilitate communication between components, and create new components. They are updated periodicly by the BehaviorManager through update() call.
|
pure virtual |
Update the behavior.
dt | The length of time (seconds) between update calls. |
Implemented in MockBehavior, SurgSim::Physics::VirtualToolCoupler, SurgSim::Blocks::TransferPhysicsToGraphicsMeshBehavior, SurgSim::Blocks::FunctionBehavior, StaplerBehavior, SurgSim::Graphics::PaintBehavior, SurgSim::Blocks::PoseInterpolator, SurgSim::Blocks::KeyboardTogglesComponentBehavior, PrintoutBehavior, SurgSim::Framework::TransferPropertiesBehavior, SurgSim::Particles::Sink, SurgSim::Particles::Emitter, SurgSim::Blocks::TransferParticlesToPointCloudBehavior, SurgSim::Blocks::TransferPhysicsToPointCloudBehavior, SurgSim::Blocks::VisualizeConstraintsBehavior, SurgSim::Blocks::DriveElementFromInputBehavior, SurgSim::Blocks::TransferPhysicsToVerticesBehavior, SurgSim::Framework::SamplingMetricBase, SurgSim::Blocks::CompoundShapeToGraphics, SurgSim::Blocks::KeyboardCallbackBehavior, SurgSim::Blocks::VisualizeContactsBehavior, SurgSim::Blocks::KnotIdentificationBehavior, SurgSim::EditDebug::VisualDebugBehavior, SurgSim::Framework::MockReceiver, SurgSim::Blocks::KeyBehavior, SurgSim::Blocks::AddRandomSphereBehavior, MockEmitter, and AddSphereFromInputBehavior.