Hello, I'm requesting a formal review for Synapse, a non-intrusive signal programming library. Synapse is a non-intrusive C++ signal programming library. It is able to register connections and emit signals from any C or C++ object of any type whatsoever. If two contexts share access to a C or C++ object, they can use that object as a randezvouz point of sorts, and communicate with each other through Synapse signals. A system of meta signals provides interoperability with other signal programming libraries and callback APIs. In particular Synapse can be used to safely register C++ function objects, including lambda functions, with any C-style callback API that is designed to work only with C function pointers. In a multi-thread environment signals can be emitted asynchronously and scheduled for synchronous execution when requested in other threads. There have been numerous improvements since the first review, including the the ability to create persistent connections which don't require the user to explicitly keep them alive. See https://zajo.github.io/boost-synapse/. Thanks, Emil
Nice, I liked the idea of the old version, will have a look at it right away. On Thu, Aug 16, 2018 at 7:19 PM Emil Dotchevski via Boost < boost@lists.boost.org> wrote:
Hello,
I'm requesting a formal review for Synapse, a non-intrusive signal programming library.
Synapse is a non-intrusive C++ signal programming library.
It is able to register connections and emit signals from any C or C++ object of any type whatsoever. If two contexts share access to a C or C++ object, they can use that object as a randezvouz point of sorts, and communicate with each other through Synapse signals.
A system of meta signals provides interoperability with other signal programming libraries and callback APIs. In particular Synapse can be used to safely register C++ function objects, including lambda functions, with any C-style callback API that is designed to work only with C function pointers.
In a multi-thread environment signals can be emitted asynchronously and scheduled for synchronous execution when requested in other threads.
There have been numerous improvements since the first review, including the the ability to create persistent connections which don't require the user to explicitly keep them alive.
See https://zajo.github.io/boost-synapse/.
Thanks, Emil
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
participants (2)
-
Emil Dotchevski
-
Viktor Sehr