cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
mtsVFBase Class Referenceabstract

This is the base class for all virtual fixture objects. More...

#include <mtsVFBase.h>

Inheritance diagram for mtsVFBase:
mtsGenericObject cmnGenericObject mtsVFCartesianOrientation mtsVFCartesianTranslation mtsVFJointPosition mtsVFJointVelocity mtsVFPlane mtsVF_RCM mtsVFAbsoluteJointLimits mtsVFFollow mtsVFFollow mtsVFFollowJacobian mtsVFJointLimits mtsVFSensorCompliance

Public Types

enum  CONTROLLERMODE { JPOS = 1, JVEL = 2 }
 

Public Member Functions

 mtsVFBase ()
 
 mtsVFBase (const std::string &name, mtsVFDataBase *data)
 
 ~mtsVFBase ()
 
void ReserveSpace (nmrConstraintOptimizer &co)
 Reserves space in the control optimizer. More...
 
void LookupStateData (const std::map< std::string, prmKinematicsState * > &k, const std::map< std::string, prmSensorState * > &s)
 Updates internal state data. More...
 
void SetTableauRefs (nmrConstraintOptimizer &co)
 Updates internal references with co tableau. More...
 
virtual void FillInTableauRefs (const mtsVFBase::CONTROLLERMODE Mode, const double TickTime)=0
 Updates co with virtual fixture data. More...
 
vctDoubleMat Skew (const vctDoubleVec &in)
 
virtual void ConvertRefs (const mtsVFBase::CONTROLLERMODE mode, const double TickTime)=0
 Converts the data in the references if a change in mode is needed. More...
 
virtual void AssignRefs (const mtsVFBase::CONTROLLERMODE, const double, const vctDoubleVec &, vctDoubleMat &, vctDoubleVec &, vctDoubleMat &, vctDoubleVec &, vctDoubleMat &, vctDoubleVec &)
 
- Public Member Functions inherited from mtsGenericObject
 mtsGenericObject (void)
 
 mtsGenericObject (double timestamp, bool automaticTimestamp, bool valid)
 
 mtsGenericObject (const mtsGenericObject &other)
 
virtual ~mtsGenericObject (void)
 
bool SetTimestampIfAutomatic (double timestamp)
 
virtual void ToStream (std::ostream &outputStream) const
 
virtual void ToStreamRaw (std::ostream &outputStream, const char delimiter= ' ', bool headerOnly=false, const std::string &headerPrefix="") const
 
virtual bool FromStreamRaw (std::istream &inputStream, const char delimiter= ' ')
 
virtual void SerializeRaw (std::ostream &outputStream) const
 
virtual void DeSerializeRaw (std::istream &inputStream)
 
size_t ScalarNumber (void) const
 
bool ScalarNumberIsFixed (void) const
 
double Scalar (const size_t index) const throw (std::out_of_range)
 
std::string ScalarDescription (const size_t index, const std::string &userDescription="") const throw (std::out_of_range)
 
- Public Member Functions inherited from cmnGenericObject
virtual ~cmnGenericObject (void)
 
virtual const
cmnClassServicesBase
Services (void) const =0
 
bool ReconstructFrom (const cmnGenericObject &other)
 
std::string ToString (void) const
 
virtual cmnLogger::StreamBufTypeGetLogMultiplexer (void) const
 
virtual double Scalar (const size_t CMN_UNUSED(index)) const throw (std::out_of_range)
 
virtual std::string ScalarDescription (const size_t CMN_UNUSED(index), const std::string &CMN_UNUSED(userDescription)) const
 

Public Attributes

std::string Name
 Name of the virtual fixture. More...
 
mtsVFDataBase * Data
 Internally stored data. More...
 
std::vector< prmKinematicsState * > Kinematics
 Frame object. More...
 
std::vector< prmSensorState * > Sensors
 Sensor object. More...
 
vctDoubleVec DOFSelections
 
vctDynamicMatrixRef< double > ObjectiveMatrixRef
 Objective data reference. More...
 
vctDynamicMatrixRef< double > ObjectiveMatrixSlackRef
 Objective slack reference. More...
 
vctDynamicVectorRef< double > ObjectiveVectorRef
 Objective vector reference. More...
 
vctDynamicMatrixRef< double > IneqConstraintMatrixRef
 Inequality constraint data reference. More...
 
