Currently job artifacts in CI/CD pipelines on LRZ GitLab never expire. Starting from Wed 26.1.2022 the default expiration time will be 30 days (GitLab default). Currently existing artifacts in already completed jobs will not be affected by the change. The latest artifacts for all jobs in the latest successful pipelines will be kept. More information: https://gitlab.lrz.de/help/user/admin_area/settings/continuous_integration.html#default-artifacts-expiration

  1. 14 Jul, 2014 2 commits
  2. 10 Jun, 2014 1 commit
  3. 08 Jun, 2014 1 commit
  4. 31 May, 2014 1 commit
  5. 10 May, 2014 9 commits
    • Artur Grunau's avatar
      Adapt bindings to the new invalidation level system · 16ee3af2
      Artur Grunau authored
      Commit 293d43dd introduced breaking changes to the way invalidation
      levels are handled. As a result, property and processor-related bindings
      failed to compile.
      
      Update all SWIG bindings affected by the above problem to make them
      compatible with the current property and processor-related APIs.
      
      References #1
      16ee3af2
    • Artur Grunau's avatar
      Add support for all signal arities to SWIG wrappers for siglot · 9ee1138f
      Artur Grunau authored
      SWIG wrappers for siglot only supported unary signals until now. This
      commit adds support for all remaining signal arities to make it possible
      to connect to arbitrary signals from Lua.
      
      The implementation makes heavy use of templates but, due to the
      limitations of VS 2010 (no variadic templates), still contains lots of
      duplicated boilerplate code.
      
      `sigslot.i` has been moved from `scripting/` to `ext/sigslot/` to keep
      it close to the code it's wrapping.
      
      References #1
      9ee1138f
    • Artur Grunau's avatar
      Initial support for using Lua functions as slots · 785ba7de
      Artur Grunau authored
      Certain types of pipelines need to react to changes in their constituent
      processors. CAMPVis uses a signal-slot mechanism (based on the sigslot
      library) for this purpose. Up until now, however, there was no way to
      connect to a signal from a pipeline defined in Lua.
      
      This commit adds initial support for connecting Lua functions to
      sigslot's signals. The current implementation only works with unary
      signals, and should be considered a proof of concept. To test it,
      AbstractProcessor's s_validated signal has been wrapped using SWIG.
      
      References #1
      785ba7de
    • Artur Grunau's avatar
      Get rid of ExtendedAutoEvaluationPipeline · d41681ec
      Artur Grunau authored
      Lua pipelines need to access certain protected properties of
      AbstractPipeline but can't reference them directly as they don't
      actually inherit from any class. ExtendedAutoEvaluationPipeline was
      added to generated bindings to expose public getters for the properties
      in question. LuaPipeline instances could then be cast to
      ExtendedAutoEvaluationPipeline to give Lua code access to these new
      methods.
      
      However, now that HasPropertyCollection has been wrapped, the protected
      properties can be accessed via its getProperty method. This approach is
      preferred as it's much cleaner and simplifies our interface files. As a
      result, ExtendedAutoEvaluationPipeline has been removed.
      
      References #1
      d41681ec
    • Artur Grunau's avatar
      Add Lua bindings for several classes from campvis-core · 816fdc50
      Artur Grunau authored
      Several classes from campvis-core that are needed to reimplement
      VolumeRendererDemo in Lua have been wrapped using SWIG. Among the
      classes are: ImageData, CameraProperty,
      TrackballNavigationEventListener, and their respective super-classes.
      
      References #1
      816fdc50
    • Artur Grunau's avatar
      Add support for automatic registration of Lua pipelines · c2348225
      Artur Grunau authored
      As there's currently only one Lua pipeline, we could so far get away
      with storing it in the `scripting` directory, giving it a generic name
      and registering it manually. However, this approach won't work anymore
      once additional Lua pipelines start to be implemented.
      
      To support multiple Lua pipelines, implement a registration mechanism
      for scripted pipelines based on PipelineFactory and similar to
      PipelineRegistrar. It scans each active module's `pipelines` directory
      for Lua pipelines, parses them and generates a registration header that,
      when included, registers them with PipelineFactory.
      
      As a result of the above, the test Lua pipeline had to be moved to
      `modules/preprocessing/pipelines/` and could be renamed
      ResamplingDemoLua.
      
      References #1
      c2348225
    • Christian Schulte zu Berge's avatar
      Lua scripting: add a wrapper for FloatProperty · 0ed0a6bb
      Christian Schulte zu Berge authored
      To make it possible to access GlImageResampler's p_resampleScale
      property from Lua, FloatProperty and the classes it depends on have been
      wrapped using SWIG.
      
      References #1
      0ed0a6bb
    • Artur Grunau's avatar
      Finalise the implementation of the first Lua pipeline · 818c79cc
      Artur Grunau authored
      Now that TGT and campvis-core can be built as shared libraries, the few
      remaining issues with the first Lua pipeline could be tracked and fixed.
      As a result, the pipeline can be executed without any issues, and its
      functionality exactly corresponds to that of ResamplingDemo. To achieve
      this, several additional classes, methods and constants had to be
      wrapped.
      
      References #1
      818c79cc
    • Artur Grunau's avatar
      Lua scripting: rearrange interface files · 382d1c52
      Artur Grunau authored
      All interface files used to live under `scripting/`. However, that
      separated them from the code they were binding and clustered them
      unnecessarily.
      
      Make each interface file part of the CAMPVis component whose code it's
      binding. This fixes the issues mentioned above and makes it possible to
      build Lua modules conditionally, depending on what components of CAMPVis
      are enabled.
      
      References #1
      382d1c52
  6. 06 May, 2014 1 commit
  7. 05 May, 2014 4 commits
  8. 30 Apr, 2014 1 commit
  9. 29 Apr, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Fixed converter registration in statically linked builds: · b0e1aaed
      Christian Schulte zu Berge authored
      Statically linked builds strip all unused objects from their sources. This would be the case for the converters since they are nowhere called explicitly. In order to fix that, we use the same pattern as with the pipeline registration: The CMake build scripts parse all headers for an explicit template instantiation of a ConversionFunctionRegistrar. All these headers are included from the generated gen_converterregistration.h file, which is itself included from imagerepresentationconverter.cpp and thus gets compiled into the final executable also on static linking.
      
      refs #474
      refs #553
      b0e1aaed
  10. 28 Apr, 2014 1 commit
  11. 27 Apr, 2014 1 commit
  12. 24 Apr, 2014 2 commits
    • Christian Schulte zu Berge's avatar
      Further work on new image representation conversion API: · dbe4f8e5
      Christian Schulte zu Berge authored
      Removed all code fragments in core code that was ITK specific (conversion from/to GenericImageRepresentationItk). The functionality was replaced by the new conversion functors in imagerepresentationconversionitk.h and imagerepresentationconversionitk.cpp.
      
      refs #553
      refs #474
      dbe4f8e5
    • Christian Schulte zu Berge's avatar
      Started refactoring the ImageData conversion API: · 0ac65c4f
      Christian Schulte zu Berge authored
      Conversions between image representations are now managed at one central place: The ImageRepresentationConverter singleton uses the proven and established registration through static template instantiation idiom to register conversion functors during static initialization. Therefore, the ConversionFunctionRegistrar registers a conversion functor to a target representation type.
      
      As proof-of-concept implementation, the former conversion API through T::tryConvertFrom, where T is a specific image representation, has been converted to the new API and merged into imagerepresentationconversioncore.h providing a conversion functor for each campvis-core representation.
      
      Furthermore, implemented conversion from ImageRepresentationGL to GenericImageRepresentationLocal<>.
      
      refs #553
      refs #474
      0ac65c4f
  13. 23 Apr, 2014 8 commits
  14. 22 Apr, 2014 1 commit
  15. 15 Apr, 2014 1 commit
  16. 11 Apr, 2014 2 commits
  17. 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
  18. 04 Apr, 2014 2 commits