kopia lustrzana https://gitlab.com/Teuniz/DSRemote
Work in progress.
rodzic
cd823a6896
commit
7c3b0c7392
4
global.h
4
global.h
|
@ -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;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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");
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue