void TcpClientManager::manage()
    // Slot appelé par started() lors de l'exécution d'un nouveau thread
{
    // Récupère le QTcpSocket du client à l'aide de son descripteur
    if(! setSocketDescriptor(_socketDescriptor) )
    {
        emit sig_finished();
        return;
    }

    // TODO : Signaler intruderEjected si ce n'est pas un reader puis quitter
    QString clientAddress = peerAddress().toString();
    if(bddisNotAReaderAddress(clientAddress))
    {
        abort();
        emit sig_intruderEjected(clientAddress);
        emit sig_finished();
        return;
    }

    Reader* reader = bddgetReaderByAddress(clientAddress);
    reader->isConnected(true);
    bddsetReader(reader);
    emit sig_readerConnected();
    // TODO : Signaler readerDetected si c'est un reader
    // emit sig_readerConnected(Reader*);
}
Example #2
0
MainWindow::MainWindow( QWidget *parent ) :
	QMainWindow( parent ),
	ui( new Ui::MainWindow ) {

	ui->setupUi(this);

	// http://www.qtcentre.org/threads/37856-QtableWidget-With-Pushutton-get-row-error + qsignalmapper
	// ui->tableWidgetTrack->insertRow( 0 );
	// ui->tableWidgetTrack->setCellWidget( 0, 0, new QPushButton( "cokolwiek", this ) );

	// MainWindow GUI to MainWindow signals
	connect( ui->pushButtonStartRecording, SIGNAL( clicked() ),
			 this, SLOT( slot_recording_start_clicked() ) );
	connect( ui->pushButtonStopRecording, SIGNAL( clicked() ),
			 this, SLOT( slot_recording_stop_clicked() ) );

	// MainWindow to TrackRecorder signals
	connect( this, SIGNAL( sig_recording_stop() ),
			 &this->track_rec, SLOT( slot_recording_stop() ) );

	// TrackRecorder to MainWindow signals
	connect( &this->track_rec, SIGNAL( sig_finished( TrackRecorder::TmpFilePtr, quint64, quint64 ) ),
			 this, SLOT( slot_recording_finished( TrackRecorder::TmpFilePtr, quint64, quint64 ) ) );

	// TrackRecorder to TrackRecorderStatus signals
	connect( &this->track_rec, SIGNAL( sig_recording_status(int) ),
			 &this->track_rec_status, SLOT( slot_recording_status(int) ) );

	// TrackRecorderStatus to MainWindow signals
	connect( &this->track_rec_status, SIGNAL( sig_recording_stop() ),
			 this, SLOT( slot_recording_stop_clicked() ) );

}
void TcpClientManager::slot_sqlError(QString sqlError)
    // Slot ni connecté ni appellé pour l'instant
{
    formatError("Sql", sqlError);

    emit sig_sqlError(sqlError);
    emit sig_finished();
}
void TcpClientManager::slot_tcpError()
    // Slot connecté au signal error()
    // Emet le signal sig_tcpError(QString)
{
    QString tcpError = errorString();
    formatError("Tcp", tcpError);

    emit sig_tcpError(tcpError);
    emit sig_finished();
}
TcpClientManager::TcpClientManager(int socketDescriptor, QTcpServer *parent) :
    QTcpSocket(parent), _socketDescriptor(socketDescriptor)
{
    connect(this, SIGNAL(error(SocketError)),
            this, SLOT(slot_tcpError()));
    connect(this, SIGNAL(connected()),
            this, SLOT(slot_connected()));
    connect(this, SIGNAL(disconnected()),
            this, SLOT(slot_disconnected()));
    connect(this, SIGNAL(sig_finished()),
            this, SLOT(deleteLater()));
}