Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ngscopeclient/scopehal-apps
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 9d6dad93d582
Choose a base ref
...
head repository: ngscopeclient/scopehal-apps
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 82fa51264a07
Choose a head ref
  • 2 commits
  • 2 files changed
  • 1 contributor

Commits on Sep 5, 2020

  1. Copy the full SHA
    4648738 View commit details
  2. Copy the full SHA
    82fa512 View commit details
Showing with 34 additions and 1 deletion.
  1. +21 −0 src/glscopeclient/WaveformArea.cpp
  2. +13 −1 src/glscopeclient/shaders/waveform-compute.glsl
21 changes: 21 additions & 0 deletions src/glscopeclient/WaveformArea.cpp
Original file line number Diff line number Diff line change
@@ -562,6 +562,27 @@ void WaveformArea::on_realize()
exit(1);
}

//Make sure we have the GL_ARB_gpu_shader_int64 extension
if(!GLEW_ARB_gpu_shader_int64)
{
string err =
"Your graphics card or driver does not appear to support the GL_ARB_gpu_shader_int64 extension, \n"
"which is required to perform GPU-accelerated 64-bit integer arithmetic.\n"
"\n"
"Unfortunately, glscopeclient cannot run on your system.\n";

Gtk::MessageDialog dlg(
err,
false,
Gtk::MESSAGE_ERROR,
Gtk::BUTTONS_OK,
true
);

dlg.run();
exit(1);
}

m_isGlewInitialized = true;
}

14 changes: 13 additions & 1 deletion src/glscopeclient/shaders/waveform-compute.glsl
Original file line number Diff line number Diff line change
@@ -118,7 +118,19 @@ void main()
//Digital signal - do not interpolate
else
{
//TODO: Draw the vertical line exactly one sample wide at edges
//If we are very near the left edge, draw vertical line
if(abs(left.x - gl_GlobalInvocationID.x + 1) <= 2)
{
starty = left.y;
endy = right.y;
}

//otherwise draw a single pixel
else
{
starty = right.y;
endy = right.y;
}
}

//Clip to window size