Resources

Topics

RobWorkProject
Classes | Typedefs | Functions
rwlibs::swig Namespace Reference

Define helper functions and all the classes that are being wrapped by SWIG. The wrapped classes are defined as typedefs of other classes in RobWork. More...

Classes

class  LuaState
 a robwork wrapper for the lua_State struct. The standard robwork lua libs will be initialized automatically. Also this provides an extension point for adding user defined lua enabled libraries. More...
 

Typedefs

typedef rw::RobWork RobWork
 RobWork instance which holds objects to be shared among multiple plugins. More...
 
common

Wrapped classes in common.

typedef rw::common::PropertyMap PropertyMap
 Container for a collection of Property Objects. More...
 
typedef rw::common::ThreadPool ThreadPool
 A thread pool that can be assigned work. More...
 
typedef rw::common::ThreadTask ThreadTask
 A task that facilitates the use of a hierarchic tree of tasks and subtasks. More...
 
typedef rw::common::Plugin Plugin
 an interface for defining dynamically loadable plugins that define extensions and extension points. More...
 
typedef rw::common::Extension Extension
 The Extension class is used to provide additonal functionality from a Plugin to other extension points of either the system or other plugins. More...
 
typedef rw::common::Extension::Descriptor ExtensionDescriptor
 An extension descriptor. More...
 
typedef rw::common::ExtensionRegistry ExtensionRegistry
 an extension point is a class that defines a point where Extension can be added. This is typically used together with plugins, however any class may register extensions to an extension point. More...
 
geometry

Wrapped classes in geometry.

typedef rw::geometry::GeometryData GeometryData
 an interface for geometry data. More...
 
typedef rw::geometry::GeometryData::GeometryType GeometryType
 geometry data types More...
 
typedef rw::geometry::Primitive Primitive
 defines an interface for a geometric shape that is defined by a set of parameters. More...
 
typedef rw::geometry::Box Box
 a box primitive, origin is in center of box More...
 
typedef rw::geometry::Cone Cone
 cone primitive. Like a cylinder though where a radius can be specified for both ends. More...
 
typedef rw::geometry::Sphere Sphere
 a sphere primitive. centr in (0,0,0) and a radius. More...
 
typedef rw::geometry::Plane Plane
 plane primitive represented in Hessian normal-form: a*nx+b*ny+c*nz+d=0 More...
 
typedef rw::geometry::Cylinder Cylinder
 a cylinder primitive. radius is in x-y plane and height is in z-axis More...
 
typedef rw::geometry::Triangle< double > Triangle
 plain triangle class. The second template argument specify the number of normals associated with the triangle. The triangle vertices should be arranged counter clock wise. More...
 
typedef rw::geometry::Triangle< float > Trianglef
 plain triangle class. The second template argument specify the number of normals associated with the triangle. The triangle vertices should be arranged counter clock wise. More...
 
typedef rw::geometry::TriangleN1< double > TriangleN1
 Triangle facet. triangle class of type N1, which means that beside the plain triangle the face normal of the triangle is saved with the facenormal. More...
 
typedef rw::geometry::TriangleN1< float > TriangleN1f
 Triangle facet. triangle class of type N1, which means that beside the plain triangle the face normal of the triangle is saved with the facenormal. More...
 
typedef rw::geometry::TriMesh TriMesh
 interface of a triangle mesh. The interface defines a way to get triangles from a triangle array/mesh. More...
 
typedef rw::geometry::PlainTriMesh< TrianglePlainTriMesh
 a triangle mesh representation that maintains a list of simple triangles. More...
 
typedef rw::geometry::PlainTriMesh< TrianglefPlainTriMeshf
 a triangle mesh representation that maintains a list of simple triangles. More...
 
typedef rw::geometry::PlainTriMesh< TriangleN1PlainTriMeshN1
 a triangle mesh representation that maintains a list of simple triangles. More...
 
typedef rw::geometry::PlainTriMesh< TriangleN1fPlainTriMeshN1f
 a triangle mesh representation that maintains a list of simple triangles. More...
 
