#include <ArClientData.h>
This class is mostly just for holding all the information about one of the client data entires in one convenient spot
Information about the data flags held here... The recognized ones right now are just for return values so some forwarding can be done intelligently, you should only have one return value, they are: RETURN_NONE (There are no return packets), RETURN_SINGLE (There is exactly one return packet), RETURN_UNTIL_EMPTY (There return goes until an empty packet), RETURN_VIDEO (this is the special case for video where basically its something thats always requested at an interval and everyone'll want it after we've transfered it), RETURN_COMPLEX (The return is more complex (so you'll need a helper class))
Public Member Functions | |
void | addDataFlags (const char *dataFlags) |
Sets the data flags. | |
void | addFunctor (ArFunctor1< ArNetPacket * > *functor) |
Adds a new functor the end of the list. | |
ArClientData (const char *name, const char *description, unsigned int command, ArFunctor1< ArNetPacket * > *functor) | |
Constructor. | |
const char * | getArgumentDescription (void) |
Gets the argument description. | |
unsigned int | getCommand (void) |
const char * | getCommandGroup (void) |
Gets the command group. | |
const char * | getDataFlagsString (void) |
const char * | getDescription (void) |
Gets the description. | |
const std::list< ArFunctor1< ArNetPacket * > * > * | getFunctorList (void) const |
Gets the list of functors. | |
const char * | getName (void) |
Gets the name. | |
const char * | getReturnDescription (void) |
Gets the return description. | |
bool | hasDataFlag (const char *dataFlag) |
int | lockFunctorList (void) |
Locks the functor list so we can walk it without it changing. | |
void | remFunctor (ArFunctor1< ArNetPacket * > *functor) |
Removes a functor from the list all together. | |
void | setArgRetDescs (const char *argDesc, const char *retDesc) |
Sets the argument and return descriptions. | |
void | setCommandGroup (const char *commandGroup) |
Sets the command group. | |
int | tryLockFunctorList (void) |
Tries to lock the functor list so we can walk it without it changing. | |
int | unlockFunctorList (void) |
Unlocks the functor list so we can walk it without it changing. | |
virtual | ~ArClientData () |
Destructor. | |
Protected Attributes | |
std::string | myArgumentDescription |
unsigned int | myCommand |
std::string | myCommandGroup |
ArArgumentBuilder | myDataFlagsBuilder |
ArMutex | myDataMutex |
std::string | myDescription |
std::list< ArFunctor1< ArNetPacket * > * > | myFunctorList |
ArMutex | myMutex |
std::string | myName |
std::string | myReturnDescription |