GSI Object Oriented Online Offline (Go4)
GO4-5.3.2
|
#include <TGo4StatusRunnable.h>
Public Member Functions | |
TGo4StatusRunnable (const char *name, TGo4ThreadManager *man, TGo4TaskHandler *hand, Bool_t receivermode=kTRUE) | |
virtual | ~TGo4StatusRunnable () |
virtual Int_t | Run (void *ptr) |
![]() | |
TGo4TaskHandlerRunnable (const char *name, TGo4ThreadManager *man, TGo4TaskHandler *hand, Bool_t receivermode=kTRUE) | |
virtual | ~TGo4TaskHandlerRunnable () |
TGo4TaskHandler * | GetTaskHandler () |
![]() | |
TGo4Runnable (const TGo4Runnable &right) | |
TGo4Runnable (const char *name, TGo4ThreadManager *man) | |
virtual | ~TGo4Runnable () |
void | SetThread (TGo4Thread *gthread) |
TGo4Thread * | GetThread () const |
TGo4ThreadManager * | GetThreadManager () const |
Private Member Functions | |
TGo4StatusRunnable () | |
Additional Inherited Members | |
![]() | |
Bool_t | CheckStopBuffer (TBuffer *buf, Int_t *result=0) |
Bool_t | CheckTransportOpen () |
![]() | |
TGo4Runnable () | |
virtual Int_t | PreRun (void *ptr) |
virtual Int_t | PostRun (void *ptr) |
virtual void | ThreadCatch (TGo4Exception &ex) |
virtual void | UnexpectedCatch () |
![]() | |
TGo4Socket * | fxTransport |
TGo4TaskHandler * | fxTaskHandler |
Bool_t | fbReceiverMode |
TGo4BufferQueue * | fxBufferQueue |
![]() | |
TGo4ThreadManager * | fxManager |
TGo4Thread * | fxGo4Thread |
Runnable responsible for status object exchange between transport (socket) and buffer (queue) In receiver mode, status objects are received from transport and passed to the queue in non receiver mode, runnables waits for the queue and sends all status objects from the queue over the transport thread
Definition at line 30 of file TGo4StatusRunnable.h.
TGo4StatusRunnable::TGo4StatusRunnable | ( | const char * | name, |
TGo4ThreadManager * | man, | ||
TGo4TaskHandler * | hand, | ||
Bool_t | receivermode = kTRUE |
||
) |
Definition at line 27 of file TGo4StatusRunnable.cxx.
References TGo4TaskHandlerRunnable::fxBufferQueue, TGo4TaskHandlerRunnable::fxTaskHandler, TGo4TaskHandlerRunnable::fxTransport, TGo4TaskHandler::GetStatusQueue(), and TGo4TaskHandler::GetStatusTransport().
|
virtual |
Definition at line 35 of file TGo4StatusRunnable.cxx.
|
private |
|
virtual |
The working function which runs in the thread
Implements TGo4TaskHandlerRunnable.
Definition at line 39 of file TGo4StatusRunnable.cxx.
References TGo4BufferQueue::AddBuffer(), TGo4TaskHandlerRunnable::CheckStopBuffer(), TGo4TaskHandlerRunnable::CheckTransportOpen(), TGo4Log::Debug(), TGo4TaskHandlerRunnable::fbReceiverMode, TGo4BufferQueue::FreeBuffer(), TGo4TaskHandlerRunnable::fxBufferQueue, TGo4Runnable::fxManager, TGo4TaskHandlerRunnable::fxTransport, TGo4Socket::GetBuffer(), TGo4Runnable::GetThread(), TGo4SocketSignalHandler::IsLastSignalWINCH(), TGo4ThreadManager::IsTerminating(), TGo4Socket::ReceiveBuffer(), TGo4Socket::SendBuffer(), TGo4SocketSignalHandler::SetLastSignal(), TGo4Thread::Stop(), and TGo4BufferQueue::WaitBuffer().