1. 23 Jul, 2015 1 commit
    • Christian Schulte zu Berge's avatar
      Added a field _pipelineName to AutoEvaluationPipeline. This allows to... · 12f36262
      Christian Schulte zu Berge authored
      Added a field _pipelineName to AutoEvaluationPipeline. This allows to implement AutoEvaluationPipeline::getName() so that AutoEvaluationPipeline is no longer abstract. Consequently, the LuaPipeline is no longer needed.
      
      This change was also used to change the AbstractPipeline constructor signature to pass-by-reference instead of pass-by-pointer for the pipeline's DataContainer. This presents the semantics more clearly since the DataContainer must not be 0.
      12f36262
  2. 20 Jul, 2015 1 commit
  3. 16 Jul, 2015 2 commits
  4. 08 Jul, 2015 1 commit
    • Christian Schulte zu Berge's avatar
      Refactored pipeline and processor registration: · 42cbc355
      Christian Schulte zu Berge authored
      PipelineRegistry and ProcessorRegistry are now part of campvis-core. Furthermore, moved all calls to PipelineRegistrar<>/SmartProcessorRegistrar<> to a separate cpp file for each module. This way all registrations are at one central location and including headers in external projects does not lead to double registration.
      
      This commit also removes the obsolete columbia and manualsegmentation modules.
      42cbc355
  5. 08 May, 2015 1 commit
  6. 18 Feb, 2015 2 commits
  7. 16 Feb, 2015 1 commit
  8. 08 Jan, 2015 1 commit
  9. 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
  10. 23 Oct, 2014 3 commits
  11. 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
  12. 27 Jul, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Streamlined AbstractProcessor API: · 36ab435a
      Christian Schulte zu Berge authored
      INVALID_RESULT, INVALID_PROPERTIES, INVALID_SHADER is validated automatically by AbstractProcessor::process(). Hence, there is finally no need anymore to validate these three different levels in each processor.
      36ab435a
  13. 05 May, 2014 1 commit
  14. 22 Apr, 2014 1 commit
  15. 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
  16. 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
  17. 24 Jan, 2014 1 commit
  18. 20 Jan, 2014 1 commit
  19. 14 Jan, 2014 2 commits
  20. 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
  21. 06 Jan, 2014 2 commits
  22. 30 Dec, 2013 3 commits