pelican/output/src/ThreadedBlobServer.cpp
/**
 * @details
 * Send datablob to connected clients, and block until data is sent
 */
@details
Send datablob to connected clients, and block until data is sent
@details Send datablob to connected clients and block until data is sent
void ThreadedBlobServer::blockingSend(const QString& streamName, const DataBlob* incoming)
{
    QMutexLocker locker(&_mutex);
    _waiting[incoming] = new QWaitCondition; 
    send(streamName, incoming ); 
    _waiting[incoming]->wait(&_mutex); 
    delete _waiting.take(incoming);
}
void ThreadedBlobServer :: blockingSend ( const QString & streamName , const DataBlob * incoming ) { QMutexLocker locker ( & _mutex ) ; _waiting [ incoming ] = new QWaitCondition ; send ( streamName , incoming ) ; _waiting [ incoming ] -> wait ( & _mutex ) ; delete _waiting . take ( incoming ) ; }
@details
 Send datablob to connected clients, and block until data is sent
@details Send datablob to connected clients and block until data is sent
// ensure waiting object is created before we send // Tell the threaded blob server to send data // go to sleep until send() has completed