X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fsamplingbar.h;fp=pv%2Fsamplingbar.h;h=170379e0ce37c4b957f7ad75f239a96cd9abc282;hp=0000000000000000000000000000000000000000;hb=51e77110d4316fd0106f8306f5e1f0523c5bf7d7;hpb=8f94be14588c7a7ca0f483b649d7a7b5b5f45ae9 diff --git a/pv/samplingbar.h b/pv/samplingbar.h new file mode 100644 index 00000000..170379e0 --- /dev/null +++ b/pv/samplingbar.h @@ -0,0 +1,74 @@ +/* + * This file is part of the PulseView project. + * + * Copyright (C) 2012 Joel Holdsworth + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef SAMPLINGBAR_H +#define SAMPLINGBAR_H + +#include + +#include +#include +#include +#include + +class QAction; + +namespace pv { + +class SamplingBar : public QToolBar +{ + Q_OBJECT + +private: + static const uint64_t RecordLengths[11]; + +public: + SamplingBar(QWidget *parent); + + struct sr_dev_inst* get_selected_device() const; + uint64_t get_record_length() const; + uint64_t get_sample_rate() const; + +signals: + void run_stop(); + +private: + void update_device_selector(); + void update_sample_rate_selector(); + +private slots: + void on_device_selected(); + +private: + QComboBox _device_selector; + + QComboBox _record_length_selector; + + QComboBox _sample_rate_list; + QAction *_sample_rate_list_action; + QDoubleSpinBox _sample_rate_value; + QAction *_sample_rate_value_action; + + QToolButton _run_stop_button; +}; + +} // namespace pv + +#endif // SAMPLINGBAR_H