#include <TGo4DataRunnable.h>
Public Member Functions | |
TGo4DataRunnable (const char *name, TGo4ThreadManager *man, TGo4TaskHandler *hand, Bool_t receivermode=kTRUE) | |
virtual | ~TGo4DataRunnable () |
virtual Int_t | Run (void *ptr) |
Private Member Functions | |
TGo4DataRunnable () |
Runnable responsible for data object exchange between transport (socket) and buffer (queue) In receiver mode, data objects are received from transport and passed to the queue in non receiver mode, runnables waits for the queue and sends all data objects from the queue over the transport thread
Definition at line 30 of file TGo4DataRunnable.h.
TGo4DataRunnable::TGo4DataRunnable | ( | const char * | name, | |
TGo4ThreadManager * | man, | |||
TGo4TaskHandler * | hand, | |||
Bool_t | receivermode = kTRUE | |||
) |
Definition at line 28 of file TGo4DataRunnable.cxx.
References TGo4TaskHandlerRunnable::fxBufferQueue, TGo4TaskHandlerRunnable::fxTaskHandler, TGo4TaskHandlerRunnable::fxTransport, TGo4TaskHandler::GetDataQueue(), and TGo4TaskHandler::GetDataTransport().
TGo4DataRunnable::~TGo4DataRunnable | ( | ) | [virtual] |
Definition at line 38 of file TGo4DataRunnable.cxx.
TGo4DataRunnable::TGo4DataRunnable | ( | ) | [private] |
Int_t TGo4DataRunnable::Run | ( | void * | ptr | ) | [virtual] |
The working function which runs in the thread
Implements TGo4TaskHandlerRunnable.
Definition at line 42 of file TGo4DataRunnable.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(), kComQuit, TGo4Socket::ReceiveBuffer(), TGo4Socket::SendBuffer(), TGo4SocketSignalHandler::SetLastSignal(), TGo4Thread::Stop(), TGo4Task::SubmitLocalCommand(), and TGo4BufferQueue::WaitBuffer().