Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

base::LineSegPathRep Class Reference

Concrete path representation as a line segment. More...

Inheritance diagram for base::LineSegPathRep:

Inheritance graph
[legend]
Collaboration diagram for base::LineSegPathRep:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LineSegPathRep ()
 LineSegPathRep (const Point3 &sp, const Orient &so, const Point3 &ep, const Orient &eo)
virtual Objectclone () const
virtual String className () const
virtual Point3 position (Real s) const
 get cartesian position at s:[0..1]

virtual Orient orientation (Real s) const
 get orientation at s:[0..1]

virtual void translate (const Vector3 &t)
 translate the path position by t

virtual void rotate (const Quat4 &r)
 rotate the path orientation by r

virtual void transform (const Matrix4 &m)
 transform the path by m

virtual void scalePosition (Real s)
 scale position coords. by s

virtual void serialize (Serializer &s)
 read or write object state to Serializer

virtual Real distinguishedValue (Int i) const
virtual Int numDistinguishedValues () const
 number of distinguished s values

virtual bool isSameKindAs (const ReferencedObject &) const
virtual bool isSameKindAs (const Object &) const
void reference () const
bool unreference () const
const int referenceCount () const
void enableOnUnreferenceCall (bool enabled)
virtual void onUnreference () const

Static Public Member Functions

template<class BaseClass, class DerivedClass> void registerSerializableInstantiator (const SerializableInstantiator &instantiator)
void registerSerializableInstantiator (const String &baseClassTypeName, const String &derivedClassTypeName, const SerializableInstantiator &instantiator)
template<class BaseClass> const SerializableInstantiator & getSerializableInstantiator (const String &derivedClassTypeName)
const SerializableInstantiator & getSerializableInstantiator (const String &baseClassTypeName, const String &derivedClassTypeName)

Protected Types

enum  Flags { None = 0, ConstPos = 1, ConstOrient = 2 }

Protected Attributes

Point3 sp
 start pos

Orient so
 start orient

Point3 ep
 end pos

Orient eo
 end orient

Int flags
int _refCount
bool onUnreferenceEnabled

Detailed Description

Concrete path representation as a line segment.

Definition at line 36 of file LineSegPathRep.


Member Enumeration Documentation

enum base::LineSegPathRep::Flags [protected]
 

Enumeration values:
None 
ConstPos 
ConstOrient 

Definition at line 132 of file LineSegPathRep.


Constructor & Destructor Documentation

base::LineSegPathRep::LineSegPathRep  )  [inline]
 

Definition at line 39 of file LineSegPathRep.

References ConstOrient, ConstPos, and flags.

Referenced by clone().

base::LineSegPathRep::LineSegPathRep const Point3 sp,
const Orient so,
const Point3 ep,
const Orient eo
[inline]
 

Definition at line 41 of file LineSegPathRep.

References ConstOrient, ConstPos, flags, None, and base::Point3.


Member Function Documentation

virtual String base::LineSegPathRep::className  )  const [inline, virtual]
 

return the name of the object's class type. Must be defined by derived classes.

Implements base::Object.

Reimplemented in base::LineSegTrajectoryRep.

Definition at line 51 of file LineSegPathRep.

References base::String.

virtual Object& base::LineSegPathRep::clone  )  const [inline, virtual]
 

return a shallow copy, with Object& return type. Must be defined by derived classes.

Implements base::Cloneable.

Reimplemented in base::LineSegTrajectoryRep.

Definition at line 48 of file LineSegPathRep.

References eo, ep, LineSegPathRep(), NewObj, so, and sp.

virtual Real base::PathRep::distinguishedValue Int  i  )  const [inline, virtual, inherited]
 

some values of s may correspond to distinguished points along a path. the values s=0 and s=1 are always distinguished values. For example, if the path was specified using waypoints, then there will be a distinguished value of s for each waypoint. 0 <= i < numDistinguishedValues()

Reimplemented in base::ParametricPathRep, and base::WaypointPathRep.

Definition at line 60 of file PathRep.

References base::Int, and base::Real.

void base::Referenced::enableOnUnreferenceCall bool  enabled  )  [inline, inherited]
 

If enabled, each call to unreference() will also call virtual method onUnreference()

Definition at line 115 of file Referenced.

References base::Referenced::onUnreferenceEnabled.

const SerializableInstantiator& base::Serializable::getSerializableInstantiator const String baseClassTypeName,
const String derivedClassTypeName
[static, inherited]
 

template<class BaseClass>
const SerializableInstantiator& base::Serializable::getSerializableInstantiator const String derivedClassTypeName  )  [inline, static, inherited]
 

Definition at line 71 of file Serializable.

References base::String.

