Note that there are some explanatory texts on larger screens.

plurals
  1. POIs there a lightweight signal-slot implementation with basic reflection?
    primarykey
    data
    text
    <p><strong>Background</strong></p> <p>I need to implement a dynamically-configurable data-processing toolkit. There will be several data processing entities, which can be combined to a data-flow graph by using a GUI tool. The idea is similiar to Direct Show filter graphs (GraphEdit) or Apple's Quartz Composer.</p> <p>The GUI tool will store graph definitions in a file. When the actual processing is started, this definition file will be read, and data processing objects have to be created and connected at runtime.</p> <p>I have used Qt's signals and slots for similiar problems before, but this time the main program does not have any GUI. So I'd like to use something less bloated.</p> <p><strong>Question</strong></p> <p>What is the easiest way to have signal/slot functionality with basic reflection, without using Qt?</p> <p>I need to define a fixed number of slot types (each with a certain predefined function signature). For example, there will be an image-consuming slot, taking an image object as parameter, or a slot just taking an int as parameter.</p> <p>At runtime, I need to iterate through all signals/slots and connect them dynamically.</p> <p>I do not need to inspect Slot/Signal Parameters at runtime. It sufficient to have a fixed number of parameter sets. It would be ok to put some kind of hint in the slot's name to identify the signature type.</p> <p>I know that boost ships with signal2, which provides signal/slot functionality. But whats the fastest way to implement reflection? Should I build my own set of macro-hacks?</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload