Go to the documentation of this file.00001 #include <ros/ros.h>
00002 #include <benchmark_processing_thread.h>
00003
00004 BenchmarkProcessingThread::BenchmarkProcessingThread(const moveit_benchmarks::BenchmarkExecution& be,
00005 const moveit_benchmarks::BenchmarkType& bt, QObject* parent)
00006 : QThread(parent), be_(be), bt_(bt)
00007 {
00008 setTerminationEnabled();
00009 }
00010
00011 BenchmarkProcessingThread::~BenchmarkProcessingThread()
00012 {
00013 }
00014
00015 void BenchmarkProcessingThread::startAndShow()
00016 {
00017 this->start();
00018
00019 progress_dialog_.reset(new QProgressDialog("Running benchmark", "Cancel", 0, 0));
00020 connect(this, SIGNAL(finished()), progress_dialog_.get(), SLOT(cancel()));
00021 progress_dialog_->setMinimum(0);
00022 progress_dialog_->setMaximum(0);
00023 progress_dialog_->exec();
00024 }
00025
00026 void BenchmarkProcessingThread::run()
00027 {
00028 ROS_INFO("Thread running");
00029 be_.runAllBenchmarks(bt_);
00030 }