diff options
author | Timo Dritschler <timo.dritschler@kit.edu> | 2015-07-09 15:07:44 +0200 |
---|---|---|
committer | Timo Dritschler <timo.dritschler@kit.edu> | 2015-07-09 15:07:44 +0200 |
commit | 1f04383dca16af05697812e634b1e34811f045a6 (patch) | |
tree | cd7efd8141d84c042356f117a3876e9f552d4f84 /bin/test-server.c | |
download | uca-kiro-1f04383dca16af05697812e634b1e34811f045a6.tar.gz uca-kiro-1f04383dca16af05697812e634b1e34811f045a6.tar.bz2 uca-kiro-1f04383dca16af05697812e634b1e34811f045a6.tar.xz uca-kiro-1f04383dca16af05697812e634b1e34811f045a6.zip |
Init Git repo
Diffstat (limited to 'bin/test-server.c')
-rw-r--r-- | bin/test-server.c | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/bin/test-server.c b/bin/test-server.c new file mode 100644 index 0000000..32d27ef --- /dev/null +++ b/bin/test-server.c @@ -0,0 +1,71 @@ +#include "kiro-camera-server.h" + + +static KiroContinueFlag +receive_callback (KiroMessageStatus *status, gpointer user_data) +{ + g_message ("Received a message of type: %u", status->message->msg); + *(gboolean *)user_data = TRUE; + return KIRO_CALLBACK_CONTINUE; +} + + +int main (int argc, char **argv) +{ + GError *error = NULL; + + KiroMessenger *messenger = kiro_messenger_new (); + + gboolean flag = FALSE; + kiro_messenger_add_receive_callback (messenger, receive_callback, &flag); + + gulong rank = 0; + kiro_messenger_connect (messenger, "127.0.0.1", "60010", &rank, &error); + if (error) { + kiro_messenger_free (messenger); + g_error ("Oh shit! (%s)", error->message); + } + + while (!flag) {}; + flag = FALSE; + + + GVariant *tmp = g_variant_new ("i", UCA_CAMERA_TRIGGER_SOURCE_SOFTWARE); + gsize data_size = g_variant_get_size (tmp); + + PropUpdate *test = g_malloc0 (sizeof (PropUpdate) + data_size); + test->id = 11; + test->type[0] = 'i'; + test->size = data_size; + g_variant_store (tmp, test->val); + //g_object_unref (tmp); + + KiroMessage message; + message.peer_rank = rank; + message.msg = KIROCS_UPDATE; + message.payload = test; + message.size = sizeof (PropUpdate) + data_size; + + kiro_messenger_send_blocking (messenger, &message, &error); + if (error) { + kiro_messenger_free (messenger); + g_error ("Oh shit! (%s)", error->message); + } + + message.msg = KIROCS_EXIT; + message.size = 0; + message.payload = NULL; + + kiro_messenger_send_blocking (messenger, &message, &error); + if (error) { + kiro_messenger_free (messenger); + g_error ("Oh shit! (%s)", error->message); + } + + kiro_messenger_free (messenger); + + return 0; + + + +} |