typedef rw::geometry::ConvexHull3D ConvexHull3D
 interface for convexhull calculators on 3d point sets More...
 
typedef rw::geometry::Geometry Geometry
 a class for representing a geometry that is scaled and transformed, and which is attached to a frame. More...
 
typedef rw::geometry::PointCloud PointCloud
 A simple point cloud data structure. Points may be ordered or not. An ordered set is kept as a single array in row major order and with a width and a height. An unordered array must have height==1 and width equal to the number of points. More...
 
graphics

Wrapped classes in graphics.

typedef rw::graphics::Model3D Model3D
 a 3d model that has geometry but also material, color and texture information. the model can be composed of multiple objects that are connected in a hierarchical manner. The model is designed for efficient drawing and as such special structures are used to order the indexes such that efficient drawing is possible. More...
 
typedef rw::graphics::Model3D::Material Model3DMaterial
 describes material properties. A material can be either simple or "advanced" and in both cases it can be textured. A simple material is described by a 4-tuple of RGBA values. The advanced material defines multiple properties: diffuse, ambient, emissive, specular, shininess and transparency More...
 
typedef rw::graphics::WorkCellScene WorkCellScene
 class for wrapping the SceneGraph interface such that it extends the scene-graph functionality to work on frames and workcells. More...
 
typedef rw::graphics::SceneViewer SceneViewer
 interface for viewing a scene graph. More...
 
typedef rw::graphics::SceneNode SceneNode
 a node that can have leafs (DrawableNode) or other nodes as children. More...
 
typedef rw::graphics::DrawableNode DrawableNode
 Abstract base class for all drawable classes. More...
 
invkin

Wrapped classes in invkin.

typedef rw::invkin::InvKinSolver InvKinSolver
 Interface for inverse kinematics algorithms. More...
 
typedef rw::invkin::IterativeIK IterativeIK
 Interface for iterative inverse kinematics algorithms. More...
 
typedef rw::invkin::JacobianIKSolver JacobianIKSolver
 A Jacobian based iterative inverse kinematics algorithm for devices with a single end effector. More...
 
typedef rw::invkin::IterativeMultiIK IterativeMultiIK
 Interface for iterative inverse kinematics algorithms for problems or devices that utilize more than one end-effector. More...
 
typedef rw::invkin::JacobianIKSolverM JacobianIKSolverM
 A Jacobian based iterative inverse kinematics algorithm for devices with multiple end effectors. More...
 
typedef rw::invkin::IKMetaSolver IKMetaSolver
 Solve the inverse kinematics problem with respect to joint limits and collisions. More...
 
typedef rw::invkin::ClosedFormIK ClosedFormIK
 Interface for closed form inverse kinematics algorithms. More...
 
typedef rw::invkin::PieperSolver PieperSolver
 Calculates the closed form inverse kinematics of a device using Piepers method. More...
 
kinematics

Wrapped classes in kinematics.

typedef rw::kinematics::StateData StateData
 the basic building block for the stateless design using the StateStructure class. A StateData represents a size, a unique id, and a unique name, when inserted into the StateStructure. The size will allocate "size"-doubles in State objects originating from the StateStructure. More...
 
typedef rw::kinematics::Frame Frame
 The type of node of forward kinematic trees. More...
 
typedef rw::kinematics::MovableFrame MovableFrame
 MovableFrame is a frame for which it is possible to freely change the transform relative to the parent. More...
 
typedef rw::kinematics::FixedFrame FixedFrame
 FixedFrame is a frame for which the transform relative to the parent is constant. More...
 
typedef rw::kinematics::State State
 The state of a work cell (or kinematics tree). More...
 
typedef rw::kinematics::StateStructure StateStructure
 the StateStructure is responsible for handling a structure of StateData and Frames More...
 
loaders

Wrapped classes in loaders.

typedef rw::loaders::ImageLoader ImageLoader
 Image loader interface. More...
 
typedef rw::loaders::ImageLoader::Factory ImageLoaderFactory
 a factory for ImageLoader. This factory also defines an extension point for image loaders. More...
 
