kibak.yoon [Mon, 24 Apr 2017 12:48:55 +0000 (21:48 +0900)]
sensord: rename URIs of sensor type and support get_sensor(uri) properly
- compare string before last slash
Change-Id: I2e5f6a317298b96db8d712d5545e17f89f8408e5
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 10:27:19 +0000 (19:27 +0900)]
sensord: initialize class members of sensor_provider_handler
Change-Id: I39bd1d2f4b73cfcca23132fb65aa3f95b0872d59
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 10:18:15 +0000 (19:18 +0900)]
sensord: add internal API to get URI of sensor
Change-Id: I95f68aa8fefe6a04f42f621de813801859b84884
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 07:15:47 +0000 (16:15 +0900)]
sensord: notify that the sensor is registered or unregistered
Change-Id: I606dd37f3ad045db4ac0d9517b7c87469b9ac37e
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 07:13:00 +0000 (16:13 +0900)]
sensord: implement application sensor handler
Change-Id: If415a7268adf9d7cd5870ba62a0f4bd7497baccf
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 06:55:55 +0000 (15:55 +0900)]
sensord: do not let the listener have sensor pointer directly
- Since the sensor could be registered or unregistered in runtime,
the sensor pointer of sensor listener can be NULL
when the sensor is unregistered.
- This patch modifies the listener has only the sensor URI and requests
a handle to the sensor manager if needed.
Change-Id: I7967a332577eb7a0a41c7e678eea85b6b3f55dfd
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 06:53:27 +0000 (15:53 +0900)]
sensord: implement URI-based and provider internal APIs
Change-Id: Id76f26d41ce124323bc581fd8ceb6820e73f1be7
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 06:48:07 +0000 (15:48 +0900)]
sensord: detect that a sensor is added or removed in runtime (client-side)
Change-Id: Ie9c4e93ca77f911226bce6b72f9517185bb43dd2
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 06:45:21 +0000 (15:45 +0900)]
sensord: add sensor_provider for app-level sensor
Change-Id: Ic0e02eafabe455e711a52ae1db1e86dae707f975
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 06:39:17 +0000 (15:39 +0900)]
sensord: add command types/macros for sensor provider
Change-Id: I6f4b5adcd116eadd0a94dd0fef69027030ac6ca6
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 06:33:27 +0000 (15:33 +0900)]
sensord: remove set/get API for the URI of sensor type
- It doesn't necessary because it is already contained in the URI.
Change-Id: I3a360004441558a5498face4211c5512db68a1e9
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 05:24:56 +0000 (14:24 +0900)]
sensord: add testcase for sensor-provider APIs
1. add "http://tizen.org/sensor/mysensor/mysensor"
2. publish events to sensor listeners
3. start/stop/set_interval callbacks
4. sensor_added_cb/sensor_removed_cb callbacks
Change-Id: I98c49388ecfcd677c2c517cfb1e1d4cf3f405f26
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 24 Apr 2017 03:42:53 +0000 (12:42 +0900)]
sensord: add skeleton APIs for sensor provider
Change-Id: I22659ac09301f7ba12b2de4613217b78faefdaa4
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
Mu-Woong Lee [Mon, 24 Apr 2017 03:33:36 +0000 (12:33 +0900)]
Remove the fake packages libsensord and libsensord-devel
Change-Id: Id3dec722390a5ac44b7cb1b4951f5afac7889eb9
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
kibak.yoon [Thu, 20 Apr 2017 05:34:31 +0000 (14:34 +0900)]
sensord: remove sleep() in new failed handler
Change-Id: I74714fe67becd945d95e869f5de96241ebe3325e
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 20 Apr 2017 03:58:44 +0000 (12:58 +0900)]
sensord: initialize cynara conf pointer to NULL
Change-Id: Ie80f3ad0053001424472bb03521450cebf5a6f92
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 20 Apr 2017 03:56:49 +0000 (12:56 +0900)]
sensord: sleep 100ms instead of a very short time
Change-Id: Ib6432a072cb59bf03803915c497916695993a340
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 20 Apr 2017 03:53:51 +0000 (12:53 +0900)]
sensord: replace usleep() code with sleep()
- this patch makes it a one second delay instead of 100ms.
It's no problem.
Change-Id: I7f291e06247716a556a0bf8fa4e4293511beec59
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 20 Apr 2017 03:52:36 +0000 (12:52 +0900)]
sensord: remove unnecessary usleep()
Change-Id: I3190710465ea1dcdef396b84155403a6418fd210
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Fri, 14 Apr 2017 08:58:03 +0000 (17:58 +0900)]
sensord: use readdir() instead of deprecated readdir_r
Change-Id: Iad45c3eea70923dc6f42a966b4ed0c62fcb3ebc4
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Fri, 14 Apr 2017 08:22:54 +0000 (17:22 +0900)]
sensord: fix bug with invalid character(!)
Change-Id: Ib35b0f4c2ea3dc1d9c169ef24fa533a99d21c9c8
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Fri, 14 Apr 2017 07:44:54 +0000 (16:44 +0900)]
sensord: rename fusion sensors to proper name
Change-Id: Ied998d22a50464a735b7f37a893c0de51c6d282f
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Fri, 14 Apr 2017 03:24:47 +0000 (12:24 +0900)]
sensord: add defensive code for blocking issue
- this issue is related to hrm_raw sensor device driver
Change-Id: Ib75c56b7847b4afe8aeb3a14609168a47a669b64
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 10:55:46 +0000 (19:55 +0900)]
sensord: remove unnecessary socket log
Change-Id: I7a7213ebd917ccf88172b159667ad8b9169daa63
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 13 Apr 2017 16:10:01 +0000 (01:10 +0900)]
sensord: suppress verbos log message
- highlight compile errors/warnings
Change-Id: I19b34adff7fd0488109c6361dea70d0865f7a1db
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 16:07:36 +0000 (01:07 +0900)]
sensord: support get_data() API simply
- [TBD] it doesn't consider whether the value is normal or not.
Change-Id: I5b5517c82d8282cf433fe6b7eb4b9a2956346d0b
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 16:00:56 +0000 (01:00 +0900)]
sensord: separate channel for event and command
- if the event occurs during sending command, a timing issue will occur.
Change-Id: I8ed5ad2f7c6bcc9ea44641c619458639553822c2
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:56:05 +0000 (00:56 +0900)]
sensord: compare previous interval with current interval
Change-Id: I65c56ce4a3757447fb1fdc61b344732fcd4dbc9b
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:53:52 +0000 (00:53 +0900)]
sensord: add required privilege to pre-defined types
Change-Id: I0f08ad04497fa544318b1bd57dc7a2af470fa99a
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:51:14 +0000 (00:51 +0900)]
sensord: use int32_t instead size_t
- compatibility with 64bit platform
Change-Id: I16299dfe15418492506063ce6572e7cdf9502127
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:42:10 +0000 (00:42 +0900)]
sensord: return the appropriate error
Change-Id: I953af6979592f003b7967898f2389b782b562f63
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:31:56 +0000 (00:31 +0900)]
sensord: use underscore(_) instead of dot(.) for URI string
- [TBD] discuss what is the better
Change-Id: I6c41cc4eca22062159734ebfae422f9da0ce7c04
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:30:48 +0000 (00:30 +0900)]
sensord: use emplace_back instead of push_back
Change-Id: I812a34b162a982dfa1ba7033bcb35e758d8d71dd
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:30:02 +0000 (00:30 +0900)]
sensord: enable rotation vector/orientation sensors
Change-Id: I60368ad616e34f17107565c6014135a4aeb4aacb
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:24:49 +0000 (00:24 +0900)]
sensord: remove unnecessary testcases for fusion library
Change-Id: Iaf95f379ccf05cfa2c8f001d1976804d50ad7b10
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 13 Apr 2017 15:22:10 +0000 (00:22 +0900)]
sensord: enable linear acceleration sensor
Change-Id: I6cd5d9ae2606e5544f2fdde2830ee33392d5e81a
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Wed, 12 Apr 2017 10:54:18 +0000 (19:54 +0900)]
sensord: enable gravity sensors (lowpass and complementary)
Change-Id: I7324bb6b806befc188145ed26281db9a8a65d36e
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 09:57:17 +0000 (18:57 +0900)]
sensord: enable auto_rotation sensor
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
Change-Id: I16b057a84c9606297a5a7d8b481bae633a95b69c
kibak.yoon [Wed, 12 Apr 2017 09:54:08 +0000 (18:54 +0900)]
sensord: modify sensor plugin interface
- rename from get_sensors to get_sensor_info()
- change the parameter of update() from id to URI
* [TBD] the name of sensor_notifier
Change-Id: Ie50afe75a3517847d17e259a6bf317095a827cc7
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
Mu-Woong Lee [Wed, 12 Apr 2017 12:30:47 +0000 (21:30 +0900)]
Rename packages in a more conventional way: sensord & sensord-dummy
Change-Id: I5a86ca6256fc0781cccea5e6806520c4d3b9822b
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 03:39:16 +0000 (12:39 +0900)]
sensord: fix warnings detected from static analysis
- fix member variable initialziation ordered warnings
- add missing breaks in switch-case statement
- check the range of index
Change-Id: Iaf75452578b69b9a7952321d25db75e53be7ca81
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 03:28:15 +0000 (12:28 +0900)]
sensord: rename information list/map properly
Change-Id: I1e56466e0ef00c428196cb5df1340839236c9ab5
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 11 Apr 2017 18:06:21 +0000 (03:06 +0900)]
sensord: support original path to load HAL library
Change-Id: Id32a8e5d2f008766542ee9a46e5757a284667630
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Wed, 12 Apr 2017 02:24:49 +0000 (11:24 +0900)]
sensord: fix to return approprivate error
Change-Id: I4d1ca524b4041232ed7c8e350f3261b264112ceb
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 02:00:27 +0000 (11:00 +0900)]
sensord: check privilege everytime for every request
- check privilege for get_sensor/get_sensor_list
- check privilege for all controls
Change-Id: I7148c7d506bb1eaa01046e60b1b81a0ce5ec899a
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 01:59:22 +0000 (10:59 +0900)]
sensord: add tokenize function to sensor::utils
Change-Id: I8f646d00a241f23a8ee2ca3725102fecf8ec220c
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 01:56:31 +0000 (10:56 +0900)]
sensord: remove sensor_permission_t in the sensord
- SENSOR_PRIVILEGE_PUBLIC should be 0 because of backwards
compatibility.
Change-Id: I81ff50e0e15459ede107925cc9eedfbabdedc9b8
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 01:52:13 +0000 (10:52 +0900)]
sensord: fix a bug which did not check privilege
- missing cynara check
Change-Id: I3bb6de4babadfd17f45b0b99f2b957942c05cb95
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 12 Apr 2017 01:43:29 +0000 (10:43 +0900)]
sensord: move member functions from public to private
Change-Id: Ibbf486527e7b41663c6a3948071602d897b890b0
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Fri, 7 Apr 2017 08:25:51 +0000 (17:25 +0900)]
sensor: remove a bad way for hiding sensor handle
- from now on, privilege is not checking.
Change-Id: I4853b27e2bb7a7c2fc1775974d9df8e199b46ec8
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Fri, 7 Apr 2017 08:18:00 +0000 (17:18 +0900)]
sensord: remove sensor_permission_t from sensor_info
- it just only needs privilege string.
Change-Id: I82b25ae10075167781ed21baf62fe868a7b48450
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 11 Apr 2017 15:32:56 +0000 (00:32 +0900)]
sensord: check URI to find the matched sensor
Change-Id: Ib6d0364fd7036c295129872b7db79f0bd8f40685
Signed-off-by: kibak.yoon <seseki17@gmail.com>
kibak.yoon [Thu, 6 Apr 2017 10:16:45 +0000 (19:16 +0900)]
sensord: add testcase for internal apis
- there are just only basic testcases.
- [TBD] more test cases will be added.
Change-Id: I28e44c0001ef77ce6349e0b03bc6b17bf7dea429
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 10:14:20 +0000 (19:14 +0900)]
sensord: implement server_channel_handler
- server_channel_handler is a handler that responds to client request.
Change-Id: I788010896384f686fa271d61662cd09ae48ca4c2
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 10:12:15 +0000 (19:12 +0900)]
sensord: add calibration node setting
- read calibration file path from configuration file(/etc/sensor_cal.conf)
Change-Id: Ic256a0352e1e047dc4d7a3cc091a0b7cdaf106be
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 09:55:11 +0000 (18:55 +0900)]
sensord: add sensor_manager to create and manage sensor_handlers
- add sensor_event_handler which is to listen events from physical sensor
Change-Id: I6854ee874c52c003e4e1daa37a57974ee4b434e4
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 10:04:16 +0000 (19:04 +0900)]
sensord: pass observer handle to flush()
Change-Id: I4c95531c5461324c41c1ac5eb63cfb4ed00dea99
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 09:52:33 +0000 (18:52 +0900)]
sensord: add sensor_listener_proxy class
- sensor_listener_proxy is a proxy of client's listener
- it listens sensor event as observer and controls sensors
Change-Id: I40b398f0701e7940a9893f54b896568debb3ed36
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 09:49:55 +0000 (18:49 +0900)]
sensord: add application_sensor_handler skeleton class
- application_sensor_handler will be created by application
- application_sensor_handler provides:
- events from application to observers(listeners)
Change-Id: Ic33e1c164ddfc98766eec6e82b2b537ccf4c5a6a
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 09:47:29 +0000 (18:47 +0900)]
sensord: add external_sensor_handler class
- external_sensor_handler provides:
- controls for operating external_sensor
- controls for operation policy
- listening event from notifier and notify it to observers
Change-Id: I3213c7798873833b8bb5e0307275fd2a3bd52bf6
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 09:45:57 +0000 (18:45 +0900)]
sensord: add fusion_sensor_handler class
- fusion_sensor_handler provides:
- sensor information
- controls for operating required sensors
- controls for operation policy
Change-Id: Id1f6d7d6dce67611a00c5f9e2880f4d2178cb145
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 09:43:32 +0000 (18:43 +0900)]
sensord: add physical_sensor_handler class
- physical_sensor_handler provides:
- controls for operating sensor HAL(sensor_device)
- controls for operation policy
Change-Id: I4c5d6b2d99847485ffd8beec1a9634b20ce45e71
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 08:54:20 +0000 (17:54 +0900)]
sensord: add loader to load sensor plugins
- it loads sensor_device/physical_sensor/fusion_sensor/external_sensor
Change-Id: Ia340e4041900d9a69a0553acc34473cf218a0f95
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 07:58:05 +0000 (16:58 +0900)]
sensord: add physical_sensor/fusion_sensor/external_sensor interfaces
- add sensor information structure(sensor_info2_t)..
Change-Id: I9daca248bc3671b77c3f37c8547575a9ab2903f5
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 6 Apr 2017 07:45:06 +0000 (16:45 +0900)]
sensord: implement sensor_handler class
- sensor_handler has:
- a common logic of publisher
- sensor control interface
Change-Id: Ifbc32db62b96996d01041f6b7855b07ae07115b0
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 10:54:34 +0000 (19:54 +0900)]
sensord: add sensor_publisher and sensor_observer interfaces
- observer pattern
Change-Id: I7c0f859a48faca21f1cf51fede816cc84c9b016e
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 09:26:20 +0000 (18:26 +0900)]
sensord: add the basic implementation of the server-side
- server provides:
- controls for the event_loop which manages all I/O events.
- server has:
- event_loop
- sensor_manager
- server_channel_handler
* it is singleton class.
Change-Id: I6d7266f3ec68a4f576428bf4d7c2e91b699a4064
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 08:04:32 +0000 (17:04 +0900)]
sensord: add handlers to main for new failures
- if new(memory allocation) is failed, on_new_failed will be called.
- this patch refers to https://review.tizen.org/gerrit/#/c/123204/
Change-Id: I1817e376fb256992266a78d078cdc15ad00b6a58
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 07:20:26 +0000 (16:20 +0900)]
sensord: add permission_checker for checking privileges
- permission_checker provides two way to check privilege:
- by string
- by sensor_permission_t(enum)
- [TBD] in the future, we will only check privilege with string.
- [TBD] since there is a direct dependency on cynara,
it will be separated.
Change-Id: Ic7ddac594bebb669a9643992ef7f52f1c36dcdfb
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 07:15:30 +0000 (16:15 +0900)]
sensord: move dbus_listener from client to server
- dbus_listener is a helper class for listening dbus signal.
- it will listen AXIS_ORIENTATED policy from other framework.
Change-Id: I1705d87ebd0ab0a231f7bfccba28ba217ead9b70
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 06:33:47 +0000 (15:33 +0900)]
sensord: implement sensor_listener class for clients
- sensor_listener provides:
- controls for sensor actions such as start and stop.
- controls for changing sensor settings
- listening for sensor events from server
Change-Id: I7216b282cc3429d0864b4343d65ff192951b1038
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 05:42:25 +0000 (14:42 +0900)]
sensord: implement sensor_manager class for clients
- sensor_manager provides:
- store sensor information and manages all sensor handles
- check whether the sensor is supported or not
- [TBD]listen an event that the application sensor is connected or disconnected
Change-Id: Icd38a74058170162bbfa8c7df6d1bdcc41d80e2d
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 04:50:49 +0000 (13:50 +0900)]
sensor: api: implement internal api using classes
- check invalid parameters.
- call proper operations/functions.
Change-Id: I61b9813a3f77cfd116a8ea72ee417f4cb7356640
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 04:06:01 +0000 (13:06 +0900)]
sensord: api: add skeleton code of internal apis
- sensor_manager can stores and manages all of sensors.
- sensor_listener can listen sensor event and modify sensor configuation
(interval, option, batch_latency, attributes and so on)
- rename client.cpp to sensor_internal.cpp
Change-Id: I15b74b777ba70d9c7b7d7a2c597fabf91f259b2c
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 03:21:11 +0000 (12:21 +0900)]
sensord: clean up sensor_info class to support URI as name
- sensor_info class has sensor information and
can support serialize/deserialize information between client and server.
- URI(type and name) is supported
- TODO-LIST
- some information is redundant or requires a clear distinction
Change-Id: I3f40376f37cccbb003d865b7558b5fc55a3b141f
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 01:50:34 +0000 (10:50 +0900)]
sensord: add util functions to sensor:utils namepsace
- change sensor_type_t to uri
- get timestamp
- get client name
Change-Id: I3aabf426176306b31a61c4da987281f19664ac62
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 01:29:52 +0000 (10:29 +0900)]
sensord: ipc: add unit testcases
- test a connection between ipc_client and ipc_server
- test 2 clients
- test 100 clients
- test 1 client with 2 channels
- test 30 clients with large message
- test 3 normal client and 1 client with small recv buffer
- test 3 normal client and 1 client witch sleeps 10 seconds
Change-Id: I33b2e782872b51d42fc4a68b84bd5d6fe758964f
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 01:19:13 +0000 (10:19 +0900)]
sensord: remove build warnings in ipc-utils
- warning: control reaches end of non-void function [-Wreturn-type]
- warning: ignoring return value [-Wunused-result]
Change-Id: Id172b9e32bfe45543b16dc9a0726bc1cc0c11441
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 5 Apr 2017 00:57:43 +0000 (09:57 +0900)]
sensord: ipc: add ipc_server class
- ipc_server class is a helper for server
- ipc_server class that makes it easy to bind/listen/accept a channel to use
for server.
- it creates and bind/accepts socket/channel/channel_event_handler
Change-Id: If79e27a6babcf73126b56f65e750176a9ddd5c78
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 12:30:31 +0000 (21:30 +0900)]
sensord: ipc: add ipc_client class
- ipc_client class is a helper for client.
- ipc_client class that makes it easy to connect a channel to use for clients.
- it creates and connects socket/channel/channel event_handler.
Change-Id: If75a4ab542d3623a785ccf8bccbd66628b9646db
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 12:15:45 +0000 (21:15 +0900)]
sensord: ipc: add channel class
- channel class is a nexus to a socket which is capable of I/O operations,
such as read, write, connect, and bind.
- channel class provides:
- the current state of the channel.
- the configuration parameters of the channel.
- the I/O operations that the channel supports.
- channel class can support synchronous/asynchronous send/read call.
- channel_handler:
- is called by all I/O events(connect/disconnect/read and error)
Change-Id: I85365e7cb443e969653353a83f8110ab690c4303
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 12:02:29 +0000 (21:02 +0900)]
sensord: ipc: add message class
- this class is a helper class for enconding/decoding the byte data.
- message object includes the message header automatically.
- this header provides message id/type/size/error.
Change-Id: I03dc830baebf7a9bceac97013e9931f333f8f9d2
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 11:13:14 +0000 (20:13 +0900)]
sensord: ipc: add event_loop class
- event_loop class is a wrapper of g_main_loop.
- event_loop class has the role of I/O multiplexing.
- event_handler interface can be added to event_loop.
- it would be better to make event_loop interface to use the other main_loop..
but now, it is not necessary yet.
- todo-list
- add/remove idle handler
Change-Id: I74dd0636d43319e64fa2701f9b3c662e3f31c575
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 09:43:36 +0000 (18:43 +0900)]
sensord: ipc: add socket class
- socket class is a wrapper class of unix domain socket
- supported socket types : stream_socket, seqpacket_socket
- TC : $ sensorctl test auto ipc_socket
- [PASS] sensor_ipc_socket.socket_p_0
- [PASS] sensor_ipc_socket.socket_p_10
- [PASS] sensor_ipc_socket.socket_p_1000
Change-Id: I2cb7fcb360d4a9a0c87c77d3e2b39c2bb0c06380
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 09:22:21 +0000 (18:22 +0900)]
sensord: clean up command-related types and log-related files
- remove sensor_log.cpp
- rename command_common.h to command_types.h
Change-Id: I01635838c0a11f466b183b3766ee013a19dee6b8
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 09:09:50 +0000 (18:09 +0900)]
sensord: clean up cmake configurations
- fix typos
- use uppercase letters in commands
- use CMAKE_LD_LIBS macro to link dl library
- the sensord executable binary no longer contains a sensor code
Change-Id: I23dbdfea814ef2961eea63e8eec9e85e2a88f9eb
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 09:02:53 +0000 (18:02 +0900)]
sensorctl: modify sensorctl to fix some issues
- prints sensor information with their types
- change is_running type from bool to std::atomic<bool>
- change sensor name from auto_rotation to rotation only
- if there are two or more sensors of the same type, you can select them
Change-Id: If277104ea324c1ae0da675a6e50ce677a8bbc6c9
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 08:34:07 +0000 (17:34 +0900)]
sensord: change sensord systemd socket files and name
- change socket file name from sensord_command.socket to .sensord.socket
- change socket file location from /tmp/ to /run/
- remove sensor_event.socket(useless)
Change-Id: If855c7a3f4c45778b309c8a932a6da1eb17519ca
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 4 Apr 2017 08:06:05 +0000 (17:06 +0900)]
sensord: remove sensor_common.h
- sensor_common.h is not really meaningful.
- move definitions from sensor_common.h to sensor_types.h.
Change-Id: I458bd6f9400ccef31063c524e9a74555f234f84d
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Thu, 9 Feb 2017 11:18:20 +0000 (20:18 +0900)]
sensord: refactoring: remove regacy code
Change-Id: I4ed2735fd80ab5c9345a03d87ce312c00502c3e2
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Mon, 19 Dec 2016 13:52:37 +0000 (22:52 +0900)]
sensord: refactoring sensorctl for testing modules
- To refactoring, there was the following changes.
* add test_bench to create testcases easily
* clean tester/injector/info/loopback files
- testing command examples
$ sensorctl test accelerometer /* test accelerometer sensor manually */
$ sensorctl test auto all /* test all testcases automatically with full-log */
$ sensorctl test auto socket 0 /* test socket module automatically without full-log */
$ sensorctl info all
$ sensorctl inject
Change-Id: Ie888c81f85d282eab77a8e1227d26710a85e9c61
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
Mu-Woong Lee [Tue, 3 Jan 2017 09:42:50 +0000 (18:42 +0900)]
Add dummy libsensord package to fix build unresolvable issues
Change-Id: I33c0c0c4ce4cf739587ca7363970a376e360b4bf
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
Mu-Woong Lee [Tue, 3 Jan 2017 07:32:08 +0000 (16:32 +0900)]
Add vconf & gio-2.0 to the package config
This is for backward compatibility.
A package uses vconf, which is indirectly required by sensord-devel.
Change-Id: I45f04a02f72323637bb026f5449cf2afc147e30d
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
Mu-Woong Lee [Mon, 2 Jan 2017 11:21:17 +0000 (20:21 +0900)]
Remove profile build dependency
Instead of the four packages, sensord, libsensord, libsensord-devel, and sensor-hal-devel,
the following packages are produced:
- sensord : dummy internal API library, which completely disable all sensor listener features
- sensord-genuine : working internal API library and the sensor service daemon
- sensord-devel : internal API headers and the pc file
- sensor-hal-devel : API headers for Sensor HAL
Change-Id: Ie3529d6e5eba0554fd86b4d7f95ea9726db00aa4
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
Mu-Woong Lee [Mon, 2 Jan 2017 06:47:05 +0000 (15:47 +0900)]
Merge branch 'tizen_3.0' into devel/tizen
* tizen_3.0:
sensord: add dummy api library for tv profile
sensord: accumulate pedometer data
sensord: version up 2.0.9
sensord: fix incorrect return type
sensor: enable pedometer sensor
sensor: fix return value from false to 0
sensord: add pre_start() that should be executed before starting regardless of clients
sensord: change log level from error to warning for the warning case
sensor: change the hard coded path for supporting 64bit platform
Set SmackProcessLabel to System
sensord: store unknown rotation event when auto_rotation sensor starts
Fix for build errors of packages that are using deprecated sensor api
Change-Id: I2ebe48403561de6312824deed5bc8fac18c1cef2
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
kibak.yoon [Mon, 2 Jan 2017 05:39:03 +0000 (14:39 +0900)]
sensord: add dummy api library for tv profile
Change-Id: I610a6a2e43e475b20e96432d47b68aebe7785655
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Wed, 28 Dec 2016 06:38:07 +0000 (15:38 +0900)]
sensord: accumulate pedometer data
- accumulated pedometer data should be provided to client
Change-Id: Ib9a4bb5325867e1e55f1e8c9b9a32609915dbd08
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 13 Dec 2016 11:04:01 +0000 (20:04 +0900)]
sensord: version up 2.0.9
Change-Id: I4d12ec6c0c12890c58407657dca42621cc128819
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 13 Dec 2016 10:50:03 +0000 (19:50 +0900)]
sensord: fix incorrect return type
- int to size_t
Change-Id: Ia1d5b0308e2a9a546c1980d0bb1896a1e4a88204
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
kibak.yoon [Tue, 13 Dec 2016 09:35:45 +0000 (18:35 +0900)]
sensor: enable pedometer sensor
- pedometer sensor needs healthinfo privilege
Change-Id: I9ac4e2079fd0a6e640c92b63ce13f3c3f1c81ed0
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>