diff options
author | Omar Tarabai <tarabai@devegypt.com> | 2014-07-03 14:06:02 +0000 |
---|---|---|
committer | Omar Tarabai <tarabai@devegypt.com> | 2014-07-03 14:06:02 +0000 |
commit | e68aa2bf46213e33bf1bc07a335df8aeb5ac01c3 (patch) | |
tree | 7935770db2280f5b3c95b4d081e67f2a06dd2a6d /src/sensordashboard | |
parent | dc09ce9982904298e0ef97c91f7bf9218f1b0046 (diff) | |
download | gnunet-e68aa2bf46213e33bf1bc07a335df8aeb5ac01c3.tar.gz gnunet-e68aa2bf46213e33bf1bc07a335df8aeb5ac01c3.zip |
moved common sensor functionality to a util lib
Diffstat (limited to 'src/sensordashboard')
-rw-r--r-- | src/sensordashboard/Makefile.am | 3 | ||||
-rw-r--r-- | src/sensordashboard/gnunet-service-sensordashboard.c | 29 |
2 files changed, 31 insertions, 1 deletions
diff --git a/src/sensordashboard/Makefile.am b/src/sensordashboard/Makefile.am index 419486ff4..d54da840b 100644 --- a/src/sensordashboard/Makefile.am +++ b/src/sensordashboard/Makefile.am | |||
@@ -22,7 +22,7 @@ libexec_PROGRAMS = \ | |||
22 | gnunet-service-sensordashboard | 22 | gnunet-service-sensordashboard |
23 | 23 | ||
24 | gnunet_sensordashboard_SOURCES = \ | 24 | gnunet_sensordashboard_SOURCES = \ |
25 | gnunet-sensordashboard.c | 25 | gnunet-sensordashboard.c |
26 | gnunet_sensordashboard_LDADD = \ | 26 | gnunet_sensordashboard_LDADD = \ |
27 | $(top_builddir)/src/util/libgnunetutil.la \ | 27 | $(top_builddir)/src/util/libgnunetutil.la \ |
28 | $(GN_LIBINTL) | 28 | $(GN_LIBINTL) |
@@ -32,6 +32,7 @@ gnunet_service_sensordashboard_SOURCES = \ | |||
32 | gnunet_service_sensordashboard_LDADD = \ | 32 | gnunet_service_sensordashboard_LDADD = \ |
33 | $(top_builddir)/src/util/libgnunetutil.la \ | 33 | $(top_builddir)/src/util/libgnunetutil.la \ |
34 | $(top_builddir)/src/cadet/libgnunetcadet.la \ | 34 | $(top_builddir)/src/cadet/libgnunetcadet.la \ |
35 | $(top_builddir)/src/sensor/libgnunetsensorutil.la \ | ||
35 | $(GN_LIBINTL) | 36 | $(GN_LIBINTL) |
36 | 37 | ||
37 | 38 | ||
diff --git a/src/sensordashboard/gnunet-service-sensordashboard.c b/src/sensordashboard/gnunet-service-sensordashboard.c index 5f451844e..91c7e98f5 100644 --- a/src/sensordashboard/gnunet-service-sensordashboard.c +++ b/src/sensordashboard/gnunet-service-sensordashboard.c | |||
@@ -28,9 +28,15 @@ | |||
28 | #include "gnunet_applications.h" | 28 | #include "gnunet_applications.h" |
29 | #include "sensordashboard.h" | 29 | #include "sensordashboard.h" |
30 | #include "gnunet_cadet_service.h" | 30 | #include "gnunet_cadet_service.h" |
31 | #include "gnunet_sensor_util_lib.h" | ||
31 | 32 | ||
33 | /** | ||
34 | * Handle to CADET service | ||
35 | */ | ||
32 | static struct GNUNET_CADET_Handle *cadet; | 36 | static struct GNUNET_CADET_Handle *cadet; |
33 | 37 | ||
38 | static struct GNUNET_CONTAINER_MultiHashMap *sensors; | ||
39 | |||
34 | /** | 40 | /** |
35 | * Task run during shutdown. | 41 | * Task run during shutdown. |
36 | * | 42 | * |
@@ -96,6 +102,26 @@ static void *cadet_channel_created (void *cls, | |||
96 | } | 102 | } |
97 | 103 | ||
98 | /** | 104 | /** |
105 | * Called with any sensor reading messages received from CADET. | ||
106 | * | ||
107 | * Each time the function must call #GNUNET_CADET_receive_done on the channel | ||
108 | * in order to receive the next message. This doesn't need to be immediate: | ||
109 | * can be delayed if some processing is done on the message. | ||
110 | * | ||
111 | * @param cls Closure (set from #GNUNET_CADET_connect). | ||
112 | * @param channel Connection to the other end. | ||
113 | * @param channel_ctx Place to store local state associated with the channel. | ||
114 | * @param message The actual message. | ||
115 | * @return #GNUNET_OK to keep the channel open, | ||
116 | * #GNUNET_SYSERR to close it (signal serious error). | ||
117 | */ | ||
118 | int sensor_reading_receiver (void *cls, struct GNUNET_CADET_Channel *channel, | ||
119 | void **channel_ctx, const struct GNUNET_MessageHeader *message) | ||
120 | { | ||
121 | |||
122 | } | ||
123 | |||
124 | /** | ||
99 | * Process sensordashboard requests. | 125 | * Process sensordashboard requests. |
100 | * | 126 | * |
101 | * @param cls closure | 127 | * @param cls closure |
@@ -110,12 +136,15 @@ run (void *cls, struct GNUNET_SERVER_Handle *server, | |||
110 | {NULL, NULL, 0, 0} | 136 | {NULL, NULL, 0, 0} |
111 | }; | 137 | }; |
112 | static struct GNUNET_CADET_MessageHandler cadet_handlers[] = { | 138 | static struct GNUNET_CADET_MessageHandler cadet_handlers[] = { |
139 | {&sensor_reading_receiver, GNUNET_MESSAGE_TYPE_SENSOR_READING, 0}, | ||
113 | {NULL, 0, 0} | 140 | {NULL, 0, 0} |
114 | }; | 141 | }; |
115 | static uint32_t cadet_ports[] = { | 142 | static uint32_t cadet_ports[] = { |
116 | GNUNET_APPLICATION_TYPE_SENSORDASHBOARD, | 143 | GNUNET_APPLICATION_TYPE_SENSORDASHBOARD, |
117 | GNUNET_APPLICATION_TYPE_END | 144 | GNUNET_APPLICATION_TYPE_END |
118 | }; | 145 | }; |
146 | sensors = GNUNET_SENSOR_load_all_sensors (); | ||
147 | GNUNET_assert (NULL != sensors); | ||
119 | cadet = GNUNET_CADET_connect(cfg, | 148 | cadet = GNUNET_CADET_connect(cfg, |
120 | NULL, | 149 | NULL, |
121 | &cadet_channel_created, | 150 | &cadet_channel_created, |