WalkControllerBehavior Class Reference#include <WalkControllerBehavior.h>
Inheritance diagram for WalkControllerBehavior:
[legend]List of all members.
Detailed Description
Listens to control commands coming in from the command port for remotely controlling the walk.
Definition at line 16 of file WalkControllerBehavior.h.
|
Public Member Functions |
| WalkControllerBehavior () |
| constructor
|
virtual | ~WalkControllerBehavior () |
| destructor
|
virtual void | DoStart () |
| By default, merely adds to the reference counter (through AddReference()); Note you should still call this from your overriding methods.
|
virtual void | DoStop () |
| By default, subtracts from the reference counter (RemoveReference()), and thus may deletex if zero; Don't forget to still call this when you override this; Warning: call this at the end of your DoStop(), not beginning (it might delete this ).
|
virtual WalkMC * | getWalkMC () |
| returns the WalkMC which [will be|is being] used
|
virtual MotionManager::MC_ID | getWalkID () |
| returns the current Walk's MotionCommand ID
|
virtual void | processEvent (const EventBase &) |
| The only event we could possibly receive is the stop-if-no-heartbeat timer.
|
virtual std::string | getDescription () const |
| Gives a short description of what this particular instantiation does (in case a more specific description is needed on an individual basis).
|
Static Public Member Functions |
int | mechacmd_callback (char *buf, int bytes) |
| called by wireless when there's new data
|
std::string | getClassDescription () |
| Gives a short description of what this class of behaviors does... you should override this (but don't have to).
|
Static Public Attributes |
WalkControllerBehavior * | theOne = NULL |
Protected Attributes |
SharedObject< WalkMC > | shared_walker |
| the WalkMC to use
|
Private Member Functions |
void | runCommand (unsigned char *command) |
| Executes a command. Called by mechacmd_callback.
|
| WalkControllerBehavior (const WalkControllerBehavior &) |
| don't call
|
WalkControllerBehavior | operator= (const WalkControllerBehavior &) |
| don't call
|
Private Attributes |
float | dx |
| Motion parameter.
|
float | dy |
| Motion parameter.
|
float | da |
| Motion parameter.
|
WalkControllerBehavior * | theLastOne |
Socket * | cmdsock |
| The input command stream socket.
|
Static Private Attributes |
|
const char | CMD_fwd = 'f' |
| handy symbol for matching incoming communication
|
const char | CMD_roto = 'r' |
| handy symbol for matching incoming communication
|
const char | CMD_side = 's' |
| handy symbol for matching incoming communication
|
const char | CMD_opt0 = '0' |
| handy symbol for matching incoming communication
|
const char | CMD_opt1 = '1' |
| handy symbol for matching incoming communication
|
const char | CMD_opt2 = '2' |
| handy symbol for matching incoming communication
|
const char | CMD_opt3 = '3' |
| handy symbol for matching incoming communication
|
const char | CMD_opt4 = '4' |
| handy symbol for matching incoming communication
|
const char | CMD_opt5 = '5' |
| handy symbol for matching incoming communication
|
const char | CMD_opt6 = '6' |
| handy symbol for matching incoming communication
|
const char | CMD_opt7 = '7' |
| handy symbol for matching incoming communication
|
const char | CMD_opt8 = '8' |
| handy symbol for matching incoming communication
|
const char | CMD_opt9 = '9' |
| handy symbol for matching incoming communication
|
Constructor & Destructor Documentation
WalkControllerBehavior::WalkControllerBehavior |
( |
|
) |
[inline] |
|
Member Function Documentation
void WalkControllerBehavior::DoStart |
( |
|
) |
[virtual] |
|
void WalkControllerBehavior::DoStop |
( |
|
) |
[virtual] |
|
|
By default, subtracts from the reference counter (RemoveReference()), and thus may deletex if zero; Don't forget to still call this when you override this; Warning: call this at the end of your DoStop(), not beginning (it might delete this ).
Reimplemented from BehaviorBase.
Definition at line 103 of file WalkControllerBehavior.cc. |
std::string WalkControllerBehavior::getClassDescription |
( |
|
) |
[inline, static] |
|
virtual std::string WalkControllerBehavior::getDescription |
( |
|
) |
const [inline, virtual] |
|
|
Gives a short description of what this particular instantiation does (in case a more specific description is needed on an individual basis).
By default simply returns getName(), because any calls from a BehaviorBase function to getClassDescription() are going to call BehaviorBase::getClassDescription(), not ~YourSubClass~::getClassDescription(), because static functions can't be virtual in C++ (doh!)
This means that getDescription called on a pointer to a BehaviorBase of unknown subtype would always return an empty string, which is pretty useless. So instead we return the name in this situation. If you want getDescription to return getClassDescription, you'll have to override it in your subclass to do so.
Reimplemented from BehaviorBase.
Definition at line 96 of file WalkControllerBehavior.h. |
virtual WalkMC* WalkControllerBehavior::getWalkMC |
( |
|
) |
[inline, virtual] |
|
int WalkControllerBehavior::mechacmd_callback |
( |
char * |
buf, |
|
|
int |
bytes |
|
) |
[static] |
|
virtual void WalkControllerBehavior::processEvent |
( |
const EventBase & |
|
) |
[inline, virtual] |
|
void WalkControllerBehavior::runCommand |
( |
unsigned char * |
command |
) |
[private] |
|
Member Data Documentation
|
The last WCB object that was theOne, so we can restore it to prominence when we die. This is a nice gesture, but it doesn't really make sense since we're all using the same port. But just in case something changes and we don't do that, this mechanism is in place.
Definition at line 54 of file WalkControllerBehavior.h.
Referenced by DoStart(), and WalkControllerBehavior(). |
The documentation for this class was generated from the following files:
|