GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4ServerTask Class Reference

Server task. More...

#include <TGo4ServerTask.h>

+ Inheritance diagram for TGo4ServerTask:

Public Types

enum  ELaunchmodes { kSecureShell = BIT(0) , kGuiEmbed = BIT(1) }
 
- Public Types inherited from TGo4ThreadManager
enum  { fguTEXTLENGTH = 256 }
 Default textlength for char arrays. More...
 

Public Member Functions

 TGo4ServerTask (const char *name, UInt_t negotiationport=0, Bool_t blockingmode=kFALSE, Bool_t standalone=kFALSE, Bool_t autostart=kTRUE, Bool_t autocreate=kTRUE, Bool_t ismaster=kTRUE)
 
virtual ~TGo4ServerTask ()
 
Bool_t ConnectorThreadIsStopped ()
 Returns the waiting state fbIsWaiting of the Connector Thread;.
 
TGo4BufferQueueGetCommandQueue (const char *task=nullptr) override
 
const char * GetConnectHost () const
 
const char * GetConnectorName () const
 
TGo4SocketGetConnectTransport ()
 
TGo4TaskHandlerGetCurrentTaskHandler ()
 Get task handler of the currently activated client connection.
 
TGo4BufferQueueGetDataQueue (const char *task=nullptr) override
 
TGo4BufferQueueGetStatusQueue (const char *task=nullptr) override
 
TGo4TaskHandlerGetTaskHandler () override
 Get task handler for client specified by name.
 
TGo4TaskHandlerGetTaskHandler (const char *name)
 Get task handler for client specified by name.
 
TGo4TaskManagerGetTaskManager ()
 
TGo4CommandNextCommand () override
 Delivers next command.
 
void Quit () override
 Quit method used by quit command; may be overridden in special application.
 
virtual Int_t RemoveAllClients (Bool_t force=false)
 Remove all connected client task from this server.
 
virtual Bool_t RemoveClient (const char *name, Bool_t clientwait=kTRUE, Bool_t isterminating=kFALSE)
 Remove the client task specified by name from this server.
 
Bool_t RemoveCurrentClient ()
 removes the currently active client from server (disconnect)
 
void SendStatus (TGo4Status *stat, const char *receiver=nullptr) override
 Send status object via status channel to the master.
 
void SendStatusBuffer () override
 Send internal status buffer to the master(s).
 
void SetConnect (TGo4Socket *trans, const char *host, UInt_t port, Bool_t keepserv=kFALSE)
 
