diff --git a/examples/jgrafchart/enc.c b/examples/jgrafchart/enc.c index e00f458cf78d42f649c340d155326a237b5862c7..0465aa67df7eb1e6648a88a601694f50a5dbef0e 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 48aef8c77ce98055804e613129243ef8798f7de1..9fede0b1778df940010a265cb64441c00272c71d 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 99911ec55c7c06b1c4fc88d9bc89a53c8698fb69..04b09fa498e9a0b38713fa085e9cc8660b418ef6 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);