virtual bool base::Object::isSameKindAs const Object  )  const [inline, virtual, inherited]
 

Definition at line 47 of file Object.

virtual bool base::ReferencedObject::isSameKindAs const ReferencedObject  )  const [inline, virtual, inherited]
 

Definition at line 52 of file ReferencedObject.

virtual Int base::PathRep::numDistinguishedValues  )  const [inline, virtual, inherited]
 

number of distinguished s values

Reimplemented in base::ParametricPathRep, and base::WaypointPathRep.

Definition at line 64 of file PathRep.

References base::Int.

virtual void base::Referenced::onUnreference  )  const [inline, virtual, inherited]
 

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().

virtual Orient base::LineSegPathRep::orientation Real  s  )  const [inline, virtual]
 

get orientation at s:[0..1]

Implements base::PathRep.

Definition at line 65 of file LineSegPathRep.

References ConstOrient, eo, flags, base::Real, and so.

virtual Point3 base::LineSegPathRep::position Real  s  )  const [inline, virtual]
 

get cartesian position at s:[0..1]

Implements base::PathRep.

Definition at line 54 of file LineSegPathRep.

References ConstPos, ep, flags, base::Point3, base::Real, and sp.

void base::Referenced::reference  )  const [inline, inherited]
 

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.

const int base::Referenced::referenceCount  )  const [inline, inherited]
 

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().

void base::Serializable::registerSerializableInstantiator const String baseClassTypeName,
const String derivedClassTypeName,
const SerializableInstantiator instantiator
[static, inherited]
 

template<class BaseClass, class DerivedClass>
void base::Serializable::registerSerializableInstantiator const SerializableInstantiator instantiator  )  [inline, static, inherited]
 

Definition at line 62 of file Serializable.

virtual void base::LineSegPathRep::rotate const Quat4 r  )  [inline, virtual]
 

rotate the path orientation by r

Implements base::PathRep.

Definition at line 79 of file LineSegPathRep.

References eo, ep, base::Orient::getQuat4(), base::Quat4::rotatePoint(), so, and sp.

virtual void base::LineSegPathRep::scalePosition Real  s  )  [inline, virtual]
 

scale position coords. by s

Implements base::PathRep.

Definition at line 110 of file LineSegPathRep.

References ep, base::Real, and sp.

virtual void base::LineSegPathRep::serialize Serializer s  )  [inline, virtual]
 

read or write object state to Serializer

Implements base::Serializable.

Reimplemented in base::LineSegTrajectoryRep.

Definition at line 117 of file LineSegPathRep.

References eo, ep, flags, so, and sp.

virtual void base::LineSegPathRep::transform const Matrix4 m  )  [inline, virtual]
 

transform the path by m

Implements base::PathRep.

Definition at line 91 of file LineSegPathRep.

References eo, ep, base::Orient::getQuat4(), base::Point3, base::Point4, base::Quat4::setRotation(), so, and sp.

virtual void base::LineSegPathRep::translate const Vector3 t  )  [inline, virtual]
 

translate the path position by t

Implements base::PathRep.

Definition at line 75 of file LineSegPathRep.

References ep, and sp.

bool base::Referenced::unreference  )  const [inline, inherited]
 

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.


Member Data Documentation

int base::Referenced::_refCount [mutable, protected, inherited]
 

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().

Orient base::LineSegPathRep::eo [protected]
 

end orient

Definition at line 130 of file LineSegPathRep.

Referenced by clone(), orientation(), rotate(), serialize(), and transform().

Point3 base::LineSegPathRep::ep [protected]
 

end pos

Definition at line 129 of file LineSegPathRep.

Referenced by clone(), position(), rotate(), scalePosition(), serialize(), transform(), and translate().

Int base::LineSegPathRep::flags [protected]
 

Definition at line 133 of file LineSegPathRep.

Referenced by LineSegPathRep(), orientation(), position(), and serialize().

bool base::Referenced::onUnreferenceEnabled [protected, inherited]
 

Definition at line 137 of file Referenced.

Referenced by base::Referenced::enableOnUnreferenceCall(), base::Referenced::Referenced(), and base::Referenced::unreference().

Orient base::LineSegPathRep::so [protected]
 

start orient

Definition at line 128 of file LineSegPathRep.

Referenced by clone(), orientation(), rotate(), serialize(), and transform().

Point3 base::LineSegPathRep::sp [protected]
 

start pos

Definition at line 127 of file LineSegPathRep.

Referenced by clone(), position(), rotate(), scalePosition(), serialize(), transform(), and translate().


The documentation for this class was generated from the following file:
Generated on Thu Jul 29 16:38:40 2004 for OpenSim by doxygen 1.3.6