void SetCurrentTask (const char *name)
 sets current client task (i.e.
 
void SetDisConnect (TGo4Socket *trans)
 
void Shutdown ()
 Fast Quit() without waiting for proper disconnection.
 
virtual Bool_t StartConnectorThread ()
 starts the thread that listens to the connector port for a client negotiation request; used after launching an rsh client from server
 
virtual Bool_t StopConnectorThread ()
 stops the thread that listens to the connector port for a client negotiation request; used before launching an rsh client from server.
 
virtual Int_t TimerConnect ()
 this method is used by the connectortimer Notify to connect or disconnect a transportchannel (TSocket) on demand; the connection process itself is handled by the connector runnable which uses services of the TaskManager class
 
Int_t WaitForClose ()
 
Int_t WaitForConnection ()
 
Int_t WaitForOpen ()
 
- Public Member Functions inherited from TGo4Task
 TGo4Task (const char *name, Bool_t blockingmode, Bool_t autostart=kFALSE, Bool_t autocreate=kTRUE, Bool_t ismaster=kFALSE)
 
virtual ~TGo4Task ()
 
void AddUserCommand (TGo4Command *com)
 Add a user command object to the existing command list.
 
void AddUserCommandList (TGo4CommandProtoList *comlist)
 Add a user command list to the existing command list.
 
virtual TGo4TaskStatusCreateStatus ()
 create a status object with information on the current (slave) task.
 
virtual void ExecuteString (const char *command)
 Execute string command.
 
TBuffer * GetAbortBuffer ()
 Use preallocated abort buffer to stop remote socket wait from taskhandler itself.
 
const char * GetCommanderName () const
 
TGo4MasterGetMaster () const
 
TGo4SlaveGetSlave () const
 
virtual void GetStatus ()
 Send current status information of the task to the master; may be re-implemented by application subclass of TGo4Task.
 
TMutex * GetStatusBufferMutex ()
 Access to the mutex of status buffer.
 
Int_t Initialization () override
 Overrides the ThreadManager Initialization; is used to setup the client connections on demand; checks for fbConnectRequest flag.
 
Bool_t IsMaster () const
 
Bool_t IsWorkStopped () const
 
virtual void KillMain ()
 Kill the main thread; method to be called from command, should be overridden in user implementation.
 
TGo4CommandMakeCommand (const char *name)
 Method using internal command prototype list to produce a clone of the specified command.
 
TObject * NextObject (Bool_t wait=kTRUE)
 Delivers next object from data queue.
 
TGo4StatusNextStatus (Bool_t wait=kTRUE)
 Delivers next status object from status queue.
 
virtual void RestartMain ()
 Restart the main thread; method to be called from command, should be overridden in user implementation.
 
void SendObject (TObject *obj, const char *receiver=nullptr)
 Send object via data channel to the master.
 
void SendStatusMessage (Int_t level, Bool_t printout, const char *text,...)
 Send message string in a status object to the gui.
 
void SendStopBuffers (const char *taskname=nullptr)
 Send message buffers with stop values into queues and via socket connections.
 
void SetOwner (TGo4TaskOwner *owner)
 Set owner object and switch automatically in master or slave mode, depending on owner type.
 
virtual void Start ()
 General start method of client application to be called from remote command; should be re-implemented by application.
 
virtual Int_t StartWorkThreads ()
 start the working threads of the task implementation; this method is used after the current connection has changed, to continue reading/writing the queues.
 
virtual void Stop ()
 General stop method of client application to be called from remote command; should be re-implemented by application.
 
virtual Int_t StopWorkThreads ()
 stop the working threads of the task implementation; this method is used before the current connection is changed to prevent reading/writing and waiting for the wrong queues.
 
Bool_t SubmitCommand (const char *name)
 send command specified by name to the current client task
 
Bool_t SubmitCommand (TGo4Command *com)
 send given command to the current client task.
 
Bool_t SubmitEmergencyCommand (Go4EmergencyCommand_t val)
 send emergency quit command to the current client task
 
Bool_t SubmitEmergencyData (Go4EmergencyCommand_t val, const char *receiver=nullptr)
 Send emergency command via data channel.
 
Bool_t SubmitLocalCommand (TGo4Command *com)
 Send given command to the current client task.
 
void Terminate (Bool_t termapp=kTRUE) override
 deletes the Manager instance via Control timer.
 
void TerminateFast () override
 Overwrites the Threadmanager TerminateFast to shutdown the objectserver properly.
 
void UpdateStatusBuffer ()
 Create status object and stream it into the status send buffer.
 
void WakeCommandQueue (Int_t id=0)
 Put dummy object into command queue to wake up user threads which might wait for a command.
 
- Public Member Functions inherited from TGo4ThreadManager
 TGo4ThreadManager (const char *name, Bool_t blockingmode=kTRUE, Bool_t autostart=kTRUE, Bool_t autocreate=kTRUE)
 Normal constructor.
 
 TGo4ThreadManager (const TGo4ThreadManager &right)
 
virtual ~TGo4ThreadManager ()
 
Bool_t BlockApp ()
 Blocks gSystem by means of the blocking timer.
 
TGo4ThreadHandlerGetWorkHandler () const
 Access to ThreadHandler for working threads.
 
Bool_t IsAppBlocking () const
 Returns true if threadmanager works in root system blocking mode.
 
Bool_t IsBeingQuit () const
 Returns true if threadmanager works in root system blocking mode.
 
Bool_t IsInitDone () const
 
Bool_t IsTerminateApp () const
 
Bool_t IsTerminating () const
 returns termination status of Threadmanager
 
void Launch ()
 This Method has to be called to create the startup threads and to turn on the application control timer.
 
void SetBeingQuit (Bool_t on)
 
void SetTimer (TGo4AppControlTimer *ctrltimer)
 user can exchange the standard control timer by an own derived one by this method
 
Bool_t UnBlockApp (Int_t mode=0)
 Wakes up the control timer waiting for his condition; parameter mode specifies whether timer will block again at next turn (mode = 0), timer will block when all threads are up (mode = 1), or timer will not block again unless the next Block call, i.e.
 
- Public Member Functions inherited from TGo4CommandReceiver
 TGo4CommandReceiver ()
 
virtual ~TGo4CommandReceiver ()
 

Static Public Member Functions

static const char * Get_fgcLAUNCHPREFSFILE ()
 
- Static Public Member Functions inherited from TGo4Task
static Int_t Get_fgiTERMID ()
 

Static Protected Attributes

static const char * fgcLAUNCHPREFSFILE = "etc/Go4LaunchPrefs.txt"
 Name of the Preferences file for the client startup.
 
static const Int_t fgiCLOSEWAITCYCLES =100
 maximum cycles to wait until transport is closed
 
static const Int_t fgiCONNECTWAITCYCLES =20
 maximum cycles to wait until transport is connected
 
static const Int_t fgiOPENWAITCYCLES =100
 maximum cycles to wait until transport is open
 
static const UInt_t fguCLOSEWAITCYCLETIME =100
 time for each close wait cycle
 
static const UInt_t fguCONNECTTIMERPERIOD =100
 period of task connector timer
 
static const UInt_t fguCONNECTWAITCYCLETIME =200
 time for each connect wait cycle
 
static const UInt_t fguOPENWAITCYCLETIME =100
 time for each open wait cycle
 

Private Attributes

Bool_t fbConnectIsClose {kFALSE}
 True if fxConnectTransport has returned from Close(), i.e.
 
Bool_t fbConnectIsDone {kFALSE}
 True if fxConnectTransport has returned from Open(), i.e.
 
Bool_t fbConnectIsOpen {kFALSE}
 True if fxConnectTransport waits in server Open() call.
 
Bool_t fbConnectRequest {kFALSE}
 True if fxConnectTransport shall be Open() by AppControlTimer.
 
Bool_t fbDisConnectRequest {kFALSE}
 True if fxConnectTransport shall be Close() by AppControlTimer.
 
Bool_t fbKeepServerSocket {kFALSE}
 True if open in server mode shall keep the server socket instance.
 
UInt_t fuConnectPort {0}
 port number for timer connect
 
TString fxConnectHost
 hostname for timer connect
 
TString fxConnectorName
 remember name of connector thread
 
TGo4TaskConnectorTimerfxConnectorTimer {nullptr}
 timer responsible for the connection/disconnection of clients; independent of application control timer aggregationByValue 1
 
TGo4SocketfxConnectTransport {nullptr}
 link to the next TaskHandler transport instance that shall be connected by the Application Control Timer with the client
 
TGo4TaskHandlerfxCurrentTaskHandler {nullptr}
 1
 
TGo4SocketfxDisConnectTransport {nullptr}
 link to the next TaskHandler transport instance that shall be disconnected by the Application Control Timer with the client
 
TGo4TaskManagerfxTaskManager {nullptr}
 aggregationByValue 1
 

Additional Inherited Members

- Static Public Attributes inherited from TGo4ThreadManager
static const Long_t fglTIMERPERIOD = 200
 Period in ms for the application control timer.
 
- Protected Member Functions inherited from TGo4Task
virtual TGo4TaskHandlerCommandListCreateCommandList ()
 factory method for command list; overridden by implementation
 
TGo4ObjectQueueGetLocalCommandQueue ()
 
TGo4TaskHandlerCommandListGetPrototype ()
 get pointer to currently valid command list
 
void SetMaster (Bool_t on=kTRUE)
 
void SetWorkIsStopped (Bool_t on)
 
virtual void UpdateStatus (TGo4TaskStatus *state)
 method needed by method CreateStatus of any status subclasses to set the values of the clienttask specific part of the status object.
 
- Protected Attributes inherited from TGo4Task
TBuffer * fxStatusBuffer {nullptr}
 Buffer containing the analysis status which is updated by the main thread.
 
TMutex * fxStatusMutex {nullptr}
 Mutex protecting status buffer between main and watch thread.
 
- Protected Attributes inherited from TGo4ThreadManager
Bool_t fbAppBlocking {kFALSE}
 true if threadmanager shall block root gSystem using the AppControlTimer; false if gSystem shall never be blocked (necessary for gui)
 
Bool_t fbAutoCreate {kFALSE}
 If true, TThreads of all go4threads in list shall be created automatically on calling Launch().
 
Bool_t fbAutoStart {kFALSE}
 If true, workfunctions (runnable Run()) of all go4threads in list shall be started automatically on Initialization.
 
Int_t fbBeingQuit {0}
 
Bool_t fbInitDone {kFALSE}
 is set kTRUE after first Initialize is done
 
Bool_t fbTerminateApplication {kFALSE}
 If true, terminate complete application.
 
Bool_t fbTerminating {kFALSE}
 flag showing termination status
 
TGo4AppControlTimerfxBlocker {nullptr}
 Composition of Application control timer.
 
TGo4ThreadHandlerfxWorkHandler {nullptr}
 Thread handler aggregate (threadsafe list of go4 threads) aggregationByValue 1 1.
 

Detailed Description

Server task.

Definition at line 31 of file TGo4ServerTask.h.

Member Enumeration Documentation

◆ ELaunchmodes

Enumerator
kSecureShell 
kGuiEmbed 

Definition at line 264 of file TGo4ServerTask.h.

Constructor & Destructor Documentation

◆ TGo4ServerTask()

TGo4ServerTask::TGo4ServerTask ( const char * name,
UInt_t negotiationport = 0,
Bool_t blockingmode = kFALSE,
Bool_t standalone = kFALSE,
Bool_t autostart = kTRUE,
Bool_t autocreate = kTRUE,
Bool_t ismaster = kTRUE )

◆ ~TGo4ServerTask()

TGo4ServerTask::~TGo4ServerTask ( )
virtual

Member Function Documentation

◆ ConnectorThreadIsStopped()

Bool_t TGo4ServerTask::ConnectorThreadIsStopped ( )

Returns the waiting state fbIsWaiting of the Connector Thread;.

Definition at line 548 of file TGo4ServerTask.cxx.

References GetConnectorName(), TGo4ThreadHandler::GetThread(), TGo4ThreadManager::GetWorkHandler(), and TGo4Thread::IsWaiting().

◆ Get_fgcLAUNCHPREFSFILE()

const char * TGo4ServerTask::Get_fgcLAUNCHPREFSFILE ( )
static

Definition at line 599 of file TGo4ServerTask.cxx.

References fgcLAUNCHPREFSFILE.

Referenced by TGo4ServerProxy::GetLaunchString().

◆ GetCommandQueue()

TGo4BufferQueue * TGo4ServerTask::GetCommandQueue ( const char * task = nullptr)
overridevirtual

Reimplemented from TGo4Task.

Definition at line 430 of file TGo4ServerTask.cxx.

References TGo4TaskHandler::GetCommandQueue(), GetCurrentTaskHandler(), and GetTaskHandler().

◆ GetConnectHost()

const char * TGo4ServerTask::GetConnectHost ( ) const
inline

Definition at line 126 of file TGo4ServerTask.h.

References fxConnectHost.

Referenced by TimerConnect().

◆ GetConnectorName()

const char * TGo4ServerTask::GetConnectorName ( ) const
inline

◆ GetConnectTransport()

TGo4Socket * TGo4ServerTask::GetConnectTransport ( )

Definition at line 425 of file TGo4ServerTask.cxx.

References fxConnectTransport.

◆ GetCurrentTaskHandler()

TGo4TaskHandler * TGo4ServerTask::GetCurrentTaskHandler ( )

Get task handler of the currently activated client connection.

Definition at line 254 of file TGo4ServerTask.cxx.

References fxCurrentTaskHandler.

Referenced by GetCommandQueue(), GetDataQueue(), GetStatusQueue(), GetTaskHandler(), TGo4TaskOwner::IsConnected(), RemoveClient(), and RemoveCurrentClient().

◆ GetDataQueue()

TGo4BufferQueue * TGo4ServerTask::GetDataQueue ( const char * task = nullptr)
overridevirtual

◆ GetStatusQueue()

TGo4BufferQueue * TGo4ServerTask::GetStatusQueue ( const char * task = nullptr)
overridevirtual

◆ GetTaskHandler() [1/2]

TGo4TaskHandler * TGo4ServerTask::GetTaskHandler ( )
overridevirtual

Get task handler for client specified by name.

Reimplemented from TGo4Task.

Definition at line 249 of file TGo4ServerTask.cxx.

References GetCurrentTaskHandler().

Referenced by GetCommandQueue(), GetDataQueue(), GetStatusQueue(), and RemoveClient().

◆ GetTaskHandler() [2/2]

TGo4TaskHandler * TGo4ServerTask::GetTaskHandler ( const char * name)

Get task handler for client specified by name.

Definition at line 244 of file TGo4ServerTask.cxx.

References fxTaskManager.

◆ GetTaskManager()

◆ NextCommand()

TGo4Command * TGo4ServerTask::NextCommand ( )
overridevirtual

Delivers next command.

This implementation will poll over command queues of all existing connections. Command is labeled with name of ordering task, so data may be returned to command sender only.

Reimplemented from TGo4Task.

Definition at line 469 of file TGo4ServerTask.cxx.

References fxTaskManager, TGo4Queue::IsEmpty(), TGo4Task::IsMaster(), TGo4Command::SetMode(), TGo4Command::SetTaskName(), TGo4LockGuard, and TGo4BufferQueue::WaitObjectFromBuffer().

◆ Quit()

void TGo4ServerTask::Quit ( )
overridevirtual

Quit method used by quit command; may be overridden in special application.

Reimplemented from TGo4Task.

Definition at line 554 of file TGo4ServerTask.cxx.

References TGo4Log::Debug(), fxTaskManager, TGo4Task::Get_fgiTERMID(), TGo4Task::GetSlave(), TGo4Task::IsMaster(), RemoveAllClients(), TGo4Task::SendStatusMessage(), TGo4Task::Terminate(), and TGo4Task::WakeCommandQueue().

Referenced by TGo4ComServerQuit::ExeCom().

◆ RemoveAllClients()

Int_t TGo4ServerTask::RemoveAllClients ( Bool_t force = false)
virtual

Remove all connected client task from this server.

with option force=true, remove without waiting

Definition at line 171 of file TGo4ServerTask.cxx.

References fxTaskManager, and RemoveClient().

Referenced by Quit(), and Shutdown().

◆ RemoveClient()

Bool_t TGo4ServerTask::RemoveClient ( const char * name,
Bool_t clientwait = kTRUE,
Bool_t isterminating = kFALSE )
virtual

Remove the client task specified by name from this server.

If clientwait=true, remove with client handshake. If isterminating=true, do not restart workthreads after removing the client.

Definition at line 100 of file TGo4ServerTask.cxx.

References TGo4Log::Debug(), fxTaskManager, GetCurrentTaskHandler(), GetTaskHandler(), TGo4Task::IsMaster(), kComQuit, TGo4Task::SendStopBuffers(), TGo4Task::StartWorkThreads(), TGo4Task::StopWorkThreads(), TGo4Task::SubmitEmergencyCommand(), and TGo4Task::SubmitEmergencyData().

Referenced by TGo4Master::DisconnectSlave(), TGo4ComRemoveClient::ExeCom(), RemoveAllClients(), and RemoveCurrentClient().

◆ RemoveCurrentClient()

Bool_t TGo4ServerTask::RemoveCurrentClient ( )

removes the currently active client from server (disconnect)

Definition at line 192 of file TGo4ServerTask.cxx.

References TGo4Log::Debug(), GetCurrentTaskHandler(), and RemoveClient().

◆ SendStatus()

void TGo4ServerTask::SendStatus ( TGo4Status * stat,
const char * receiver = nullptr )
overridevirtual

Send status object via status channel to the master.

Master name may be specified, if more than one master is connected. By default, object is send to all connected tasks

Reimplemented from TGo4Task.

Definition at line 493 of file TGo4ServerTask.cxx.

References TGo4Log::Debug(), fxTaskManager, TGo4Task::IsMaster(), TGo4Task::SendStatus(), and TGo4LockGuard.

◆ SendStatusBuffer()

void TGo4ServerTask::SendStatusBuffer ( )
overridevirtual

Send internal status buffer to the master(s).

Reimplemented from TGo4Task.

Definition at line 513 of file TGo4ServerTask.cxx.

References TGo4BufferQueue::AddBuffer(), TGo4Log::Debug(), TGo4Task::fxStatusBuffer, TGo4Task::fxStatusMutex, fxTaskManager, TGo4Task::IsMaster(), and TGo4LockGuard.

◆ SetConnect()

void TGo4ServerTask::SetConnect ( TGo4Socket * trans,
const char * host,
UInt_t port,
Bool_t keepserv = kFALSE )

◆ SetCurrentTask()

void TGo4ServerTask::SetCurrentTask ( const char * name)

sets current client task (i.e.

taskhandler) by name

Definition at line 206 of file TGo4ServerTask.cxx.

References TGo4Log::Debug(), fxCurrentTaskHandler, fxTaskManager, TGo4Task::IsWorkStopped(), TGo4Task::StartWorkThreads(), and TGo4Task::StopWorkThreads().

◆ SetDisConnect()

void TGo4ServerTask::SetDisConnect ( TGo4Socket * trans)

Definition at line 273 of file TGo4ServerTask.cxx.

References fbDisConnectRequest, and fxDisConnectTransport.

◆ Shutdown()

void TGo4ServerTask::Shutdown ( )

◆ StartConnectorThread()

Bool_t TGo4ServerTask::StartConnectorThread ( )
virtual

starts the thread that listens to the connector port for a client negotiation request; used after launching an rsh client from server

Definition at line 528 of file TGo4ServerTask.cxx.

References GetConnectorName(), TGo4ThreadManager::GetWorkHandler(), and TGo4ThreadHandler::Start().

Referenced by TGo4AnalysisProxy::LaunchAsClient().

◆ StopConnectorThread()

Bool_t TGo4ServerTask::StopConnectorThread ( )
virtual

stops the thread that listens to the connector port for a client negotiation request; used before launching an rsh client from server.

A dummy connection is performed to release socket pending in listening state, thus runnable may wait afterwards, and no server socket is listening on spawning the client. Tests showed that any child process took over the listening server socket, which is not desired here and probably a bug of the system.

Definition at line 533 of file TGo4ServerTask.cxx.

References TGo4Socket::Close(), fxTaskManager, TGo4TaskHandler::Get_fgcERROR(), GetConnectorName(), TGo4ThreadManager::GetWorkHandler(), TGo4Socket::Open(), TGo4Socket::Send(), and TGo4ThreadHandler::Stop().

◆ TimerConnect()

Int_t TGo4ServerTask::TimerConnect ( )
virtual

this method is used by the connectortimer Notify to connect or disconnect a transportchannel (TSocket) on demand; the connection process itself is handled by the connector runnable which uses services of the TaskManager class

Definition at line 279 of file TGo4ServerTask.cxx.

References fbConnectIsClose, fbConnectIsDone, fbConnectIsOpen, fbConnectRequest, fbDisConnectRequest, fbKeepServerSocket, fuConnectPort, fxConnectTransport, fxDisConnectTransport, and GetConnectHost().

◆ WaitForClose()

Int_t TGo4ServerTask::WaitForClose ( )

◆ WaitForConnection()

Int_t TGo4ServerTask::WaitForConnection ( )

◆ WaitForOpen()

Int_t TGo4ServerTask::WaitForOpen ( )

Field Documentation

◆ fbConnectIsClose

Bool_t TGo4ServerTask::fbConnectIsClose {kFALSE}
private

True if fxConnectTransport has returned from Close(), i.e.

connection was established

Definition at line 254 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), TimerConnect(), and WaitForClose().

