initial README doc

This commit is contained in:
swaits committed 2010-10-04 22:08:17 -07:00
1 parent 9566ed0f34
commit a0125b2936
1 file changed
+53
+53
View File
@@ -0,0 +1,53 @@
cpp-signal
==========
Introduction
------------
This is a simple C++ callback library. It's conceptually similar to FastDelegate,
with a primary goal of having an extremely simple, clean API. Secondary goals
include low memory (low template bloat), zero external dependencies, and a high
level of portability.
Usage
-----
Using the library is incredibly simple. First, add the files to your project, Makefile,
IDE, etc. Then, to use the library, simply include "signal.h".
Here's a simple example:
#include "signal.h"
void beep() { /* make speaker beep */ }
void flash() { /* make screen flash */ }
int main(int arg, char** argv)
{
// create a signal which we'll emit any time a button is pressed
signal<void> button_pressed;
// connect (i.e. subscribe) functions to the signal
button_pressed.connect(&beep);
button_pressed.connect(&flash);
// main loop, check for button press, and call signal
while ( true )
{
if ( is_button_pressed() )
{
// call signal, which in turn calls all slot functionss (i.e. subscribers)
button_pressed();
}
}
}
TO DO
-----
* better documentation
* consistent code cleanup
* generate.rb creates a single header file
* add License clause to source and LICENSE file