Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

MotionManagerMsg Struct Reference

#include <MotionManagerMsg.h>

Inheritance diagram for MotionManagerMsg:

List of all members.


Detailed Description

A small header that precedes data sent by MotionManager between processes.

Typically this is broadcast to all processes using the MotionManager so each process has to update its own fields of MotionManager.

One tricky aspect is that with the IPC mechanisms on PLATFORM_LOCAL the originating process will get an "echo" of the message, whereas on PLATFORM_APERIOS it's set up so the sender doesn't get an echo of its own message. However, this complexity is handled by MotionManager, not here.

Definition at line 16 of file MotionManagerMsg.h.


Public Types

typedef unsigned short MC_ID
 the type to use when referring to MotionCommand ID's

Public Member Functions

 MotionManagerMsg ()
 constructor
virtual ~MotionManagerMsg ()
 virtual destructor
MC_ID getID () const
 Accessor for the id number, set by MotionManager::addMotion().

Static Public Attributes

static const MC_ID invalid_MC_ID = static_cast<MC_ID>(-1)
 for errors and undefined stuff

Protected Member Functions

void clearID ()
 resets the mc_id to invalid_MC_ID

Private Types

enum  MsgType { addMotion, deleteMotion, unknown }
 Denotes what type of message this is (see type). More...

Private Member Functions

void setAdd (MC_ID id)
 Sets up the header as an add motion message.
void setDelete (MC_ID id)
 Sets up the header as an erase motion message.

Private Attributes

enum MotionManagerMsg::MsgType type
 indicates what processing this message requires
ProcessID::ProcessID_t creatorPID
 holds the process that this message was created/sent from
MC_ID mc_id
 The id of the MotionCommand this is in reference to.

Friends

class MotionManager

Member Typedef Documentation

typedef unsigned short MotionManagerMsg::MC_ID

the type to use when referring to MotionCommand ID's

Definition at line 18 of file MotionManagerMsg.h.


Member Enumeration Documentation

enum MotionManagerMsg::MsgType [private]

Denotes what type of message this is (see type).

Enumerator:
addMotion  indicates the msg is actually MotionCommand to be added to the MotionManager
deleteMotion  indicates the msg's mc_id references a MotionCommand to be removed from the MotionManager
unknown  failsafe default until one of the others is set

Definition at line 41 of file MotionManagerMsg.h.


Constructor & Destructor Documentation

MotionManagerMsg::MotionManagerMsg (  )  [inline]

constructor

Definition at line 24 of file MotionManagerMsg.h.

virtual MotionManagerMsg::~MotionManagerMsg (  )  [inline, virtual]

virtual destructor

doesn't do anything, but don't remove it, otherwise this would no longer be a virtual base class

Definition at line 28 of file MotionManagerMsg.h.


Member Function Documentation

void MotionManagerMsg::clearID (  )  [inline, protected]

resets the mc_id to invalid_MC_ID

Definition at line 35 of file MotionManagerMsg.h.

Referenced by MotionCommand::DoStop().

void MotionManagerMsg::setAdd ( MC_ID  id  )  [inline, private]

Sets up the header as an add motion message.

Definition at line 54 of file MotionManagerMsg.h.

void MotionManagerMsg::setDelete ( MC_ID  id  )  [inline, private]

Sets up the header as an erase motion message.

Definition at line 60 of file MotionManagerMsg.h.

Referenced by MotionManager::removeMotion().


Friends And Related Function Documentation

friend class MotionManager [friend]

Definition at line 38 of file MotionManagerMsg.h.


Member Data Documentation

const MC_ID MotionManagerMsg::invalid_MC_ID = static_cast<MC_ID>(-1) [static]

for errors and undefined stuff

Definition at line 21 of file MotionManagerMsg.h.

Referenced by clearID().

indicates what processing this message requires

Referenced by MotionManager::processMsg(), setAdd(), and setDelete().

holds the process that this message was created/sent from

Definition at line 48 of file MotionManagerMsg.h.

Referenced by MotionManager::processMsg().

The id of the MotionCommand this is in reference to.

Definition at line 51 of file MotionManagerMsg.h.

Referenced by clearID(), getID(), MotionManager::processMsg(), setAdd(), and setDelete().


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

Tekkotsu v4.0
Generated Thu Nov 22 00:58:33 2007 by Doxygen 1.5.4