Challenge : Question #1 52/154452/4
authorEunyoung Lee <ey928.lee@samsung.com>
Tue, 10 Oct 2017 08:28:38 +0000 (17:28 +0900)
committerEunyoung Lee <ey928.lee@samsung.com>
Thu, 12 Oct 2017 05:24:25 +0000 (14:24 +0900)
Change-Id: If50387e16167c7882551303a1b2b1e313bbe83e9

inc/resource_internal.h
src/controller.c
tizen-manifest.xml.in

index cb751b5..df9c77f 100755 (executable)
@@ -46,7 +46,7 @@ struct _resource_s {
 };
 typedef struct _resource_s resource_s;
 
-typedef void (*resource_read_cb)(double value, void *data);
+typedef void (*resource_read_cb)(float value, void *data);
 
 struct _resource_read_cb_s {
        resource_read_cb cb;
index c80090e..d78ec71 100644 (file)
 #include "controller_util.h"
 #include "webutil.h"
 
+
 #define CONNECTIVITY_KEY "opened"
-#define SENSORING_TIME_INTERVAL 1.0f
+/**
+ * DO NOT EDIT: please don't edit the time interval.
+ */
+#define SENSORING_TIME_INTERVAL 2.0f
+
+/**
+ * TODO: You have to use the pin numbers below.
+ * You can change the pin numbers freely.
+ */
+#define TRIG_PIN_NUMBER 20
+#define ECHO_PIN_NUMBER 21
 
 typedef struct app_data_s {
        Ecore_Timer *getter_timer;
        connectivity_resource_s *resource_info;
 } app_data;
 
-static Eina_Bool control_sensors_cb(void *data)
+static void _ultrasonic_sensor_read_cb(float value, void *data)
+{
+       /**
+        * TODO: Send the value of the ultrasonic sensor to the Client.
+        */
+
+
+
+
+
+}
+
+static Eina_Bool _control_sensors_cb(void *data)
 {
        app_data *ad = data;
 
-       if (connectivity_notify_bool(ad->resource_info, CONNECTIVITY_KEY, true) == -1)
-               _E("Cannot notify message");
+       /**
+        * TODO: Prepare to read the value of the ultrasonic sensor.
+        */
+
+
+
+
 
        return ECORE_CALLBACK_RENEW;
 }
@@ -54,24 +82,35 @@ static bool service_app_create(void *data)
 {
        app_data *ad = data;
        int ret = -1;
+       const char *path = NULL;
 
        /**
-        * No modification required!!!
+        * DO NOT EDIT: please don't edit the function below.
         * Access only when modifying internal functions.
         */
        controller_init_internal_functions();
 
        /**
-        * Create a connectivity resource and registers the resource in server.
+        * TODO: Get a path of the box.
+        * Get a predefined path based on where the box is placed.(e.g. "/door/1")
+        * The path is a string value that is passed as the first argument to the connectivity_set_resource().
+        */
+
+
+
+
+
+       /**
+        * Creates a connectivity resource and registers the resource in server.
         */
-       ret = connectivity_set_resource(NULL, "org.tizen.door", &ad->resource_info);
+       ret = connectivity_set_resource(/*PATH*/, "org.tizen.door", &ad->resource_info);
        if (ret == -1) _E("Cannot broadcast resource");
 
        /**
         * Creates a timer to call the given function in the given period of time.
         * In the control_sensors_cb(), each sensor reads the measured value or writes a specific value to the sensor.
         */
-       ad->getter_timer = ecore_timer_add(SENSORING_TIME_INTERVAL, control_sensors_cb, ad);
+       ad->getter_timer = ecore_timer_add(SENSORING_TIME_INTERVAL, _control_sensors_cb, ad);
        if (!ad->getter_timer) {
                _E("Failed to add infrared motion getter timer");
                return false;
@@ -87,14 +126,13 @@ static void service_app_terminate(void *data)
        if (ad->getter_timer)
                ecore_timer_del(ad->getter_timer);
 
-
        /**
         * Releases the resource about connectivity.
         */
        connectivity_unset_resource(ad->resource_info);
 
        /**
-        * No modification required!!!
+        * DO NOT EDIT: please don't edit the function below.
         * Access only when modifying internal functions.
         */
        controller_fini_internal_functions();
index 677801e..e5cbac4 100644 (file)
@@ -5,7 +5,7 @@
     <author email="gs86.lee@samsung.com" href="www.samsung.com">Geunsun Lee</author>
     <author email="ey928.lee@samsung.com" href="www.samsung.com">Eunyoung Lee</author>
     <author email="junkyu.han@samsung.com" href="www.samsung.com">Junkyu Han</author>
-    <service-application appid="@ORG_PREFIX@.@PROJECT_NAME@" auto-restart="true" exec="@PROJECT_NAME@" multiple="false" nodisplay="true" on-boot="true" taskmanage="false" type="capp">
+    <service-application appid="@ORG_PREFIX@.@PROJECT_NAME@" auto-restart="false" exec="@PROJECT_NAME@" multiple="false" nodisplay="true" on-boot="false" taskmanage="false" type="capp">
         <label>@APP_LABEL@</label>
         <icon>@PROJECT_NAME@.png</icon>
     </service-application>