From fdfd31468d015afc2206663d8b24b7469012f84f Mon Sep 17 00:00:00 2001
From: Sven Gestegard Robertz <sven.robertz@cs.lth.se>
Date: Wed, 27 Nov 2013 11:16:54 +0100
Subject: [PATCH] actually added

---
 examples/jgrafchart/enc.c        | 11 ++++++-----
 examples/jgrafchart/enc.h        |  4 +++-
 examples/jgrafchart/testserver.c | 26 +++++++++++++++++++++++---
 3 files changed, 32 insertions(+), 9 deletions(-)

diff --git a/examples/jgrafchart/enc.c b/examples/jgrafchart/enc.c
index e00f458..0465aa6 100644
--- a/examples/jgrafchart/enc.c
+++ b/examples/jgrafchart/enc.c
@@ -20,7 +20,8 @@ struct labcomm_encoder *enc_init( int fd) {
   return encoder;
 }
 
-void enc_run(struct labcomm_encoder * encoder) {
+void enc_run(struct labcomm_encoder *encoder, jg_foo *v) {
+#if 0
 	jg_foo v;
 
 	v.b = 17.17;
@@ -31,12 +32,12 @@ void enc_run(struct labcomm_encoder * encoder) {
 	v.g = 42;
 	v.h = 2;
 	v.i = 42.42;
+#endif
 
-	labcomm_encode_jg_foo(encoder, &v);
 	usleep(500000);
-	v.f += 42;
-	v.h += 42017040;
-	labcomm_encode_jg_foo(encoder, &v);
+	v->b += 42;
+	v->h += 42000000;
+	labcomm_encode_jg_foo(encoder, v);
 }
 
 void enc_cleanup(struct labcomm_encoder *encoder) {
diff --git a/examples/jgrafchart/enc.h b/examples/jgrafchart/enc.h
index 48aef8c..9fede0b 100644
--- a/examples/jgrafchart/enc.h
+++ b/examples/jgrafchart/enc.h
@@ -3,6 +3,8 @@
 #include <labcomm_default_memory.h>
 #include <labcomm_default_scheduler.h>
 
+#include "jg.h"
+
 struct labcomm_encoder *enc_init(int fd) ;
-void enc_run(struct labcomm_encoder *encoder) ;
+void enc_run(struct labcomm_encoder *encoder, jg_foo *v) ;
 void enc_cleanup(struct labcomm_encoder *encoder) ;
diff --git a/examples/jgrafchart/testserver.c b/examples/jgrafchart/testserver.c
index 99911ec..04b09fa 100644
--- a/examples/jgrafchart/testserver.c
+++ b/examples/jgrafchart/testserver.c
@@ -7,6 +7,7 @@
 #include <netinet/in.h>
 #include <netdb.h> 
 
+#include "jg.h"
 #include "dec.h"
 #include "enc.h"
 
@@ -16,10 +17,13 @@ void error(const char *msg)
     exit(0);
 }
 
-void do_labcomm(int sockfd)
+void do_labcomm(int sockfd, jg_foo *v)
 {
     void *enc = enc_init(sockfd);
-    enc_run(enc);
+    int i;
+    for(i=0; i<10;i++) {
+        enc_run(enc, v);
+    }
     enc_cleanup(enc);
 }
 
@@ -40,6 +44,11 @@ int main(int argc, char *argv[])
     if (sockfd < 0) 
         error("ERROR opening socket");
 
+    int so_reuseaddr = 1; //TRUE;
+    if(setsockopt(sockfd,SOL_SOCKET,SO_REUSEADDR, &so_reuseaddr, sizeof so_reuseaddr)) {
+        error("ERROR setting socket options");
+    }
+
     bzero((char *) &serv_addr, sizeof(serv_addr));
 
     serv_addr.sin_addr.s_addr = INADDR_ANY;
@@ -59,8 +68,19 @@ int main(int argc, char *argv[])
         perror("ERROR on accept");
        exit(1);
     }
+    
+    jg_foo v;
+
+    v.b = 17.17;
+    v.c = 1742;
+    v.d = 4217;
+    v.e = "hello";
+    v.f = 17;
+    v.g = 42;
+    v.h = 2;
+    v.i = 42.42;
 
-    do_labcomm(newsockfd);
+    do_labcomm(newsockfd, &v);
 
     close(newsockfd);
     close(sockfd);
-- 
GitLab