Advertisement
Guest User

Untitled

a guest
Nov 19th, 2018
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.78 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. #include <shine/signal.h>
  4.  
  5. struct tester {
  6.     int x, y, z;
  7. };
  8.  
  9. void on_test(struct tester *test, void *udata)
  10. {
  11.     printf("%p %d %d %d\n", test, test->x, test->y, test->z);
  12. }
  13.  
  14. int main(int argc, char *argv[])
  15. {
  16.     struct shine_signal_map map;
  17.     struct tester test = {25,150,200};
  18.  
  19.     if (shine_init_signal_map(&map) != 0) {
  20.         printf("failed to init signal map.\n");
  21.         return -1;
  22.     }
  23.  
  24.     if (shine_add_signal(&map, "on_test", "") != 0) {
  25.         printf("failed to add new signal.\n");
  26.         return -1;
  27.     }
  28.  
  29.     if (shine_bind(&map, &test, "on_test", SHINE_CALLBACK(on_test), NULL) != 0) {
  30.         printf("failed to bind signal.\n");
  31.         return -1;
  32.     }
  33.  
  34.     if (shine_emit(&map, &test, "on_test") != 0) {
  35.         printf("failed to emit signal.\n");
  36.         return -1;
  37.     }
  38.  
  39. getchar();
  40.     return 0;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement