11.08., 9:00 - 11:00: Due to updates GitLab will be unavailable for some minutes between 09:00 and 11:00.

  1. 22 Jun, 2016 1 commit
    • Jakob Weiss's avatar
      Fixed Qt crash due painting from invalid thread · 0227c942
      Jakob Weiss authored
      invalidate() failed for events triggered by sigslot signals, as the makeCurrent() only works from the Qt main thread. Invalidation now goes through the Qt Signals/Slots mechanism to end up in the right thread.
      0227c942
  2. 20 Jul, 2015 1 commit
  3. 02 Jul, 2015 1 commit
  4. 14 Dec, 2014 1 commit
  5. 10 Dec, 2014 1 commit
  6. 26 Nov, 2014 1 commit
  7. 23 Oct, 2014 2 commits
  8. 15 Oct, 2014 2 commits
    • Christian Schulte zu Berge's avatar
      Moved AbstractJob and OpenGLJobProcessor from campvis-core to tgt and adapted... · fb8b1880
      Christian Schulte zu Berge authored
      Moved AbstractJob and OpenGLJobProcessor from campvis-core to tgt and adapted and cleaned up all necessary includes/references.
      fb8b1880
    • Christian Schulte zu Berge's avatar
      Started refactoring the CAMPVis OpenGL Wrapping API: · 58512d30
      Christian Schulte zu Berge authored
      The new OpenGL wrapping API allows for full multi-threaded access to OpenGL contexts. Instead of one single thread scheduling all OpenGL jobs for all contexts, the new GlContextManager allows for OpenGL access from multiple threads while ensuring that each OpenGL context is acquired by only one thread at a time.
      
      Detailed list of changes:
      * tgt::GlContextManager keeping track of which threads acquire which OpenGL contexts and which threads currently have a context acquired.
      * OpenGLJobProcessor does no longer schedules and execute the OpenGL calls for all existing contexts, but only for one single context that can be used for background tasks or other jobs that explicitly need a valid OpenGL context.
      * AbstractPipeline now implements the Runnable interface and thus runs in it's own thread. This thread also owns the pipeline's OpenGL context.
      * AbstractPipeline has a new pure virtual method executePipeline() that has to perform all computations done by the pipeline.
      * AbstractPipeline now takes directly care of calling Painter::paint() of the pipeline's canvas (instead of signalling the Painter). However, the Painter interface needs further cleanup.
      * AutoEvaluationPipeline was adapted to the new AbstractPipeline API, hence executing processors is no longer delegated to the OpenGLJobProcessor or the SimpleJobProcessor but entirely done in AutoEvaluationPipeline::executePipeline() and thus in the pipeline's thread.
      * Adjusted CampVisApplication, DataContainerInspectorWidget, and GeometryTransferFunctionEditor to the new API.
      58512d30
  9. 03 Aug, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Finished work on implementing asynchroneous signals: · bc11fde2
      Christian Schulte zu Berge authored
      * Slight changes to the API: renamed signal::trigger() to signal::triggerSignal() and signal::queue() to signal::queueSignal()
      * Replaced all sigslot signal emits through operator() with emits through emitSignal() to enable debug feature.
      * Fixed a possible race condition when deleting a GeometryTransferFunction and its editor window at the same time (as this will happen from different threads).
      
      refs #384
      bc11fde2
  10. 05 May, 2014 1 commit
  11. 23 Apr, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Fixed two minor issues: · db69d006
      Christian Schulte zu Berge authored
      * Geometry1DTransferFunctionEditor not correctly drawing image intensity histogram.
      * VolumeExplorer not always initializing slice- and raycasting render size properties.
      db69d006
  12. 23 Mar, 2014 1 commit
  13. 02 Mar, 2014 1 commit
  14. 07 Feb, 2014 1 commit
  15. 05 Jan, 2014 1 commit
  16. 13 Dec, 2013 2 commits
  17. 25 Oct, 2013 1 commit
  18. 16 Oct, 2013 1 commit
  19. 15 Oct, 2013 2 commits
  20. 11 Oct, 2013 1 commit
  21. 09 Oct, 2013 1 commit
  22. 08 Oct, 2013 1 commit
  23. 24 Sep, 2013 1 commit
  24. 21 Sep, 2013 1 commit
    • Artur Grunau's avatar
      Fix the redrawing of threaded GL canvases · 5fbb429e
      Artur Grunau authored
      QtThreadedCanvas used to ignore all repaint events send to it by Qt in
      order to avoid problems with threading. As a result, however, it would
      become blank when docked/undocked, and display garbage in those of its
      regions that some other widgets have moved over.
      
      To fix this, the API of TGT's Painter class had to be slightly modified
      and now mirrors that of Canvas with regard to painting-related
      operations. The paint method has been made protected; it's supposed to
      implement the painting logic and shouldn't be called directly. A public
      repaint method has been introduced to let canvases notify their
      associated painters that they need to be redrawn. The default
      implementation simply calls paint() immediately; threaded painters,
      however, override it to schedule render jobs that run in separate
      threads.
      
      All existing threaded painters have been updated to reduce the
      visibility of their paint methods and provide public repaint functions.
      Consequently, QtThreadedCanvas can now properly handle repaint events by
      delegating to its associated painter's repaint method.
      5fbb429e
  25. 09 May, 2013 1 commit
  26. 05 Feb, 2013 2 commits
  27. 30 Jan, 2013 1 commit
  28. 28 Jan, 2013 1 commit
  29. 18 Jan, 2013 1 commit
  30. 02 Nov, 2012 1 commit
  31. 31 Oct, 2012 1 commit
  32. 26 Oct, 2012 1 commit
  33. 05 Oct, 2012 3 commits