Privacy
An open-source, flexible 3D physical simulation framework
mars::interfaces::NodeInterface Class Referenceabstract

Interface class for the physical layer. More...

#include <NodeInterface.h>

Public Member Functions

virtual ~NodeInterface ()
 
virtual bool createNode (NodeData *node)=0
 
virtual void getPosition (utils::Vector *pos) const =0
 
virtual const utils::Vector setPosition (const utils::Vector &pos, bool move_group)=0
 
virtual void getRotation (utils::Quaternion *q) const =0
 
virtual const utils::Quaternion setRotation (const utils::Quaternion &q, bool move_group)=0
 
virtual void getLinearVelocity (utils::Vector *vel) const =0
 
virtual void getAngularVelocity (utils::Vector *vel) const =0
 
virtual void getForce (utils::Vector *f) const =0
 
virtual void getTorque (utils::Vector *t) const =0
 
virtual void setWorldObject (PhysicsInterface *world)=0
 
virtual const utils::Vector rotateAtPoint (const utils::Vector &rotation_point, const utils::Quaternion &rotation, bool move_group)=0
 
virtual bool changeNode (NodeData *node)=0
 
virtual void setLinearVelocity (const utils::Vector &velocity)=0
 
virtual void setAngularVelocity (const utils::Vector &velocity)=0
 
virtual void setForce (const utils::Vector &f)=0
 
virtual void setTorque (const utils::Vector &t)=0
 
virtual void addForce (const utils::Vector &f, const utils::Vector &p)=0
 
virtual void addForce (const utils::Vector &f)=0
 
virtual void addTorque (const utils::Vector &t)=0
 
virtual bool getGroundContact (void) const =0
 
virtual void getContactPoints (std::vector< utils::Vector > *contact_points) const =0
 
virtual void getContactIDs (std::list< interfaces::NodeId > *ids) const =0
 
virtual sReal getGroundContactForce (void) const =0
 
virtual void setContactParams (contact_params &c_params)=0
 
virtual void addSensor (BaseSensor *s_cfg)=0
 
virtual void removeSensor (BaseSensor *s_cfg)=0
 
virtual void handleSensorData (bool physics_thread=true)=0
 
virtual void destroyNode (void)=0
 
virtual void getMass (sReal *mass, sReal *inertia=0) const =0
 
virtual const utils::Vector getContactForce (void) const =0
 
virtual sReal getCollisionDepth (void) const =0
 

Detailed Description

Interface class for the physical layer.

Definition at line 48 of file NodeInterface.h.

Constructor & Destructor Documentation

◆ ~NodeInterface()

virtual mars::interfaces::NodeInterface::~NodeInterface ( )
inlinevirtual

Definition at line 50 of file NodeInterface.h.

Member Function Documentation

◆ addForce() [1/2]

virtual void mars::interfaces::NodeInterface::addForce ( const utils::Vector f,
const utils::Vector p 
)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ addForce() [2/2]

virtual void mars::interfaces::NodeInterface::addForce ( const utils::Vector f)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ addSensor()

virtual void mars::interfaces::NodeInterface::addSensor ( BaseSensor s_cfg)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ addTorque()

virtual void mars::interfaces::NodeInterface::addTorque ( const utils::Vector t)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ changeNode()

virtual bool mars::interfaces::NodeInterface::changeNode ( NodeData node)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ createNode()

virtual bool mars::interfaces::NodeInterface::createNode ( NodeData node)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ destroyNode()

virtual void mars::interfaces::NodeInterface::destroyNode ( void  )
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getAngularVelocity()

virtual void mars::interfaces::NodeInterface::getAngularVelocity ( utils::Vector vel) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getCollisionDepth()

virtual sReal mars::interfaces::NodeInterface::getCollisionDepth ( void  ) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getContactForce()

virtual const utils::Vector mars::interfaces::NodeInterface::getContactForce ( void  ) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getContactIDs()

virtual void mars::interfaces::NodeInterface::getContactIDs ( std::list< interfaces::NodeId > *  ids) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getContactPoints()

virtual void mars::interfaces::NodeInterface::getContactPoints ( std::vector< utils::Vector > *  contact_points) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getForce()

virtual void mars::interfaces::NodeInterface::getForce ( utils::Vector f) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getGroundContact()

virtual bool mars::interfaces::NodeInterface::getGroundContact ( void  ) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getGroundContactForce()

virtual sReal mars::interfaces::NodeInterface::getGroundContactForce ( void  ) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getLinearVelocity()

virtual void mars::interfaces::NodeInterface::getLinearVelocity ( utils::Vector vel) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getMass()

virtual void mars::interfaces::NodeInterface::getMass ( sReal mass,
sReal inertia = 0 
) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getPosition()

virtual void mars::interfaces::NodeInterface::getPosition ( utils::Vector pos) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getRotation()

virtual void mars::interfaces::NodeInterface::getRotation ( utils::Quaternion q) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ getTorque()

virtual void mars::interfaces::NodeInterface::getTorque ( utils::Vector t) const
pure virtual

Implemented in mars::sim::NodePhysics.

◆ handleSensorData()

virtual void mars::interfaces::NodeInterface::handleSensorData ( bool  physics_thread = true)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ removeSensor()

virtual void mars::interfaces::NodeInterface::removeSensor ( BaseSensor s_cfg)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ rotateAtPoint()

virtual const utils::Vector mars::interfaces::NodeInterface::rotateAtPoint ( const utils::Vector rotation_point,
const utils::Quaternion rotation,
bool  move_group 
)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setAngularVelocity()

virtual void mars::interfaces::NodeInterface::setAngularVelocity ( const utils::Vector velocity)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setContactParams()

virtual void mars::interfaces::NodeInterface::setContactParams ( contact_params c_params)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setForce()

virtual void mars::interfaces::NodeInterface::setForce ( const utils::Vector f)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setLinearVelocity()

virtual void mars::interfaces::NodeInterface::setLinearVelocity ( const utils::Vector velocity)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setPosition()

virtual const utils::Vector mars::interfaces::NodeInterface::setPosition ( const utils::Vector pos,
bool  move_group 
)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setRotation()

virtual const utils::Quaternion mars::interfaces::NodeInterface::setRotation ( const utils::Quaternion q,
bool  move_group 
)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setTorque()

virtual void mars::interfaces::NodeInterface::setTorque ( const utils::Vector t)
pure virtual

Implemented in mars::sim::NodePhysics.

◆ setWorldObject()

virtual void mars::interfaces::NodeInterface::setWorldObject ( PhysicsInterface world)
pure virtual

Implemented in mars::sim::NodePhysics.


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