ArClientData Class Reference

#include <ArClientData.h>

List of all members.


Detailed Description

class to hold information about the different data the client has

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


The documentation for this class was generated from the following file:
Generated on Thu Aug 6 09:40:12 2009 for ArNetworking by  doxygen 1.5.1