◆ fbConnectIsDone

Bool_t TGo4ServerTask::fbConnectIsDone {kFALSE}
private

True if fxConnectTransport has returned from Open(), i.e.

connection was established

Definition at line 248 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), TimerConnect(), and WaitForConnection().

◆ fbConnectIsOpen

Bool_t TGo4ServerTask::fbConnectIsOpen {kFALSE}
private

True if fxConnectTransport waits in server Open() call.

Definition at line 242 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), TimerConnect(), and WaitForOpen().

◆ fbConnectRequest

Bool_t TGo4ServerTask::fbConnectRequest {kFALSE}
private

True if fxConnectTransport shall be Open() by AppControlTimer.

Definition at line 232 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), SetConnect(), and TimerConnect().

◆ fbDisConnectRequest

Bool_t TGo4ServerTask::fbDisConnectRequest {kFALSE}
private

True if fxConnectTransport shall be Close() by AppControlTimer.

Definition at line 237 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), SetDisConnect(), and TimerConnect().

◆ fbKeepServerSocket

Bool_t TGo4ServerTask::fbKeepServerSocket {kFALSE}
private

True if open in server mode shall keep the server socket instance.

Definition at line 227 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), SetConnect(), and TimerConnect().

◆ fgcLAUNCHPREFSFILE

