Work in progress.

merge-requests/1/head
Teuniz 2016-12-28 19:55:00 +01:00
rodzic cd823a6896
commit 7c3b0c7392
3 zmienionych plików z 35 dodań i 38 usunięć

Wyświetl plik

@ -35,7 +35,7 @@
#define PROGRAM_NAME "DSRemote"
#define PROGRAM_VERSION "0.33_1612281910"
#define PROGRAM_VERSION "0.33_1612281954"
#define MAX_PATHLEN 4096
@ -277,6 +277,8 @@ struct device_settings
// below here is use for the wave inspector
int wave_mem_view_sample_start;
int wave_mem_view_enabled;
double viewer_center_position;
};

Wyświetl plik

@ -65,7 +65,7 @@ UI_wave_window::UI_wave_window(struct device_settings *p_devparms, short *wbuf[M
devparms->timebasedelayenable = 0;
devparms->timebaseoffset = 0;
devparms->viewer_center_position = 0;
devparms->math_decode_uart_tx_nval = 0;
devparms->math_decode_uart_rx_nval = 0;
@ -159,7 +159,7 @@ void UI_wave_window::wavslider_value_changed(int val)
int samples_per_div = devparms->samplerate * devparms->timebasescale;
devparms->timebaseoffset = (double)(((devparms->wavebufsz - (devparms->hordivisions * samples_per_div)) / 2) - devparms->wave_mem_view_sample_start) /
devparms->viewer_center_position = (double)(((devparms->wavebufsz - (devparms->hordivisions * samples_per_div)) / 2) - devparms->wave_mem_view_sample_start) /
devparms->samplerate * -1.0;
wavcurve->update();
@ -173,7 +173,7 @@ void UI_wave_window::set_wavslider(void)
wavslider->setRange(0, devparms->wavebufsz - (devparms->hordivisions * samples_per_div));
devparms->wave_mem_view_sample_start = ((devparms->wavebufsz - (devparms->hordivisions * samples_per_div)) / 2) +
devparms->samplerate * devparms->timebaseoffset;
devparms->samplerate * devparms->viewer_center_position;
wavslider->setValue(devparms->wave_mem_view_sample_start);
}
@ -181,12 +181,12 @@ void UI_wave_window::set_wavslider(void)
void UI_wave_window::former_page()
{
devparms->timebaseoffset -= devparms->timebasescale * devparms->hordivisions;
devparms->viewer_center_position -= devparms->timebasescale * devparms->hordivisions;
if(devparms->timebaseoffset <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2;
}
@ -198,12 +198,12 @@ void UI_wave_window::former_page()
void UI_wave_window::next_page()
{
devparms->timebaseoffset += devparms->timebasescale * devparms->hordivisions;
devparms->viewer_center_position += devparms->timebasescale * devparms->hordivisions;
if(devparms->timebaseoffset >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2;
}
@ -215,12 +215,12 @@ void UI_wave_window::next_page()
void UI_wave_window::shift_page_left()
{
devparms->timebaseoffset -= devparms->timebasescale;
devparms->viewer_center_position -= devparms->timebasescale;
if(devparms->timebaseoffset <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2;
}
@ -232,12 +232,12 @@ void UI_wave_window::shift_page_left()
void UI_wave_window::shift_page_right()
{
devparms->timebaseoffset += devparms->timebasescale;
devparms->viewer_center_position += devparms->timebasescale;
if(devparms->timebaseoffset >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2;
}
@ -249,7 +249,7 @@ void UI_wave_window::shift_page_right()
void UI_wave_window::center_trigger()
{
devparms->timebaseoffset = 0;
devparms->viewer_center_position = 0;
set_wavslider();
@ -266,17 +266,17 @@ void UI_wave_window::zoom_in()
devparms->timebasescale = 1e-9;
}
if(devparms->timebaseoffset <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2;
}
if(devparms->timebaseoffset >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2;
}
@ -297,17 +297,17 @@ void UI_wave_window::zoom_out()
devparms->timebasescale = round_up_step125(devparms->timebasescale, NULL);
if(devparms->timebaseoffset <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position <= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / -2;
}
if(devparms->timebaseoffset >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
if(devparms->viewer_center_position >= ((((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2))
{
devparms->timebaseoffset = (((double)devparms->acquirememdepth / devparms->samplerate) -
devparms->viewer_center_position = (((double)devparms->acquirememdepth / devparms->samplerate) -
(devparms->timebasescale * devparms->hordivisions)) / 2;
}

Wyświetl plik

@ -77,8 +77,8 @@ void WaveCurve::paintEvent(QPaintEvent *)
samples_per_div,
sample_range,
sample_start,
sample_end;
sample_end,
t_pos;
double h_step=0.0,
step,
@ -117,7 +117,9 @@ void WaveCurve::paintEvent(QPaintEvent *)
drawTopLabels(painter);
drawSmallTriggerArrow(painter, 408, 16, 1, QColor(255, 128, 0));
t_pos = 408 - ((devparms->timebaseoffset / ((double)devparms->acquirememdepth / devparms->samplerate)) * 233);
drawSmallTriggerArrow(painter, t_pos, 16, 1, QColor(255, 128, 0));
painter->fillRect(0, curve_h - 30, curve_w, curve_h, QColor(32, 32, 32));
@ -379,14 +381,7 @@ void WaveCurve::paintEvent(QPaintEvent *)
}
}
if(devparms->timebasedelayenable)
{
trig_pos_arrow_pos = (curve_w / 2) - ((devparms->timebasedelayoffset / (devparms->timebasedelayscale * (double)devparms->hordivisions)) * curve_w);
}
else
{
trig_pos_arrow_pos = (curve_w / 2) - ((devparms->timebaseoffset / (devparms->timebasescale * (double)devparms->hordivisions)) * curve_w);
}
trig_pos_arrow_pos = (curve_w / 2) - (((devparms->timebaseoffset + devparms->viewer_center_position) / (devparms->timebasescale * (double)devparms->hordivisions)) * curve_w);
if(trig_pos_arrow_pos < 0)
{
@ -520,7 +515,7 @@ void WaveCurve::drawTopLabels(QPainter *painter)
dtmp1 = (devparms->hordivisions * devparms->timebasescale) / (devparms->acquirememdepth / devparms->samplerate);
dtmp2 = devparms->timebaseoffset / (devparms->acquirememdepth / devparms->samplerate);
dtmp2 = devparms->viewer_center_position / (devparms->acquirememdepth / devparms->samplerate);
painter->fillRect(288, 16, 233, 8, QColor(64, 160, 255));
@ -557,7 +552,7 @@ void WaveCurve::drawTopLabels(QPainter *painter)
painter->drawText(555, 20, "D");
convert_to_metric_suffix(str, devparms->timebaseoffset, 4);
convert_to_metric_suffix(str, devparms->timebaseoffset + devparms->viewer_center_position, 4);
strcat(str, "s");