- 27 Jul, 2014 7 commits
-
-
Christian Schulte zu Berge authored
* Updated sigslot::concurrent_pointer_list::insert() and sigslot::concurrent_pointer_list::push_back() to fill holes where items already have been deleted. This avoids degrading performance due to excessive fragmentation. * Updated sigslot legal header.
-
Christian Schulte zu Berge authored
Updated sigslot::concurrent_pointer_list implementation as well as added several typename declarations to calm down GCC.
-
Christian Schulte zu Berge authored
Removed unlockInExtraThread flag from AbstractProcessor::process() - this is no longer needed as signal handling is done asynchroneously now anyway. #ref 384 Conflicts: core/pipeline/abstractprocessor.cpp Conflicts: core/pipeline/abstractprocessor.cpp core/pipeline/abstractprocessor.h
-
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
* Introduced check whether signal emitting thread is the signal manager thread. In such a case signals are now emitted synchronously per default. * Fixed sigslot shared library builds refs #384
-
Christian Schulte zu Berge authored
* implemented signal_handle2 through signal_handl5 * removed all implementations of signals with more than 5 arguments (nobody needs that many args and all those template instantiations just kill compile time) refs #384 Conflicts: ext/sigslot/sigslot.h
-
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
-
- 15 Jul, 2014 1 commit
-
-
Christian Schulte zu Berge authored
* CMake build files now support unix builds * SWIG interface files and Lua wrappers are now fully C++ compliant to comfort GCC * Hacked shared/static builds of the campvis-modules module even more, but now it works on both MSVC and GCC
-
- 10 May, 2014 1 commit
-
-
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
-
- 04 Apr, 2014 1 commit
-
-
Christian Schulte zu Berge authored
* Introducing sigslot::signal::has_connections() to check whether a signal has listeners * Fixed default OpenGL texture wrapping Conflicts: modules/pipelinefactory.h
-
- 08 Oct, 2013 1 commit
-
-
Christian Schulte zu Berge authored
-
- 16 Aug, 2013 1 commit
-
-
Christian Schulte zu Berge authored
-
- 09 May, 2013 1 commit
-
-
schultezub authored
git-svn-id: https://camplinux.in.tum.de/svn/campvis/trunk@489 bb408c1c-ae56-11e1-83d9-df6b3e0c105e
-
- 31 Oct, 2012 1 commit
-
-
schultezub authored
git-svn-id: https://camplinux.in.tum.de/svn/campvis/trunk@335 bb408c1c-ae56-11e1-83d9-df6b3e0c105e
-