typedef rw::loaders::WorkCellLoader WorkCellLoader
 Defines an interface. More...
 
typedef rw::loaders::WorkCellLoader::Factory WorkCellLoaderFactory
 a factory for WorkCellLoader. This factory also defines an extension point for workcell loaders. More...
 
typedef rw::loaders::STLFile STLFile
 static methods for reading and writing geometry to and from STL files. More...
 
math

Wrapped classes in math.

typedef rw::math::Vector2D< double > Vector2d
 A 2D vector $ \mathbf{v}\in \mathbb{R}^2 $. More...
 
typedef rw::math::Vector2D< float > Vector2f
 A 2D vector $ \mathbf{v}\in \mathbb{R}^2 $. More...
 
typedef rw::math::Vector3D< double > Vector3d
 A 3D vector $ \mathbf{v}\in \mathbb{R}^3 $. More...
 
typedef rw::math::Vector3D< float > Vector3f
 A 3D vector $ \mathbf{v}\in \mathbb{R}^3 $. More...
 
typedef rw::math::Rotation3D< double > Rotation3d
 A 3x3 rotation matrix $ \mathbf{R}\in SO(3) $. More...
 
typedef rw::math::Rotation3D< float > Rotation3f
 A 3x3 rotation matrix $ \mathbf{R}\in SO(3) $. More...
 
typedef rw::math::EAA< double > EAAd
 A class for representing an equivalent angle-axis rotation. More...
 
typedef rw::math::EAA< float > EAAf
 A class for representing an equivalent angle-axis rotation. More...
 
typedef rw::math::RPY< double > RPYd
 A class for representing Roll-Pitch-Yaw Euler angle rotations. More...
 
typedef rw::math::RPY< float > RPYf
 A class for representing Roll-Pitch-Yaw Euler angle rotations. More...
 
typedef rw::math::Quaternion< double > Quaterniond
 A Quaternion $ \mathbf{q}\in \mathbb{R}^4 $ a complex number used to describe rotations in 3-dimensional space. $ q_w+{\bf i}\ q_x+ {\bf j} q_y+ {\bf k}\ q_z $. More...
 
typedef rw::math::Quaternion< float > Quaternionf
 A Quaternion $ \mathbf{q}\in \mathbb{R}^4 $ a complex number used to describe rotations in 3-dimensional space. $ q_w+{\bf i}\ q_x+ {\bf j} q_y+ {\bf k}\ q_z $. More...
 
typedef rw::math::Transform3D< double > Transform3d
 A 4x4 homogeneous transform matrix $ \mathbf{T}\in SE(3) $. More...
 
typedef rw::math::Transform3D< float > Transform3f
 A 4x4 homogeneous transform matrix $ \mathbf{T}\in SE(3) $. More...
 
typedef rw::math::Pose6D< double > Pose6d
 A Pose6D $ \mathbf{x}\in \mathbb{R}^6 $ describes a position and orientation in 3-dimensions. More...
 
typedef rw::math::Pose6D< float > Pose6f
 A Pose6D $ \mathbf{x}\in \mathbb{R}^6 $ describes a position and orientation in 3-dimensions. More...
 
typedef rw::math::VelocityScrew6D< double > Screw6d
 Class for representing 6 degrees of freedom velocity screws. More...
 
typedef rw::math::VelocityScrew6D< float > Screw6f
 Class for representing 6 degrees of freedom velocity screws. More...
 
typedef rw::math::Wrench6D< double > Wrench6d
 Class for representing 6 degrees of freedom wrenches. More...
 
typedef rw::math::Wrench6D< float > Wrench6f
 Class for representing 6 degrees of freedom wrenches. More...
 
typedef rw::math::InertiaMatrix< double > InertiaMatrixd
 A 3x3 inertia matrix. More...
 
typedef rw::math::InertiaMatrix< float > InertiaMatrixf
 A 3x3 inertia matrix. More...
 
typedef rw::math::Q Q
 Configuration vector. More...
 
typedef rw::math::Jacobian Jacobian
 A Jacobian class. A jacobian with m rows and n columns. More...
 
