The prototype for any located object that moves itself and has objects that depend on this movement. More...
#include <ObjectContainer.h>
Public Member Functions | |
virtual void | AddAttachedObject (ServiceLocatedObject *lo) |
Adds an object to the list of dependant objects In case of the object beeing moved, all attached objects will be put to a copy *this. | |
virtual unsigned long | GetLOType () |
returns if the object needs its children to be moved | |
ObjectContainer (ServiceLocatedObject *locatedObject, double x, double y, double z, double roll, double pitch, double yaw, double sigmaX=0.0, double sigmaY=0.0, double sigmaZ=0.0, double sigmaRoll=0.0, double sigmaPitch=0.0, double sigmaYaw=0.0) | |
ObjectContainer (ServiceLocatedObject *locatedObject, const Matrix &matrix, const Matrix &covariance) | |
virtual void | PropagateMovement (ServiceLocatedObject *(*copy)(ServiceLocatedObject *, ServiceLocatedObject *), unsigned long(*del)(ServiceLocatedObject *), void(*updated)(unsigned long), ServiceLocatedObject *parent_copy=NULL) |
Adds an object to the list of dependant objects In case of the object beeing moved, all attached objects will be put to a copy *this. | |
virtual void | RemoveAttachedObject (ServiceLocatedObject *lo) |
Removes an object from the list of dependant objects. | |
Public Attributes | |
std::vector < ServiceLocatedObject * > | m_attachedLocatedObjectList |
bool | m_semaStatic |
Protected Member Functions | |
virtual ReturnMatrix | Get () |
this function has to be overwritten if the object container can move | |
virtual ReturnMatrix | GetInv () |
this function has to be overwritten if the object container can move | |
virtual unsigned long | Move (const Matrix &matrix, const Matrix &covMatrix) |
virtual bool | NeedCopy () |
virtual void | TellParentNeedCopy () |
virtual void | TellParentNeedNoCopy () |
The prototype for any located object that moves itself and has objects that depend on this movement.
Class ObjectContainer
Definition at line 38 of file ObjectContainer.h.
jlo::ObjectContainer::ObjectContainer | ( | ServiceLocatedObject * | locatedObject, |
double | x, | ||
double | y, | ||
double | z, | ||
double | roll, | ||
double | pitch, | ||
double | yaw, | ||
double | sigmaX = 0.0 , |
||
double | sigmaY = 0.0 , |
||
double | sigmaZ = 0.0 , |
||
double | sigmaRoll = 0.0 , |
||
double | sigmaPitch = 0.0 , |
||
double | sigmaYaw = 0.0 |
||
) | [inline] |
Constructor ObjectContainer
locatedObject | The LocatedObject that is passed to this constructor is the preceeding element in the location Tree |
x | all other parameters can be looked up in LocatedObject |
Definition at line 50 of file ObjectContainer.h.
jlo::ObjectContainer::ObjectContainer | ( | ServiceLocatedObject * | locatedObject, |
const Matrix & | matrix, | ||
const Matrix & | covariance | ||
) | [inline] |
Constructor ObjectContainer
locatedObject | The LocatedObject that is passed to this constructor is the preceeding element in the location Tree |
matrix | all other parameters can be looked up in LocatedObject |
Definition at line 73 of file ObjectContainer.h.
void jlo::ObjectContainer::AddAttachedObject | ( | ServiceLocatedObject * | lo | ) | [virtual] |
Adds an object to the list of dependant objects In case of the object beeing moved, all attached objects will be put to a copy *this.
AddAttachedObject
Reimplemented from jlo::ServiceLocatedObject.
Definition at line 51 of file ObjectContainer.cpp.
ReturnMatrix jlo::ObjectContainer::Get | ( | ) | [protected, virtual] |
this function has to be overwritten if the object container can move
Get
class ObjectContainer
Reimplemented from jlo::LocatedObject.
Definition at line 35 of file ObjectContainer.cpp.
ReturnMatrix jlo::ObjectContainer::GetInv | ( | ) | [protected, virtual] |
this function has to be overwritten if the object container can move
GetInv
Reimplemented from jlo::LocatedObject.
Definition at line 43 of file ObjectContainer.cpp.
virtual unsigned long jlo::ObjectContainer::GetLOType | ( | ) | [inline, virtual] |
returns if the object needs its children to be moved
GetLOType
Reimplemented from jlo::ServiceLocatedObject.
Definition at line 85 of file ObjectContainer.h.
unsigned long jlo::ObjectContainer::Move | ( | const Matrix & | matrix, |
const Matrix & | covMatrix | ||
) | [protected, virtual] |
matrix | |
covMatrix |
Reimplemented from jlo::LocatedObject.
Definition at line 133 of file ObjectContainer.cpp.
bool jlo::ObjectContainer::NeedCopy | ( | ) | [protected, virtual] |
Reimplemented from jlo::ServiceLocatedObject.
Definition at line 77 of file ObjectContainer.cpp.
void jlo::ObjectContainer::PropagateMovement | ( | ServiceLocatedObject *(*)(ServiceLocatedObject *, ServiceLocatedObject *) | copy, |
unsigned long(*)(ServiceLocatedObject *) | del, | ||
void(*)(unsigned long) | updated, | ||
ServiceLocatedObject * | parent_copy = NULL |
||
) | [virtual] |
Adds an object to the list of dependant objects In case of the object beeing moved, all attached objects will be put to a copy *this.
Move this
Reimplemented from jlo::ServiceLocatedObject.
Definition at line 95 of file ObjectContainer.cpp.
void jlo::ObjectContainer::RemoveAttachedObject | ( | ServiceLocatedObject * | lo | ) | [virtual] |
Removes an object from the list of dependant objects.
RemoveAttachedObject
Reimplemented from jlo::ServiceLocatedObject.
Definition at line 61 of file ObjectContainer.cpp.
virtual void jlo::ObjectContainer::TellParentNeedCopy | ( | ) | [inline, protected, virtual] |
Reimplemented from jlo::ServiceLocatedObject.
Definition at line 119 of file ObjectContainer.h.
virtual void jlo::ObjectContainer::TellParentNeedNoCopy | ( | ) | [inline, protected, virtual] |
Reimplemented from jlo::ServiceLocatedObject.
Definition at line 120 of file ObjectContainer.h.
The list of located objects that depend on this object container. To be aware which other objects are affected, additionally by a movement
Definition at line 129 of file ObjectContainer.h.
A Variable protecting from unnecessary updates of the matrix
Definition at line 134 of file ObjectContainer.h.