| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | #include "fastgraph.h"
 | 
					
						
							| 
									
										
										
										
											2017-06-04 22:51:26 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | #include "commons.h"
 | 
					
						
							|  |  |  | #include <QSettings>
 | 
					
						
							|  |  |  | #include <QApplication>
 | 
					
						
							| 
									
										
										
										
											2018-12-06 05:41:16 +00:00
										 |  |  | #include <QKeyEvent>
 | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | #include "fastplot.h"
 | 
					
						
							| 
									
										
										
										
											2017-06-04 22:51:26 +00:00
										 |  |  | #include "SettingsGroup.hpp"
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | #include "ui_fastgraph.h"
 | 
					
						
							|  |  |  | #include "moc_fastgraph.cpp"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define NSMAX2 1366
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | FastGraph::FastGraph(QSettings * settings, QWidget *parent) : | 
					
						
							|  |  |  |   QDialog {parent, Qt::Window | Qt::WindowTitleHint | | 
					
						
							|  |  |  |            Qt::WindowCloseButtonHint | | 
					
						
							|  |  |  |            Qt::WindowMinimizeButtonHint}, | 
					
						
							| 
									
										
										
										
											2017-03-14 14:23:13 +00:00
										 |  |  |   m_settings {settings}, | 
					
						
							|  |  |  |   m_ave {40}, | 
					
						
							|  |  |  |   ui {new Ui::FastGraph} | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | { | 
					
						
							|  |  |  |   ui->setupUi(this); | 
					
						
							|  |  |  |   setWindowTitle (QApplication::applicationName () + " - " + tr ("Fast Graph")); | 
					
						
							|  |  |  |   installEventFilter(parent);                   //Installing the filter
 | 
					
						
							|  |  |  |   ui->fastPlot->setCursor(Qt::CrossCursor); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-06-04 22:51:26 +00:00
										 |  |  |   //Restore user's settings
 | 
					
						
							|  |  |  |   SettingsGroup g {m_settings, "FastGraph"}; | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  |   restoreGeometry (m_settings->value ("geometry", saveGeometry ()).toByteArray ()); | 
					
						
							|  |  |  |   ui->fastPlot->setPlotZero(m_settings->value("PlotZero", 0).toInt()); | 
					
						
							|  |  |  |   ui->fastPlot->setPlotGain(m_settings->value("PlotGain", 0).toInt()); | 
					
						
							|  |  |  |   ui->zeroSlider->setValue(ui->fastPlot->m_plotZero); | 
					
						
							|  |  |  |   ui->gainSlider->setValue(ui->fastPlot->m_plotGain); | 
					
						
							|  |  |  |   ui->fastPlot->setGreenZero(m_settings->value("GreenZero", 0).toInt()); | 
					
						
							|  |  |  |   ui->greenZeroSlider->setValue(ui->fastPlot->m_greenZero); | 
					
						
							| 
									
										
										
										
											2017-07-06 19:34:20 +00:00
										 |  |  | //  ui->controls_widget->setVisible (!m_settings->value("HideControls", false).toBool ());
 | 
					
						
							|  |  |  |   ui->controls_widget->setVisible(true); | 
					
						
							| 
									
										
										
										
											2016-06-24 17:01:51 +00:00
										 |  |  |   connect (ui->fastPlot, &FPlotter::fastPick, this, &FastGraph::fastPick); | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void FastGraph::closeEvent (QCloseEvent * e) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   saveSettings (); | 
					
						
							|  |  |  |   QDialog::closeEvent (e); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-06-04 22:51:26 +00:00
										 |  |  | FastGraph::~FastGraph () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | void FastGraph::saveSettings() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | //Save user's settings
 | 
					
						
							| 
									
										
										
										
											2017-06-04 22:51:26 +00:00
										 |  |  |   SettingsGroup g {m_settings, "FastGraph"}; | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  |   m_settings->setValue ("geometry", saveGeometry ()); | 
					
						
							|  |  |  |   m_settings->setValue("PlotZero",ui->fastPlot->m_plotZero); | 
					
						
							|  |  |  |   m_settings->setValue("PlotGain",ui->fastPlot->m_plotGain); | 
					
						
							|  |  |  |   m_settings->setValue("GreenZero",ui->fastPlot->m_greenZero); | 
					
						
							|  |  |  |   m_settings->setValue("GreenGain",ui->fastPlot->m_greenGain); | 
					
						
							| 
									
										
										
										
											2017-07-06 19:34:20 +00:00
										 |  |  | //  m_settings->setValue ("HideControls", ui->controls_widget->isHidden ());
 | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-09-17 13:34:40 +00:00
										 |  |  | void FastGraph::plotSpec(bool diskData, int UTCdisk) | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2016-09-17 13:34:40 +00:00
										 |  |  |   ui->fastPlot->m_diskData=diskData; | 
					
						
							|  |  |  |   ui->fastPlot->m_UTCdisk=UTCdisk; | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  |   ui->fastPlot->draw(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void FastGraph::on_gainSlider_valueChanged(int value) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   ui->fastPlot->setPlotGain(value); | 
					
						
							|  |  |  |   ui->fastPlot->draw(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void FastGraph::on_zeroSlider_valueChanged(int value) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   ui->fastPlot->setPlotZero(value); | 
					
						
							|  |  |  |   ui->fastPlot->draw(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void FastGraph::on_greenZeroSlider_valueChanged(int value) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   ui->fastPlot->setGreenZero(value); | 
					
						
							|  |  |  |   ui->fastPlot->draw(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-05-22 12:44:28 -04:00
										 |  |  | void FastGraph::setTRPeriod(double p) | 
					
						
							| 
									
										
										
										
											2016-09-15 17:06:49 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2019-05-22 12:44:28 -04:00
										 |  |  |   m_TRperiod=p; | 
					
						
							| 
									
										
										
										
											2016-09-15 17:06:49 +00:00
										 |  |  |   ui->fastPlot->setTRperiod(m_TRperiod); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | void FastGraph::on_pbAutoLevel_clicked() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   float sum=0.0; | 
					
						
							|  |  |  |   for(int i=0; i<=fast_jh; i++) { | 
					
						
							|  |  |  |     sum += fast_green[i]; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   m_ave=sum/fast_jh; | 
					
						
							|  |  |  |   ui->gainSlider->setValue(127-int(2.2*m_ave)); | 
					
						
							|  |  |  |   ui->zeroSlider->setValue(int(m_ave)+20); | 
					
						
							|  |  |  |   ui->greenZeroSlider->setValue(160-int(3.3*m_ave)); | 
					
						
							| 
									
										
										
										
											2016-10-21 18:07:12 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void FastGraph::setMode(QString mode)                              //setMode
 | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   ui->fastPlot->setMode(mode); | 
					
						
							| 
									
										
										
										
											2015-11-18 01:28:12 +00:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2017-03-14 14:23:13 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | void FastGraph::keyPressEvent(QKeyEvent *e) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   switch(e->key()) | 
					
						
							|  |  |  |   { | 
					
						
							| 
									
										
										
										
											2017-07-06 19:34:20 +00:00
										 |  |  | /*
 | 
					
						
							| 
									
										
										
										
											2017-03-14 14:23:13 +00:00
										 |  |  |   case Qt::Key_M: | 
					
						
							|  |  |  |     if(e->modifiers() & Qt::ControlModifier) { | 
					
						
							|  |  |  |       ui->controls_widget->setVisible (!ui->controls_widget->isVisible ()); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |     break; | 
					
						
							| 
									
										
										
										
											2017-07-06 19:34:20 +00:00
										 |  |  | */ | 
					
						
							| 
									
										
										
										
											2017-03-14 14:23:13 +00:00
										 |  |  |   default: | 
					
						
							|  |  |  |     QDialog::keyPressEvent (e); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | } |