MultiplotWidget.h
Go to the documentation of this file.
00001 /******************************************************************************
00002  * Copyright (C) 2015 by Ralf Kaestner                                        *
00003  * ralf.kaestner@gmail.com                                                    *
00004  *                                                                            *
00005  * This program is free software; you can redistribute it and/or modify       *
00006  * it under the terms of the Lesser GNU General Public License as published by*
00007  * the Free Software Foundation; either version 3 of the License, or          *
00008  * (at your option) any later version.                                        *
00009  *                                                                            *
00010  * This program is distributed in the hope that it will be useful,            *
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of             *
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the               *
00013  * Lesser GNU General Public License for more details.                        *
00014  *                                                                            *
00015  * You should have received a copy of the Lesser GNU General Public License   *
00016  * along with this program. If not, see <http://www.gnu.org/licenses/>.       *
00017  ******************************************************************************/
00018 
00019 #ifndef RQT_MULTIPLOT_MULTIPLOT_WIDGET_H
00020 #define RQT_MULTIPLOT_MULTIPLOT_WIDGET_H
00021 
00022 #include <QDockWidget>
00023 #include <QStringList>
00024 #include <QWidget>
00025 
00026 #include <rqt_multiplot/MessageTypeRegistry.h>
00027 #include <rqt_multiplot/MultiplotConfig.h>
00028 #include <rqt_multiplot/PackageRegistry.h>
00029 
00030 namespace Ui {
00031   class MultiplotWidget;
00032 };
00033 
00034 namespace rqt_multiplot {
00035   class MultiplotWidget :
00036     public QWidget {
00037   Q_OBJECT
00038   public:
00039     MultiplotWidget(QWidget* parent = 0);
00040     virtual ~MultiplotWidget();
00041 
00042     MultiplotConfig* getConfig() const;
00043     QDockWidget* getDockWidget() const;
00044 
00045     void setMaxConfigHistoryLength(size_t length);
00046     size_t getMaxConfigHistoryLength() const;
00047     void setConfigHistory(const QStringList& history);
00048     QStringList getConfigHistory() const;
00049     void runPlots();
00050 
00051     void loadConfig(const QString& url);
00052     void readBag(const QString& url);
00053 
00054     bool confirmClose();
00055 
00056   private:
00057     Ui::MultiplotWidget* ui_;
00058 
00059     MultiplotConfig* config_;
00060 
00061     MessageTypeRegistry* messageTypeRegistry_;
00062     PackageRegistry* packageRegistry_;
00063 
00064   private slots:
00065     void configWidgetCurrentConfigModifiedChanged(bool modified);
00066     void configWidgetCurrentConfigUrlChanged(const QString& url);
00067   };
00068 };
00069 
00070 #endif


rqt_multiplot
Author(s): Ralf Kaestner
autogenerated on Tue May 9 2017 02:16:02