const char * TGo4ServerTask::fgcLAUNCHPREFSFILE = "etc/Go4LaunchPrefs.txt"
staticprotected

Name of the Preferences file for the client startup.

Definition at line 186 of file TGo4ServerTask.h.

Referenced by Get_fgcLAUNCHPREFSFILE().

◆ fgiCLOSEWAITCYCLES

const Int_t TGo4ServerTask::fgiCLOSEWAITCYCLES =100
staticprotected

maximum cycles to wait until transport is closed

Definition at line 171 of file TGo4ServerTask.h.

Referenced by WaitForClose().

◆ fgiCONNECTWAITCYCLES

const Int_t TGo4ServerTask::fgiCONNECTWAITCYCLES =20
staticprotected

maximum cycles to wait until transport is connected

Definition at line 177 of file TGo4ServerTask.h.

◆ fgiOPENWAITCYCLES

const Int_t TGo4ServerTask::fgiOPENWAITCYCLES =100
staticprotected

maximum cycles to wait until transport is open

Definition at line 165 of file TGo4ServerTask.h.

Referenced by WaitForOpen().

◆ fguCLOSEWAITCYCLETIME

const UInt_t TGo4ServerTask::fguCLOSEWAITCYCLETIME =100
staticprotected

time for each close wait cycle