vctDynamicMatrixRef< double > IneqConstraintMatrixSlackRef
 Inequality constraint slack reference. More...
 
vctDynamicVectorRef< double > IneqConstraintVectorRef
 Inequality constraint vector reference. More...
 
vctDynamicMatrixRef< double > EqConstraintMatrixRef
 Equality constraint data reference. More...
 
vctDynamicMatrixRef< double > EqConstraintMatrixSlackRef
 Equality constraint slack reference. More...
 
vctDynamicVectorRef< double > EqConstraintVectorRef
 Equality constraint vector reference. More...
 

Static Public Attributes

static std::string DefaultKinematicsName
 

Detailed Description

This is the base class for all virtual fixture objects.

mtsVFBase: A class that contains logic for the implementation of virtual fixtures

Member Enumeration Documentation

Enumerator
JPOS 
JVEL 

Constructor & Destructor Documentation

mtsVFBase::mtsVFBase ( )
inline

Constructor

mtsVFBase::mtsVFBase ( const std::string &  name,
mtsVFDataBase *  data 
)

Constructor

Parameters
nameString name of object
ObjectiveRowsSize of objective
IneqConstraintRowsSize of inequality constraint
EqConstraintRowsSize of equality constraint
mtsVFBase::~mtsVFBase ( )
inline

Member Function Documentation

virtual void mtsVFBase::AssignRefs ( const mtsVFBase::CONTROLLERMODE  ,
const double  ,
const vctDoubleVec ,
vctDoubleMat ,
vctDoubleVec ,
vctDoubleMat ,
vctDoubleVec ,
vctDoubleMat ,
vctDoubleVec  
)
inlinevirtual
virtual void mtsVFBase::ConvertRefs ( const mtsVFBase::CONTROLLERMODE  mode,
const double  TickTime 
)
pure virtual

Converts the data in the references if a change in mode is needed.

Implemented in mtsVFCartesianOrientation, mtsVFCartesianTranslation, mtsVFJointPosition, and mtsVFJointVelocity.

virtual void mtsVFBase::FillInTableauRefs ( const mtsVFBase::CONTROLLERMODE  Mode,
const double  TickTime 
)
pure virtual
void mtsVFBase::LookupStateData ( const std::map< std::string, prmKinematicsState * > &  k,
const std::map< std::string, prmSensorState * > &  s 
)

Updates internal state data.

UpdateStateData

Parameters
kA map of names to kinematics objects
sA map of names to sensor objects
void mtsVFBase::ReserveSpace ( nmrConstraintOptimizer co)

Reserves space in the control optimizer.

reserve_space

Parameters
coControl optimizer object
void mtsVFBase::SetTableauRefs ( nmrConstraintOptimizer co)

Updates internal references with co tableau.

UpdateTableauRefs

Parameters
coThe control optimizer object
vctDoubleMat mtsVFBase::Skew ( const vctDoubleVec in)

Member Data Documentation

mtsVFDataBase* mtsVFBase::Data

Internally stored data.

std::string mtsVFBase::DefaultKinematicsName
static
vctDoubleVec mtsVFBase::DOFSelections
vctDynamicMatrixRef<double> mtsVFBase::EqConstraintMatrixRef

Equality constraint data reference.

vctDynamicMatrixRef<double> mtsVFBase::EqConstraintMatrixSlackRef

Equality constraint slack reference.

vctDynamicVectorRef<double> mtsVFBase::EqConstraintVectorRef

Equality constraint vector reference.

vctDynamicMatrixRef<double> mtsVFBase::IneqConstraintMatrixRef

Inequality constraint data reference.

vctDynamicMatrixRef<double> mtsVFBase::IneqConstraintMatrixSlackRef

Inequality constraint slack reference.

vctDynamicVectorRef<double> mtsVFBase::IneqConstraintVectorRef

Inequality constraint vector reference.

std::vector<prmKinematicsState *> mtsVFBase::Kinematics

Frame object.

std::string mtsVFBase::Name

Name of the virtual fixture.

vctDynamicMatrixRef<double> mtsVFBase::ObjectiveMatrixRef

Objective data reference.

vctDynamicMatrixRef<double> mtsVFBase::ObjectiveMatrixSlackRef

Objective slack reference.

vctDynamicVectorRef<double> mtsVFBase::ObjectiveVectorRef

Objective vector reference.

std::vector<prmSensorState *> mtsVFBase::Sensors

Sensor object.


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