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 3 commits
  3. 02 Apr, 2014 2 commits
  4. 25 Mar, 2014 2 commits
    • Christian Schulte zu Berge's avatar
      Implemented normalizing conversion between different... · f52c44b3
      Christian Schulte zu Berge authored
      Implemented normalizing conversion between different GenericImageRepresentationLocal<BASETYPE, NUMCHANNELS> representations as proof-of-concept. This conversion might not always yield expected results since it remaps the entire input data type range to the entire output data type range. While this is reasonable for downcasts (narrowing conversions) a histogram stretch for widening conversions is probably not expected or wanted by the caller.
      
      A more flexible and elaborate conversion as well as automatic conversion from ITK and OpenGL representations will need a redesign of the conversion interface since we're fighting with severe cyclic include dependency problems here. The future design should provide the possibility to externally register conversion functions for new data types that are not necessarily known in the core package (i.e. ITK representations).
      
      refs #474
      f52c44b3
    • Christian Schulte zu Berge's avatar
      Removed AbstractImage::getSubImage() interface since it's implementation in... · 25b1737c
      Christian Schulte zu Berge authored
      Removed AbstractImage::getSubImage() interface since it's implementation in all subclasses is far from trivial and therefore was not done thoroughly. Since the functionality was not used anywhere so far, it was removed to avoid unexperienced users trying to use it and getting confused if it does not work as intended.
      Could be reimplemented in extra processors for special cases.
      
      closes #339
      25b1737c
  5. 17 Mar, 2014 1 commit
  6. 13 Mar, 2014 2 commits
  7. 11 Mar, 2014 2 commits
  8. 10 Mar, 2014 1 commit
    • Artur Grunau's avatar
      Replace CAMPVIS_SHARED_LIBS with BUILD_SHARED_LIBS · 9c6f117b
      Artur Grunau authored
      CAMPVis used a custom option, CAMPVIS_SHARED_LIBS, to determine whether
      shared or static libraries should be built. This option partially
      duplicated the functionality of one of CMake's standard flags,
      BUILD_SHARED_LIBS. The two could get out of sync, and because CMake only
      consults BUILD_SHARED_LIBS when deciding how to build a library target,
      it was possible to get inconsistent and broken build configurations.
      
      To prevent that, add BUILD_SHARED_LIBS as an option to CAMPVis' main
      CMakeLists and replace all references to CAMPVIS_SHARED_LIBS with
      BUILD_SHARED_LIBS. This makes BUILD_SHARED_LIBS the only flag that
      controls whether shared or static libraries are built.
      
      References #367
      9c6f117b
  9. 05 Mar, 2014 1 commit
  10. 02 Mar, 2014 3 commits
  11. 01 Mar, 2014 1 commit
  12. 27 Feb, 2014 1 commit
  13. 22 Feb, 2014 1 commit
  14. 17 Feb, 2014 1 commit
  15. 13 Feb, 2014 2 commits
  16. 07 Feb, 2014 1 commit
  17. 03 Feb, 2014 1 commit
  18. 29 Jan, 2014 1 commit
  19. 24 Jan, 2014 3 commits
  20. 23 Jan, 2014 1 commit
  21. 15 Jan, 2014 2 commits
  22. 14 Jan, 2014 3 commits
  23. 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
  24. 12 Jan, 2014 2 commits