Name | Modified | Size | Downloads / Week |
---|---|---|---|
User Manual.pdf | 2014-09-04 | 598.0 kB | |
README.md | 2014-09-04 | 1.6 kB | |
YSignalSlot.zip | 2014-09-04 | 1.2 MB | |
Totals: 3 Items | 1.8 MB | 0 |
YSignalSlot
YSignalSlot is a header only C++ library. It is an implementation of signal-slot mechanism via C++. It is similar to C++ signal, Boost::signal and SigSlot. It intensively uses C++11 features.
Advantages: - Almost everything is compile-time. So it is fast. - It can be used with single slot function or unlimited slot functions. - “emit” function’s return type is pointer of your actual slot function’s return type and it can be any type. - It supports “void” return type. - Slot(s) can be set to enable or disable. If slot(s) is/are disabled, signal can’t emit this/these slot(s). - If slot which emitted is disabled or its return type is void, “emit” function returns “NULL” pointer. - It works with member slot functions. - Slot functions’ signatures are converted and stored as string. - Slot functions’ argument counts and receivers are stored. - It uses meta programming methods for “static for loop” and “static if”. - Signals can be used nested. - Receivers can be “this” pointer. - It is free and LGPL licensed. - It uses C++11 features.
Disadvantages: - It works only member functions. - Executable size may be large. Because codes generated at compile-time, not run-time. - It doesn’t works with “const” member functions. ( like “int function1(int) const;” ) - Users must add “-std=c++0x” flag to compiler. This is required for using C++11. - It generates a struct inside the class where you define signal. So it uses a little more code size.