1. 07 Apr, 2014 1 commit
    • 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
  2. 04 Apr, 2014 1 commit
  3. 01 Mar, 2014 1 commit
  4. 14 Jan, 2014 1 commit
  5. 13 Jan, 2014 2 commits
    • Christian Schulte zu Berge's avatar
      * Updated VolumeRenderer and VolumeExplorer to use user-defined RaycastingProcessor · 8d26da04
      Christian Schulte zu Berge authored
      * RaycastingProcessor now has the p_targetImageID property and optionally uses a custom GLSL version for the shader
      * Introducing PropertyCollection::getNestedProperty allowing to get nested properties with a single method call
      * Fixed StringUtils::split() methods being broken with multi-character delimiters
      8d26da04
    • 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
  6. 12 Jan, 2014 1 commit
  7. 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
  8. 05 Jan, 2014 1 commit
  9. 04 Jan, 2014 1 commit
  10. 13 Dec, 2013 1 commit
  11. 12 Dec, 2013 1 commit
  12. 06 Dec, 2013 1 commit
  13. 05 Dec, 2013 1 commit
  14. 28 Nov, 2013 2 commits
  15. 30 Oct, 2013 1 commit
  16. 28 Oct, 2013 1 commit
  17. 25 Oct, 2013 1 commit
  18. 15 Oct, 2013 2 commits
  19. 11 Oct, 2013 2 commits
  20. 09 Oct, 2013 1 commit
  21. 08 Oct, 2013 8 commits
  22. 27 Sep, 2013 2 commits
  23. 25 Sep, 2013 3 commits
    • Christian Schulte zu Berge's avatar
      Revised LQ mode concept for visualization pipelines/processors: · b3913e3d
      Christian Schulte zu Berge authored
      Instead of having the LQ mode tied to the pipeline, each VisualizationProcessor has now a lqMode property effectively halfsampling the viewport size. The TrackballNavigationEventHandler was adapted to these changes and thus simplified.
      b3913e3d
    • Artur Grunau's avatar
      FloatingPointProperty: provide a default step value · 4853ed7d
      Artur Grunau authored
      Even though many float-based properties derived from
      FloatingPointProperty used the same step value, T(0.01), it had to be
      specified when instantiating them. To reduce boilerplate code in
      property constructors, FloatingPointProperty now uses T(0.01) as the
      default step value.
      4853ed7d
    • Artur Grunau's avatar
      NumericProperty: provide a default step value · 8fcbfb5b
      Artur Grunau authored
      Even though all integer-based properties derived from NumericProperty
      used the same step value, T(1), it had to be specified when
      instantiating them. To reduce boilerplate code in property
      constructors, NumericProperty now uses T(1) as the default step value.
      8fcbfb5b
  24. 24 Sep, 2013 3 commits