Public Types | |
enum | ExternalizationType { Input = 1, Output = 2, IO = 3 } |
Public Member Functions | |
PlatformDescription () | |
PlatformDescription (String name, const base::Dimension3 &dimensions, const base::Vector3 &originOffset, bool mobile, bool holonomic=true, Real L=1, Real W=2) | |
PlatformDescription (const PlatformDescription &p) | |
PlatformDescription & | operator= (const PlatformDescription &p) |
void | set (String name, const base::Dimension3 &dimensions, const base::Vector3 &originOffset, bool mobile, bool holonomic=true, Real L=1, Real W=2) |
virtual String | className () const |
virtual bool | isMobile () const |
< is the robot mobile, or fixed (e.g. to the floor)? | |
virtual bool | isHolonomic () const |
< if mobile, is the platform capable of holonomic movement | |
virtual base::Dimension3 | dimensions () const |
< physical platform bounding dimensions (Length, Width, Thickness) | |
virtual base::Vector3 | originOffset () const |
< offset of platfom/robot origin from platform shape's origin | |
virtual Real | L () const |
< distance of nonholonomic platform drive axle back from platform origin | |
virtual Real | W () const |
< distance between nonholonomic platform steering axle and drive axle | |
virtual KinematicChain | getKinematicChain (Int platformDOF=0, const base::Matrix4 &platformTransform=base::Matrix4()) const |
virtual Real | requiredSteeringAngle (const Vector &q, const Vector &qp) const |
virtual bool | formatSupported (const String format, Real version=1.0, ExternalizationType type=IO) const |
query if specific format is supported (for input, output or both) | |
virtual void | externalize (base::Externalizer &e, String format="", Real version=1.0) |
read or write object state to Externalizer | |
virtual void | externalize (base::Externalizer &e, String format="", Real version=1.0) const |
write object state to Externalizer (throws if e is in Input) | |
virtual const String & | getName () const |
void | load (ref< VFile > archive, const String &format="", Real version=1.0) |
void | save (ref< VFile > archive, const String &format="", Real version=1.0) |
virtual bool | isSameKindAs (const Object &) const |
virtual bool | isSameKindAs (const ReferencedObject &) const |
void | reference () const |
bool | unreference () const |
const int | referenceCount () const |
void | enableOnUnreferenceCall (bool enabled) |
virtual void | onUnreference () const |
Protected Member Functions | |
PlatformDescription (String name) | |
void | setMobile (bool mobile) |
void | setHolonomic (bool holonomic) |
void | setDimensions (base::Dimension3 dimensions) |
void | setOriginOffset (base::Vector3 originOffset) |
void | setL (Real L) |
void | setW (Real W) |
virtual void | setName (const String &name) |
Protected Attributes | |
int | _refCount |
bool | onUnreferenceEnabled |
Friends | |
class | Robot |
Definition at line 44 of file PlatformDescription.
|
Definition at line 40 of file Externalizable. |
|
Definition at line 47 of file PlatformDescription. References base, and base::Dimension3. |
|
Definition at line 52 of file PlatformDescription. References base::Dimension3. |
|
Definition at line 58 of file PlatformDescription. |
|
Definition at line 137 of file PlatformDescription. |
|
return the name of the object's class type. Must be defined by derived classes. Implements base::Object. Definition at line 89 of file PlatformDescription. |
|
< physical platform bounding dimensions (Length, Width, Thickness)
Definition at line 96 of file PlatformDescription. References base::Dimension3. |
|
If enabled, each call to unreference() will also call virtual method onUnreference() Definition at line 115 of file Referenced. References base::Referenced::onUnreferenceEnabled. |
|
write object state to Externalizer (throws if e is in Input)
Reimplemented from base::Externalizable. Definition at line 133 of file PlatformDescription. |
|
read or write object state to Externalizer
Implements base::Externalizable. |
|
query if specific format is supported (for input, output or both)
Implements base::Externalizable. Definition at line 130 of file PlatformDescription. |
|
get an equivelent kinematic chain for this platform. The platform dof can either be 0, 3 or 6:
|
|
Definition at line 44 of file Named. References base::String. Referenced by physics::Collidable::findNamed(), physics::operator<<(), robot::ToolDescription::operator=(), robot::RobotDescription::operator=(), operator=(), robot::ManipulatorDescription::operator=(), base::Named::operator=(), and robot::ManipulatorDescription::operator==(). |
|
< if mobile, is the platform capable of holonomic movement
Definition at line 93 of file PlatformDescription. |
|
< is the robot mobile, or fixed (e.g. to the floor)?
Definition at line 91 of file PlatformDescription. |
|
Definition at line 52 of file ReferencedObject. |
|
|
|
< distance of nonholonomic platform drive axle back from platform origin
Definition at line 102 of file PlatformDescription. |
|
|
|
Called by unreference() if enabled via enableOnUnreferenceCall(true). Typically overridden in subclasses that wish to know about unreference() calls - for example to handle manually breaking cyclic references Reimplemented in robot::control::ControllableAdaptor::AdaptorControlInterface, and robot::control::ControllableAdaptor. Definition at line 121 of file Referenced. Referenced by base::Referenced::unreference(). |
|
Definition at line 63 of file PlatformDescription. References dims, base::Named::getName(), holonomic, mobile, nhL, nhW, offset, and base::Named::setName(). |
|
< offset of platfom/robot origin from platform shape's origin
Definition at line 99 of file PlatformDescription. |
|
Increment the reference count by one, indicating that this object has another pointer which is referencing it. Definition at line 65 of file Referenced. References base::Referenced::_refCount. |
|
Return the number pointers currently referencing this object. Definition at line 112 of file Referenced. References base::Referenced::_refCount. Referenced by robot::control::ControllableAdaptor::AdaptorControlInterface::onUnreference(). |
|
utility method to compute the steering angle needed to move the non-holonomic platform from state q to qp. The dimension of q determines the platform DOF assumed (see getKinematicChain) - must be 0, 3 or 6. (since a 0-dof platform can't be controlled, 0 is returned) |
|
|
|
Definition at line 75 of file PlatformDescription. References base::Dimension3, setDimensions(), setHolonomic(), setL(), setMobile(), base::Named::setName(), setOriginOffset(), and setW(). |
|
Definition at line 141 of file PlatformDescription. References base::Dimension3. Referenced by set(). |
|
Definition at line 140 of file PlatformDescription. Referenced by set(). |
|
Definition at line 143 of file PlatformDescription. Referenced by set(). |
|
Definition at line 139 of file PlatformDescription. Referenced by set(). |
|
|
Definition at line 142 of file PlatformDescription. Referenced by set(). |
|
Definition at line 144 of file PlatformDescription. Referenced by set(). |
|
Decrement the reference count by one, indicating that a pointer to this object is referencing it. If the refence count goes to zero, it is assumed that this object is nolonger referenced and is automatically deleted. Definition at line 81 of file Referenced. References base::Referenced::_refCount, Exception, base::Referenced::onUnreference(), and base::Referenced::onUnreferenceEnabled. |
|
< distance between nonholonomic platform steering axle and drive axle
Definition at line 105 of file PlatformDescription. |
|
Definition at line 157 of file PlatformDescription. |
|
Definition at line 136 of file Referenced. Referenced by base::Referenced::reference(), base::Referenced::referenceCount(), base::Referenced::Referenced(), base::Referenced::unreference(), and base::Referenced::~Referenced(). |
|
Definition at line 137 of file Referenced. Referenced by base::Referenced::enableOnUnreferenceCall(), base::Referenced::Referenced(), and base::Referenced::unreference(). |