typedef rw::math::QMetric MetricQ
 Metrics on configurations. More...
 
typedef rw::math::Transform3DMetric MetricSE3
 Metric on Transdform3D. More...
 
typedef Eigen::MatrixXd Matrix
 Wrapping of an Eigen matrix.
 
models

Wrapped classes in models.

typedef rw::models::WorkCell WorkCell
 WorkCell keeps track of devices, obstacles and objects in the scene. More...
 
typedef rw::models::Joint Joint
 A Joint is a Frame with assignable values for position, velocity limits and acceleration limits. More...
 
typedef rw::models::RevoluteJoint RevoluteJoint
 Revolute joints. More...
 
typedef rw::models::PrismaticJoint PrismaticJoint
 Prismatic joints. More...
 
typedef rw::models::Object Object
 The object class represents a physical thing in the scene which has geometry. An object has a base frame (similar to a Device) and may have a number of associated frames. More...
 
typedef rw::models::DeformableObject DeformableObject
 The deformable object is an object that contain a deformable mesh. Deformations are part of the state object and they are modeled/controlled through control nodes. each control node correspond to a vertice in the mesh. All vertices are described relative to the base frame of the object. More...
 
typedef rw::models::RigidObject RigidObject
 the RigidObject defines a physical object in the workcell that is rigid in the sence that the geometry does not change. The rigid object also have basic properties such as Inertia and mass. These are default 1.0 kg and inertia of solid sphere with mass 1.0kg and radius of 10cm. The center of mass defaults to origin of the base frame. More...
 
typedef rw::models::Device Device
 An abstract device class. More...
 
typedef rw::models::JointDevice JointDevice
 A device for a sequence of joints. More...
 
typedef rw::models::SerialDevice SerialDevice
 The device for a serial chain. More...
 
typedef rw::models::TreeDevice TreeDevice
 A tree structured device. More...
 
typedef rw::models::CompositeDevice CompositeDevice
 A device constructed from a sequence of devices. More...
 
typedef rw::models::ParallelDevice ParallelDevice
 This class defines the interface for Parallel devices. More...
 
typedef rw::models::DHParameterSet DHParameterSet
 Simple class to help represent a set of Denavit-Hartenberg parameters. More...
 
pathplanning

Wrapped classes in pathplanning.

typedef rw::pathplanning::QToQPlanner QToQPlanner
 Path planner interface. More...
 
typedef rw::pathplanning::QToTPlanner QToTPlanner
 Approach planner interface. More...
 
typedef rw::pathplanning::StopCriteria StopCriteria
 StopCriteria is a class for specifying an instant a compution should be aborted. More...
 
typedef rw::pathplanning::PlannerConstraint PlannerConstraint
 A tuple of (QConstraintPtr, QEdgeConstraintPtr). More...
 
proximity

Wrapped classes in proximity.

typedef rw::proximity::CollisionDetector CollisionDetector
 The CollisionDetector implements an efficient way of checking a complete frame tree for collisions. More...
 
typedef rw::proximity::CollisionStrategy CollisionStrategy
 An interface that defines methods to test collision between two objects. More...
 
typedef rw::proximity::DistanceCalculator DistanceCalculator
 The DistanceCalculator implements an efficient way of calculating different distances between two objects, each represented by a frame. More...
 
typedef rw::proximity::DistanceStrategy DistanceStrategy
 This is an interface that defines methods for computing the minimum distance between geometric objects. If geometry objects has been related to frames (see ProximityStrategy) then distance functions computing the distance between the geometry attached to frames can also be used. More...
 
sensor

Wrapped classes in sensor.

typedef rw::sensor::Image Image
 The image class is a simple wrapper around a char data array. This Image wrapper contain information of width, height and encoding. More...
 
typedef rw::sensor::Sensor Sensor
 a generel hardware sensor interface. The sensor should interface to a statefull instance of either a real world sensor or a simulated sensor. The sensor interface acts as a realistic handle to controlling some specific instance of a sensor. More...
 
assembly

Wrapped classes in assembly.

