Public Member Functions | Public Attributes | Protected Member Functions
jlo::ObjectContainer Class Reference

The prototype for any located object that moves itself and has objects that depend on this movement. More...

#include <ObjectContainer.h>

Inheritance diagram for jlo::ObjectContainer:
Inheritance graph
[legend]

List of all members.

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

Detailed Description

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.


Constructor & Destructor Documentation

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

Parameters:
locatedObjectThe LocatedObject that is passed to this constructor is the preceeding element in the location Tree
xall 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

Parameters:
locatedObjectThe LocatedObject that is passed to this constructor is the preceeding element in the location Tree
matrixall other parameters can be looked up in LocatedObject

Definition at line 73 of file ObjectContainer.h.


Member Function Documentation

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

Remarks:
if such an object is of type LO_TYPE_PHYSICAL it will stay attached even if

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

Returns:
Matrix

class ObjectContainer

Returns:
Matrix

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

Returns:
Matrix

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]
Parameters:
matrix
covMatrix
Returns:
unsigned long: returns NO_MOVE if movement to the wished position is possibe else RELOCATE_OBJECT.

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

Remarks:
if such an object is of type LO_TYPE_PHYSICAL it will stay attached even if

Reimplemented from jlo::ServiceLocatedObject.

Definition at line 95 of file ObjectContainer.cpp.

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.


Member Data Documentation

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.


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


lo
Author(s): U. Klank
autogenerated on Mon Oct 6 2014 10:44:16