- 30 Sep, 2014 1 commit
-
-
Jakob Weiss authored
* AbstractPipeline offers getter for the canvas to execute jobs in the pipeline's OpenGL context * PropertyCollectionWidget adds a spacer element at the end to prevent element stretching when there is too much free space * job.h offers new CallFunctionObjectJob to create jobs on the fly using lambda functions (the respective makeJob and makeJobOnHeap are inlined to prevent linker errors)
-
- 11 Aug, 2014 2 commits
-
-
Christian Schulte zu Berge authored
* Fixed possible endless loop in event evaluation of AbstractPipeline. * Fixed 4-channel image rendering in datacontainerinspector.frag.
-
Christian Schulte zu Berge authored
* Added OpenGL thread guard to image conversions to ImageRepresentationGL.
-
- 10 Aug, 2014 1 commit
-
-
Hossain Mahmud authored
[merged commit]clean ups, fixes for g++ errors and warnings, and edits for cppcheck errors (except for the 480+ in the external library AlgLib)
-
- 08 Aug, 2014 1 commit
-
-
Christian Schulte zu Berge authored
Replaced DataContainer::s_dataAdded<const std::string&, DataHandle> with DataContainer::s_dataAdded<std::string, DataHandle>.
-
- 07 Aug, 2014 1 commit
-
-
Christian Schulte zu Berge authored
According to Visual Leak Detector, CAMPVis is now memory leak free. :)
-
- 05 Aug, 2014 2 commits
-
-
Christian Schulte zu Berge authored
-
Hossain Mahmud authored
relocated mscopysegmentation module relocated alglib library. Compiler warning level raised to w1 to get rid of float-double conversions. save results into csv akima spline interpolation using alglib, deleting nearest point alglib library. extensive trimming required ctrl+wheel zooming, arrow movement, ctrl+z, atl+click_nearest+click to edit _nearest point multi object, multi location, multi slide contour point/line painting draft code for addobject deleteobject added ContourObject class linked with add and delete button. added a proxy class of Vec4Property/Widget as colorproperty/widget to control drawing color Conflicts: modules/vis/processors/sliceextractor.cpp edited DevilImageReader to read multiple files having same name pattern: somePrefix_[number].[extension] given the 1st file name Worked on DevilImageReader to load single 2d image for 3d rendering exp_01 commit
-
- 03 Aug, 2014 1 commit
-
-
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
-
- 28 Jul, 2014 1 commit
-
-
Christian Schulte zu Berge authored
* Fixed crash (due to nullptr) in DataContainerInspectorWidget if DevIL module not present.
-
- 27 Jul, 2014 9 commits
-
-
Christian Schulte zu Berge authored
refs #384
-
Christian Schulte zu Berge authored
Removed all occasions where references to DataHandles were used, since especially their use in signals may lead to segfaults or other undesired behavior.
-
Christian Schulte zu Berge authored
Introducing sigslot::concurrent_pointer_list<T> a list-like container allowing thread-safe bidirectional iteration, insertion and removal of elements. Single constraint is that the element type must be a pointer type (or at least have pointer semantics) and never be 0. This is neat, as this class offers exactly what we need for a lock-free sigslot implementation. Updated sigslot implementation to use concurrent_pointer_list for connection storage. Hence, we can get rid of the locking mechanisms, which got completely removed. Since this simplified template definitions for sigslot, many campvis files needed to be adapted (i.e. removing the <> from has_slots<> and signal0<>). refs #384 Conflicts: core/classification/genericgeometrytransferfunction.h core/eventhandlers/trackballnavigationeventlistener.h core/pipeline/processordecoratormasking.h core/properties/propertycollection.h core/properties/transferfunctionproperty.h core/tools/opengljobprocessor.h
-
Christian Schulte zu Berge authored
Register std::vector<DataContainer*> and std::vector<AbstractPipeline*> as Qt meta types in mainwindow.cpp to support them in Qt signals (even though I do not understand why the issue did not arise before...)
-
Christian Schulte zu Berge authored
* Moved campvis::Runnable interface to tgt namespace (since it's needed by sigslot, which only depends on tgt) * Introduced sigslot::signal_manager singleton class that will manage the dispatching of signals in its own thread * Started proof-of-concept implementation of asynchroneous signals for signal0<> and signal1<>. Both classes define their own signal_handleN deriving from _signal_handle_base, which defines the signal to dispatch. Proof-of-concept implementation seems to work so far. refs #384 Conflicts: core/tools/opengljobprocessor.h ext/tgt/runnable.h Conflicts: application/CMakeLists.txt core/tools/opengljobprocessor.h
-
Christian Schulte zu Berge authored
If you need one of these two C++11 headers, include <ext/threading.h> instead, which will use C++11 headers if present or TBB's compatibility layer otherwise. closes #567
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
-
- 15 Jul, 2014 2 commits
-
-
Christian Schulte zu Berge authored
* AbstractData now stores a weak_ptr to its shared_ptr owning group if existant. This avoids unintentional creation of multiple owning groups where each eventually tries to delete the AbstractData on its own (which will certainly not work) * Updated DataContainer implementation to use a hash map instead of an unordered map.
-
Christian Schulte zu Berge authored
Enforced update of min/max/singleStep values in AbstractAdjusterWidget to be performed in Qt main thread through additional indirection via Qt queued signals.
-
- 10 Jul, 2014 1 commit
-
-
Christian Schulte zu Berge authored
* Introduced two new tgt::LogManager log levels LuaInfo and LuaError. * ScriptingWidget registers itself as logger and prints the Lua output into the console window.
-
- 23 Jun, 2014 1 commit
-
-
Jakob Weiss authored
-
- 07 Jun, 2014 1 commit
-
-
Jakob Weiss authored
-
- 02 Jun, 2014 1 commit
-
-
Christian Schulte zu Berge authored
* Implemented one single gloabel Lua VM for the entire CampVisApplication instead of one VM for each pipeline. * The global Lua VM has a "pipelines" table/array, holding the pointers to each loaded pipeline * ScriptingWidget support cycling through last executed commands via the arrow keys * LuaVmState supports redirecting Lua's print() function to a custom one that uses tgt::Logmanager for printing (just as proof-of-concept). This shall later be extended to pass all Lua output to the scripting console.
-
- 31 May, 2014 1 commit
-
-
Christian Schulte zu Berge authored
With scripting enabled, the main window now has an additional scripting widget that allows to interact with a Lua VM. The current proof-of-concept implementation creates a Lua VM for every instantiated CAMPVis pipeline while the console just interacts with the first pipeline's one. However, the Lua VM concept has to be reiterated later anyway. It may make more sense to have just a single central Lua VM for the entire application, which is shared by each pipeline.
-
- 30 May, 2014 1 commit
-
-
Christian Schulte zu Berge authored
Fixed timing issue in CampVisPainter that led CampVisPainter::paint() being called before CampVisPainter::init(). CampVisPainter::paint() now ensures the class (and in particular the shader) to be correctly initialized. fixes #564
-
- 10 May, 2014 2 commits
-
-
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
-
Artur Grunau authored
This commit marks the start of work on making Lua pipelines as easy to register and instantiate as regular ones. A sample Lua pipeline has been made available to the application so that problems with integrating Lua pipelines can be discovered and fixed. References #1
-
- 06 May, 2014 1 commit
-
-
Christian Schulte zu Berge authored
-
- 05 May, 2014 3 commits
-
-
Christian Schulte zu Berge authored
Introducing nifty error texture in case that there is nothing to render. Updated copyimage.frag to use texture coordinates instead of viewport pixels.
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
Depending on StringProperty's display type, its property widget shows either just the QLineEdit, or additionally a browse button that pops up a QFileDialog for either loading or saving a file, or choosing a directory. closes #43
-
- 02 May, 2014 1 commit
-
-
Christian Schulte zu Berge authored
-
- 30 Apr, 2014 3 commits
-
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
closes #546 closes #37
-
Christian Schulte zu Berge authored
* Implemented trackball navigation interaction for rendered geometries * Implemented correct rendering of textures with correct aspect ration (no longer weirdly stretched textures) * removed obsolete (because redundant) renderFullscreen option refs #546 refs #37
-
- 29 Apr, 2014 1 commit
-
-
Christian Schulte zu Berge authored
* DataContainerInspectorCanvas uses the GeometryRenderer processor to render geometry * DataContainerInspectorCanvas::_textures now uses DataHandle to improve thread safety avoid segfaults * replaced some function calls with Qt signals to loose coupling * removed obsolete fields and methods refs #546
-
- 24 Apr, 2014 2 commits
-
-
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
-
Christian Schulte zu Berge authored
-