typedef rwlibs::assembly::AssemblyControlResponse AssemblyControlResponse
 The output from a AssemblyControlStrategy. More...
 
typedef rwlibs::assembly::AssemblyControlStrategy AssemblyControlStrategy
 The interface for control strategies for assembly. More...
 
typedef rwlibs::assembly::AssemblyParameterization AssemblyParameterization
 Interface for a parameterization that can be used by a AssemblyControlStrategy. More...
 
typedef rwlibs::assembly::AssemblyRegistry AssemblyRegistry
 A registry of control strategies. The registry defines an extension point. More...
 
typedef rwlibs::assembly::AssemblyResult AssemblyResult
 A specification of the result from an execution of an AssemblyTask. More...
 
typedef rwlibs::assembly::AssemblyState AssemblyState
 Information about the trajectory of the objects and sensor information during execution. More...
 
typedef rwlibs::assembly::AssemblyTask AssemblyTask
 Specification of a AssemblyTask. More...
 
trajectory

Wrapped classes in trajectory.

typedef rw::trajectory::Blend< QBlendQ
 Interface for blending. More...
 
typedef rw::trajectory::Blend< double > BlendR1
 Interface for blending. More...
 
typedef rw::trajectory::Blend< Vector2dBlendR2
 Interface for blending. More...
 
typedef rw::trajectory::Blend< Vector3dBlendR3
 Interface for blending. More...
 
typedef rw::trajectory::Blend< Rotation3dBlendSO3
 Interface for blending. More...
 
typedef rw::trajectory::Blend< Transform3dBlendSE3
 Interface for blending. More...
 
typedef rw::trajectory::TimedState TimedState
 A tuple of (time, State). See rw::trajectory::Timed<t> template for more info. More...
 
typedef rw::trajectory::Path< QPathQ
 
typedef rw::trajectory::TimedStatePath PathTimedState
 Path of rw::kinematics::State with associated times. More...
 
typedef rw::trajectory::Trajectory< StateTrajectoryState
 Interface for Trajectories in RobWork. More...
 
typedef rw::trajectory::Trajectory< QTrajectoryQ
 Interface for Trajectories in RobWork. More...
 
typedef rw::trajectory::Trajectory< double > TrajectoryR1
 Interface for Trajectories in RobWork. More...
 
typedef rw::trajectory::Trajectory< Vector2dTrajectoryR2
 Interface for Trajectories in RobWork. More...
 
typedef rw::trajectory::Trajectory< Vector3dTrajectoryR3
 Interface for Trajectories in RobWork. More...
 
typedef rw::trajectory::Trajectory< Rotation3dTrajectorySO3
 Interface for Trajectories in RobWork. More...
 
typedef rw::trajectory::Trajectory< Transform3dTrajectorySE3
 Interface for Trajectories in RobWork. More...
 
typedef rw::trajectory::LinearInterpolator< double > LinearInterpolator
 Make a linear interpolation between to position. More...
 
typedef rw::trajectory::LinearInterpolator< rw::math::QLinearInterpolatorQ
 Make a linear interpolation between to position. More...
 
typedef rw::trajectory::LinearInterpolator< Vector2dLinearInterpolatorR2
 Make a linear interpolation between to position. More...
 
typedef rw::trajectory::LinearInterpolator< rw::math::Rotation3D< double > > LinearInterpolatorR3
 Make a linear interpolation between to position. More...
 
typedef rw::trajectory::LinearInterpolator< rw::math::Rotation3D< double > > LinearInterpolatorSO3
 Make a linear interpolation between to position. More...
 
typedef rw::trajectory::LinearInterpolator< rw::math::Transform3D< double > > LinearInterpolatorSE3
 Make a linear interpolation between to position. More...
 
typedef rw::trajectory::RampInterpolator< double > RampInterpolator
 Make a ramp interpolation between two position. More...
 
typedef rw::trajectory::RampInterpolator< rw::math::QRampInterpolatorQ
 Make a ramp interpolation between two position. More...
 
typedef rw::trajectory::RampInterpolator< Vector2dRampInterpolatorR2
 Make a ramp interpolation between two position. More...
 
