1. 05 Dec, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Completely refactored and cleaned up cgt::Texture interface: · 3df24932
      Christian Schulte zu Berge authored
      * cleaned up cgt::Texture's constructors: only two left - to create an empty texture or a non-empty one
      * cgt::Texture will no longer hold a copy of the image data in local memory
      * removed a lot of redundant/confusing methods
      * no longer needed to call uploadTexture() even though you don't want to upload sth.
      * Adapted all known code to the new interface
      * Removed cgt::TextureReaderDevil
      
      refs #613
      3df24932
  2. 17 Nov, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Some work on AdvancedUsVis module: · f67886eb
      Christian Schulte zu Berge authored
      * Introducing PredicateDemoSmallHeart pipeline draft.
      * Fixed double signal callback registration in predicate-based rendering demo pipelines.
      * Fixed PredicateVolumeExplorer not re-rendering when predicate histogram property changed.
      * Disabled hiding of Add Predicate buttons in pointpredicatehistogrampropertywidget.cpp
      f67886eb
  3. 24 Oct, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Finished work on refactoring the camera API · 3c921952
      Christian Schulte zu Berge authored
      * Removed CameraProperty, CameraPropertyWidget and TrackballNavigationEventListener
      * replaces all known occurrences of the above three with the new TrackballCameraProvider processor
      * introduced TrackballCameraProvider::reinitializeCamera()
      
      refs #141
      3c921952
  4. 23 Oct, 2014 2 commits
  5. 22 Oct, 2014 4 commits
  6. 16 Oct, 2014 1 commit
  7. 15 Oct, 2014 1 commit
  8. 08 Oct, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Improved CAMPVis deployment: · 665c2036
      Christian Schulte zu Berge authored
      Added directories of various needed resources (textures, sampledata) to the CampvisShaderDirectories CMake variable, which is used for deployment. Replaced various occurences of CAMPVIS_SOURCE_DIR with ShdrMgr.completePath().
      665c2036
  9. 12 Aug, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Hotfix for DevilImageReader from recent merge: · 0794b27f
      Christian Schulte zu Berge authored
      * AbstractImageReader is now again an AbstractProcessor, so that we can get rid of the dynamic_casts in GenericImageReader
      * DevilImageReader is no longer a VisualizationProcessor but gets the OpenGL context through OpenGLJobProcessor::ScopedSynchronousGlJobExecution
      * Fixed alglib's CMakeLists.txt
      0794b27f
  10. 08 Aug, 2014 2 commits
    • Christian Schulte zu Berge's avatar
    • Christian Schulte zu Berge's avatar
      Refactoring SliceExtractor processor: · b7817eb2
      Christian Schulte zu Berge authored
      To better support sharing the functionality of slice rendering, the SliceExtractor processor was refactored: Similar to the RaycastingProcessor, the main functionality was moved to an abstract base class, the SliceRenderProcessor. This takes care of computing all the necessary transformation matrices, optionally rendering crosshair and integrating geometry, as well as handling user input to support scribbling. The actual SliceExtractor processor now only implements the rendering of the slice itself, i.e. applying the transfer function.
      
      In this regard, VolumeExplorer was updated to use the generic SliceRenderProcessor, and TransFuncWindowingEventListener supports changing of its assigned property.
      b7817eb2
  11. 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
  12. 27 Jul, 2014 5 commits
  13. 10 Jul, 2014 1 commit
  14. 16 Jun, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Two small updates: · 0f08b399
      Christian Schulte zu Berge authored
      * SliceExtractor FitToWindow property defaults to true to mimic old behavior per default
      * PointPredicateRenderArea renders y axis label
      0f08b399
  15. 05 May, 2014 3 commits
  16. 22 Apr, 2014 1 commit
  17. 07 Apr, 2014 2 commits
    • Christian Schulte zu Berge's avatar
      Fixed CMake build scripts to better handle default enabled modules and... · 9622f2ff
      Christian Schulte zu Berge authored
      Fixed CMake build scripts to better handle default enabled modules and specifically disabled modules.
      9622f2ff
    • Christian Schulte zu Berge's avatar
      Moved invalidation level from AbstractProperty to AbstractProcessor: · 293d43dd
      Christian Schulte zu Berge authored
      To now, each property hat an _invalidationLevel field that was evaluated by processors when the property had changed in order to determine what has to be done. However, since properties could also be owned by other classes, this design was semantically misleading.
      Therefore, it was removed with this commit and replaced by the invalidation map of each processor. Now, this per-processor mapping of property -> invalidation level is managed by the processor itself. Furthermore, the invalidation level is no longer setup during property creation but during AbstractProcessor::addProperty(), which also makes much more sense.
      
      ATTENTION: Due to these intrusive API changes, the code of all processors and other classes handling properties needs to be changed. As a reminder, the implementation of addProperty() also now takes a reference instead of a pointer, so that old code does no longer compile.
      
      refs #542
      293d43dd
  18. 06 Apr, 2014 3 commits
  19. 04 Apr, 2014 1 commit
  20. 16 Mar, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Updated and refactored CAMPVis module build system: CAMPVis module .cmake... · 689d5439
      Christian Schulte zu Berge authored
      Updated and refactored CAMPVis module build system: CAMPVis module .cmake files now define two additional Variables:
      * ThisModStatus defines the status of the module and should be one of STABLE, TESTING or EXPERIMENTAL
      * ThisModExternalDependencies defines, whether this module has further external dependencies that are not shipped
      
      The main CAMPVis build system now ships a new enumeration option CAMPVIS_DEFAULT_ENABLED_MODULES, which can be one of "NONE" "STABLE_NO_DEPENDENCIES" "STABLE_WITH_EXTERNAL_DEPENDENCIES" "TESTING" and "ALL". The INCLUDE_MODULE() function in the build scripts will evaluate the modules' status information and enable every module that matches the specified value.
      
      ATTENTION: Due to these changes in the build system, the modules' cmake files should put their setup block into an IF(ModuleEnabled) block, since the file is also parsed, when the module is not enabled (in order to gather the status information).
      
      closes #385
      689d5439
  21. 24 Jan, 2014 1 commit
  22. 23 Jan, 2014 3 commits
  23. 13 Jan, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Fixing commit 5f72759e: · 56724724
      Christian Schulte zu Berge authored
      C++ implicit conversion rules made ShaderManager::loadSeparate() ambiguous in some cases. So I decided to cut loose ends and completely refactored loading with standard version into ShaderManager::load() and loading with custom version into ShaderManager::loadWithCustomGlslVersion().
      ShaderManager::loadSeparate() is no longer available!
      56724724
  24. 08 Jan, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Refactoring AbstractProcessor::process() for clearer semantics and better and... · cd9d3feb
      Christian Schulte zu Berge authored
      Refactoring AbstractProcessor::process() for clearer semantics and better and more uniform handling of invalidation levels:
       * AbstractProcessor::process() now calls updateShader(), updateProperties() and/or updateResult() with respect to the current invalidation level
       * each processor shall no longer override process() but the updateXYZ() methods, at minimum updateResult()
       * AbstractProcessor::process() takes care of (un)locking the processor itself (no need to do this from the outside anymore)
      
      Further implicit changes:
       * Removed redundant HasPropertyCollection::updateProperties()
      cd9d3feb