ArCentralForwarder Class Reference

#include <ArCentralForwarder.h>

List of all members.


Detailed Description

Class


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)
ArClientBasegetClient (void)
int getPort (void)
const char * getRobotName (void)
ArServerBasegetServer (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

ArClientBaseclient
ArClientBasemyClient
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
ArServerBasemyMainServer
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
ArServerBasemyServer
ArSocketmySocket
int myStartingPort
State myState
std::set< int > * myUsedPorts
ArServerBaseserver


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