typedef rw::trajectory::RampInterpolator< Vector3dRampInterpolatorR3
 Make a ramp interpolation between two position. More...
 
typedef rw::trajectory::RampInterpolator< rw::math::Rotation3D< double > > RampInterpolatorSO3
 Make a ramp interpolation between two position. More...
 
typedef rw::trajectory::RampInterpolator< rw::math::Transform3D< double > > RampInterpolatorSE3
 Make a ramp interpolation between two position. More...
 
typedef rw::trajectory::Timed< AssemblyStateTimedAssemblyState
 A tuple of (time, value). More...
 
typedef rw::trajectory::Path< rw::trajectory::Timed< AssemblyState > > PathTimedAssemblyState
 
control

Wrapped classes in control.

typedef rwlibs::control::Controller Controller
 interface that defines functionality for control of devices and actuators More...
 
typedef rwlibs::control::JointController JointController
 the joint controller interface describe how to input to a joint controller. The output Force, Vel, Pos... must be available in the class implementing JointController interface More...
 
pathoptimization

Wrapped classes in pathoptimization.

typedef rwlibs::pathoptimization::PathLengthOptimizer PathLengthOptimizer
 The PathLengthOptimizer implements the 3 different path length optimizers presented in [1]. More...
 
typedef rwlibs::pathoptimization::ClearanceOptimizer ClearanceOptimizer
 The ClearanceOptimizer implements the C-Retraction algorithms from [1]. More...
 
simulation

Wrapped classes in simulation.

typedef rwlibs::simulation::SimulatedController SimulatedController
 interface of a simulated controller More...
 
typedef rwlibs::simulation::SimulatedSensor SimulatedSensor
 simulated sensor interface More...
 
typedef rwlibs::simulation::Simulator Simulator
 interface of a general simulator More...
 
typedef rwlibs::simulation::Simulator::UpdateInfo UpdateInfo
 step info is used when updating controllers, devices and bodies. More...
 
task

Wrapped classes in task.

typedef rwlibs::task::Task< rw::math::Transform3D< double > > TaskSE3
 Template based implementation of Task. More...
 
typedef rwlibs::task::GraspTask GraspTask
 A container for describing one or multiple grasping tasks. It is based on the rwlibs::tasks library. More...
 
typedef rwlibs::task::GraspSubTask GraspSubTask
 Describes a sub task of overall grasp task. More...
 
typedef rwlibs::task::GraspTarget GraspTarget
 Represents a single target for grasping (described as a pose), and its result. More...
 
typedef rwlibs::task::GraspResult GraspResult
 Describes the result of a single grasp. More...
 

Functions

int openLuaLibRW (lua_State *L)
 initialize a lua state More...
 
void writelog (const std::string &msg)
 Write message to log. More...
 
void setlog (::rw::common::LogWriter::Ptr writer)
 Set the writer to write log to. More...
 
template<typename T >
std::string toString (const T &x)
 Convert an entity to string. More...
 
template<typename T >
char * printCString (const std::vector< T > &x)
 Convert a vector of entities to a C string. More...
 
template<typename T >
char * printCString (const T &x)
 Convert an entity to a C string. More...
 
Rotation3d getRandomRotation3D ()
 Math helper function to obtain random rotation. More...
 
Transform3d getRandomTransform3D (const double translationLength=1)
 Math helper function to obtain random transform. More...
 

Detailed Description

Define helper functions and all the classes that are being wrapped by SWIG. The wrapped classes are defined as typedefs of other classes in RobWork.

SWIG generated interface for Robwork. The supported generated interface languages are: Lua, Python and Java.

The SWIG interface to RobWork is very similar to the RobWork c++ interface. However, due to limitations in other languages, then the interfaces cannot match the c++ interface exactly. Class's in this module are documented as c++ classes with c++ functions, but they really only define the classes and functions that was wrapped and available through SWIG.

Function Documentation

int rwlibs::swig::openLuaLibRW ( lua_State *  L)

initialize a lua state

Parameters
L
Returns