コード例 #1
0
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    // start tcp socket
    QThread* thread = new QThread;// writetodatabase *database;
    database = new writetodatabase();


    database->moveToThread(thread);
    connect(thread, SIGNAL(started()),  database, SLOT(startDb()));
    connect(database, SIGNAL(finished()), thread, SLOT(quit()));
    connect(database, SIGNAL(finished()), database, SLOT(deleteLater()));
    connect(thread, SIGNAL(finished()), thread, SLOT(deleteLater()));
    connect(this,SIGNAL(sendSetPoint(const QString)),database, SLOT(sendSetPoint(const QString)));

    thread->start();

     connect(ui->sendht, SIGNAL(clicked()), this, SLOT(sliderValue()));

         // setgraphs( ui->qtplot,"Time","Flowrate",14);
          setgraphs( ui->qtplot_2,"Time","Voltage(PWM)",100);
          setgraphs( ui->qtplot_3,"Time","IR Reading",400);

       // setup a timer that repeatedly calls MainWindow::realtimeDataSlot:
        connect(&dataTimer, SIGNAL(timeout()), this, SLOT(realtimeDataSlot()));
          dataTimer.start(500);
}
コード例 #2
0
AsyncPropertyReply *DatabaseSink::setProperty(AsyncSetPropertyRequest request)
{
	AsyncPropertyReply* reply = new AsyncPropertyReply(request);
	reply->success = false;

	if(request.property == DatabaseLogging)
	{
		if(request.value->value<bool>())
		{
			setPlayback(false);
			startDb();
			reply->success = true;
			DatabaseLoggingType temp(true);
			routingEngine->updateProperty(DatabaseLogging,&temp,uuid());
		}
		else
		{
			stopDb();
			reply->success = true;
			DatabaseLoggingType temp(false);
			routingEngine->updateProperty(DatabaseLogging,&temp,uuid());
		}
	}

	else if(request.property == DatabaseFile)
	{
		std::string fname = request.value->toString();

		databaseName = fname;

		DatabaseFileType temp(databaseName);

		routingEngine->updateProperty(DatabaseFile,&temp,uuid());

		reply->success = true;
	}
	else if( request.property == DatabasePlayback)
	{
		if(request.value->value<bool>())
		{
			setLogging(false);
			startPlayback();

			DatabasePlaybackType temp(playback);

			routingEngine->updateProperty(DatabasePlayback,&temp,uuid());
		}
		else
		{
			if(playbackShared)
				playbackShared->stop = true;

			playback = false;

			DatabasePlaybackType temp(playback);

			routingEngine->updateProperty(DatabasePlayback, &temp, uuid());
		}

		reply->success = true;
	}

	return reply;
}