VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Attributes | Private Member Functions
makVrv::DtDeRemoteDisplayReconnector Class Reference

The class responsible for restarting remote displays that have disconnected unexpectedly. If a connection to a remote display is lost, it will attempt to reconnect to the same ip address and port, every retryPeriod seconds (default is 5.s). If reconnected it will also provide the display configuration that was in use when the remote display disconnected. It uses an instance of DtThreadedDisplayReconnector for each disconnected remote display to detect the RDE startup and create a connection to it.

Public Types

typedef std::list
< DtThreadedDisplayReconnector * > 
DtThreadedDisplayReconnectors
 

Public Member Functions

 DtDeRemoteDisplayReconnector (DtDe &de, DtDeCommunicator &deCommunicator)
 
virtual ~DtDeRemoteDisplayReconnector ()
 
virtual void tick ()
 
virtual void addLostRemoteDisplay (const std::string &ipAddr, int port, const DtDisplayConfiguration &displayConfig)
 
virtual void addLostRemoteDisplay (DtTcpMessageClient *client)
 
virtual void removeLostRemoteDisplay (const std::string &ipAddr, int port)
 
virtual void setRetryPeriod (double period)
 
virtual double retryPeriod () const
 

Protected Attributes

DtDemyDe
 
DtDeCommunicatormyDeCommunicator
 
DtThreadedDisplayReconnectors myDtThreadedDisplayReconnectors
 
double myRetryPeriod
 

Private Member Functions

 DtDeRemoteDisplayReconnector ()
 

Member Typedef Documentation

A list of disconnected remote displays, since it is possible that more than one remote display might fail. Note that only one reconnect can occur in a retryPeriod.

Constructor & Destructor Documentation

makVrv::DtDeRemoteDisplayReconnector::DtDeRemoteDisplayReconnector ( DtDe de,
DtDeCommunicator deCommunicator 
)

CTOR.

virtual makVrv::DtDeRemoteDisplayReconnector::~DtDeRemoteDisplayReconnector ( )
virtual

DTOR.

makVrv::DtDeRemoteDisplayReconnector::DtDeRemoteDisplayReconnector ( )
private

default CTOR. Unimplemented

Member Function Documentation

virtual void makVrv::DtDeRemoteDisplayReconnector::tick ( )
virtual

Tick the reconnector. If the list of disconnected remotes isn't empty and retry period seconds have elapsed since the last attempt, this will try to reconnect a remote display. If there are multiple remote displays on the list, it will try to reconnect each in turn until one connection succeeds and then wait for the next retry period.

virtual void makVrv::DtDeRemoteDisplayReconnector::setRetryPeriod ( double  period)
virtual

Set/get the period between reconnect retries. The default is 5. seconds.

virtual double makVrv::DtDeRemoteDisplayReconnector::retryPeriod ( ) const
virtual

Set/get the period between reconnect retries. The default is 5. seconds.

virtual void makVrv::DtDeRemoteDisplayReconnector::addLostRemoteDisplay ( const std::string &  ipAddr,
int  port,
const DtDisplayConfiguration displayConfig 
)
virtual

Add a disconnected remote display to our list of remote displays.

virtual void makVrv::DtDeRemoteDisplayReconnector::addLostRemoteDisplay ( DtTcpMessageClient client)
virtual

Add a disconnected remote display to our list of remote displays given a message client. This version does all the work of figuring out what the ipAddr, port, and display config for the client actually were, and then calls the other form of addLostRemoteDisplay()

virtual void makVrv::DtDeRemoteDisplayReconnector::removeLostRemoteDisplay ( const std::string &  ipAddr,
int  port 
)
virtual

Remove a remote display from the lost remote display list.

Member Data Documentation

DtDe& makVrv::DtDeRemoteDisplayReconnector::myDe
protected
DtDeCommunicator& makVrv::DtDeRemoteDisplayReconnector::myDeCommunicator
protected
DtThreadedDisplayReconnectors makVrv::DtDeRemoteDisplayReconnector::myDtThreadedDisplayReconnectors
protected
double makVrv::DtDeRemoteDisplayReconnector::myRetryPeriod
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)