RobWorkProject  23.9.11-
Public Types | Public Member Functions | Public Attributes | List of all members
ConstraintNode Class Reference

The ConstraintNode describes a specific object that can be constrained in some way. It is an interface that enables inheriting classes to be used by the ConstraintGraph class. The specific constraints between ConstraintNode's are described by the ConstraintEdge. More...

#include <ConstraintNode.hpp>

Public Types

enum  NodeType {
  Rigid , Fixed , Link , Scripted ,
  Part , CompositeBody , MultiBody , Rule ,
  Trigger , Timer
}
 types of constraintnodes
 

Public Member Functions

 ConstraintNode (NodeType type, int id)
 
 ConstraintNode (ConstraintNode *parent, NodeType type, int id)
 
void setType (NodeType type)
 
void setDeleted (bool del)
 hmm?
 
bool isDeleted () const
 hmm?
 
bool isPassive () const
 hmm?
 
bool isPhysical () const
 returns true if this node has physical
 
bool isTrigger () const
 returns true is this node is of the type trigger
 
void addEdge (ConstraintEdge &edge)
 ad a constraint to this node
 
std::list< ConstraintEdge * > & getEdges ()
 returns the list of constraints that works on this node
 
void removeEdge (ConstraintEdge *edge)
 removes a constraint (Edge) from this node
 
NodeType getNodeType () const
 return the type of this node
 
ConstraintNodegetParentNode ()
 
void setFrame (rw::core::Ptr< rw::kinematics::Frame > frame)
 
rw::kinematics::FramegetFrame ()
 return the frames which this node is associated with
 
void setID (int id)
 
int getID () const
 
RWBodygetBody ()
 
void setBody (RWBody *body)
 

Public Attributes

void * data
 
int _idx
 

Detailed Description

The ConstraintNode describes a specific object that can be constrained in some way. It is an interface that enables inheriting classes to be used by the ConstraintGraph class. The specific constraints between ConstraintNode's are described by the ConstraintEdge.

A ConstraintNode will allways be related to a frame. Multiple ConstraintNodes cannot point to the same frame. Which means that there is a one-to-one relationship between frame and node.


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