Definition at line 174 of file TGo4ServerTask.h.

Referenced by WaitForClose().

◆ fguCONNECTTIMERPERIOD

const UInt_t TGo4ServerTask::fguCONNECTTIMERPERIOD =100
staticprotected

period of task connector timer

Definition at line 183 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), and Shutdown().

◆ fguCONNECTWAITCYCLETIME

const UInt_t TGo4ServerTask::fguCONNECTWAITCYCLETIME =200
staticprotected

time for each connect wait cycle

Definition at line 180 of file TGo4ServerTask.h.

Referenced by WaitForConnection().

◆ fguOPENWAITCYCLETIME

const UInt_t TGo4ServerTask::fguOPENWAITCYCLETIME =100
staticprotected

time for each open wait cycle

Definition at line 168 of file TGo4ServerTask.h.

Referenced by WaitForOpen().

◆ fuConnectPort

UInt_t TGo4ServerTask::fuConnectPort {0}
private

port number for timer connect

Definition at line 222 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), SetConnect(), and TimerConnect().

◆ fxConnectHost

TString TGo4ServerTask::fxConnectHost
private

hostname for timer connect

Definition at line 217 of file TGo4ServerTask.h.

Referenced by GetConnectHost(), and SetConnect().

◆ fxConnectorName

TString TGo4ServerTask::fxConnectorName
private

remember name of connector thread

Definition at line 193 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), and GetConnectorName().

◆ fxConnectorTimer

TGo4TaskConnectorTimer* TGo4ServerTask::fxConnectorTimer {nullptr}
private

timer responsible for the connection/disconnection of clients; independent of application control timer aggregationByValue 1

Definition at line 261 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), and ~TGo4ServerTask().

◆ fxConnectTransport

TGo4Socket* TGo4ServerTask::fxConnectTransport {nullptr}
private

link to the next TaskHandler transport instance that shall be connected by the Application Control Timer with the client

Definition at line 206 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), GetConnectTransport(), SetConnect(), and TimerConnect().

◆ fxCurrentTaskHandler

TGo4TaskHandler* TGo4ServerTask::fxCurrentTaskHandler {nullptr}
private

1

Definition at line 200 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), GetCurrentTaskHandler(), and SetCurrentTask().

◆ fxDisConnectTransport

TGo4Socket* TGo4ServerTask::fxDisConnectTransport {nullptr}
private

link to the next TaskHandler transport instance that shall be disconnected by the Application Control Timer with the client

Definition at line 212 of file TGo4ServerTask.h.

Referenced by TGo4ServerTask(), SetDisConnect(), and TimerConnect().

◆ fxTaskManager


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