#include <ArCentralForwarder.h>
Public Member Functions | |
ArCentralForwarder (ArServerBase *mainServer, ArSocket *socket, const char *robotName, int startingPort, std::set< int > *usedPorts, ArFunctor2< ArCentralForwarder *, ArServerClient * > *notifyServerClientRemovedCB) | |
bool | callOnce (double heartbeatTimeout, double udpHeartbeatTimeout, double robotBackupTimeout, double clientBackupTimeout) |
ArClientBase * | getClient (void) |
int | getPort (void) |
const char * | getRobotName (void) |
ArServerBase * | getServer (void) |
bool | isConnected (void) |
void | netCentralHeartbeat (ArNetPacket *packet) |
Protected Types | |
enum | ReturnType { RETURN_NONE, RETURN_SINGLE, RETURN_VIDEO, RETURN_UNTIL_EMPTY, RETURN_COMPLEX, RETURN_VIDEO_OPTIM } |
enum | State { STATE_STARTING, STATE_CONNECTING, STATE_GATHERING, STATE_CONNECTED } |
Protected Member Functions | |
void | clientServerClientRemoved (ArServerClient *client) |
bool | connectedCallOnce (double heartbeatTimeout, double udpHeartbeatTimeout, double robotBackupTimeout, double clientBackupTimeout) |
bool | connectingCallOnce (double heartbeatTimeout, double udpHeartbeatTimeout, double robotBackupTimeout, double clientBackupTimeout) |
bool | gatheringCallOnce (double heartbeatTimeout, double udpHeartbeatTimeout, double robotBackupTimeout, double clientBackupTimeout) |
void | receiveData (ArNetPacket *packet) |
void | requestChanged (long interval, unsigned int command) |
void | requestOnce (ArServerClient *client, ArNetPacket *packet) |
void | robotServerClientRemoved (ArServerClient *client) |
bool | startingCallOnce (double heartbeatTimeout, double udpHeartbeatTimeout, double robotBackupTimeout, double clientBackupTimeout) |
Protected Attributes | |
ArClientBase * | client |
ArClientBase * | myClient |
ArFunctor1C< ArCentralForwarder, ArServerClient * > | myClientServerClientRemovedCB |
ArFunctor2< ArCentralForwarder *, ArServerClient * > * | myForwarderServerClientRemovedCB |
std::map< unsigned int, ArTime * > | myLastBroadcast |
std::map< unsigned int, ArTime * > | myLastRequest |
ArTime | myLastSentCentralServerHeartbeat |
ArTime | myLastTcpHeartbeat |
ArTime | myLastUdpHeartbeat |
ArServerBase * | myMainServer |
ArFunctor1C< ArCentralForwarder, ArNetPacket * > | myNetCentralHeartbeatCB |
int | myPort |
std::string | myPrefix |
ArFunctor1C< ArCentralForwarder, ArNetPacket * > | myReceiveDataFunctor |
ArFunctor2C< ArCentralForwarder, long, unsigned int > | myRequestChangedFunctor |
ArFunctor2C< ArCentralForwarder, ArServerClient *, ArNetPacket * > | myRequestOnceFunctor |
std::map< unsigned int, std::list< ArServerClient * > * > | myRequestOnces |
std::map< unsigned int, ReturnType > | myReturnTypes |
bool | myRobotHasCentralServerHeartbeat |
std::string | myRobotName |
ArFunctor1C< ArCentralForwarder, ArServerClient * > | myRobotServerClientRemovedCB |
ArServerBase * | myServer |
ArSocket * | mySocket |
int | myStartingPort |
State | myState |
std::set< int > * | myUsedPorts |
ArServerBase * | server |