From 0039b07f1f45d0c15252c2c1af6768b03da7f22b Mon Sep 17 00:00:00 2001 From: Abhishek Vijay Date: Wed, 20 Nov 2019 10:47:30 +0530 Subject: [PATCH] [NonACR]Seperated interface header & excluded dummy plugin from build Change-Id: I05791bb5d72f756e53a7589e934e13f998ccdf14 Signed-off-by: Abhishek Vijay --- CMakeLists.txt | 3 +- packaging/batterymonitor-plugins.spec | 16 +- .../{cpu => common}/include/bm_plugin_interface.h | 0 plugin/cpu/CMakeLists.txt | 3 +- plugin/dummy/CMakeLists.txt | 1 + plugin/dummy/include/bm_plugin_interface.h | 286 --------------------- 6 files changed, 12 insertions(+), 297 deletions(-) rename plugin/{cpu => common}/include/bm_plugin_interface.h (100%) delete mode 100644 plugin/dummy/include/bm_plugin_interface.h diff --git a/CMakeLists.txt b/CMakeLists.txt index b9c2dee..a01ec05 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,4 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6) ADD_SUBDIRECTORY(plugin/cpu) - -ADD_SUBDIRECTORY(plugin/dummy) +#ADD_SUBDIRECTORY(plugin/dummy) diff --git a/packaging/batterymonitor-plugins.spec b/packaging/batterymonitor-plugins.spec index ef73a84..c1ca068 100644 --- a/packaging/batterymonitor-plugins.spec +++ b/packaging/batterymonitor-plugins.spec @@ -30,11 +30,11 @@ BuildRequires: pkgconfig(sqlite3) %description cpu CPU plugin for Battery-Monitor -%package dummy -Summary: Battery-Monitor dummy plugin +#%package dummy +#Summary: Battery-Monitor dummy plugin -%description dummy -Dummy plugin for Battery-Monitor +#%description dummy +#Dummy plugin for Battery-Monitor %prep %setup -q @@ -63,7 +63,7 @@ mkdir -p %{buildroot}%{BATTERY_MONITOR_LIBDIR} %license LICENSE %{BATTERY_MONITOR_LIBDIR}/lib%{name}-cpu* -%files dummy -%manifest %{name}.manifest -%license LICENSE -%{BATTERY_MONITOR_LIBDIR}/lib%{name}-dummy* +#%files dummy +#%manifest %{name}.manifest +#%license LICENSE +#%{BATTERY_MONITOR_LIBDIR}/lib%{name}-dummy* diff --git a/plugin/cpu/include/bm_plugin_interface.h b/plugin/common/include/bm_plugin_interface.h similarity index 100% rename from plugin/cpu/include/bm_plugin_interface.h rename to plugin/common/include/bm_plugin_interface.h diff --git a/plugin/cpu/CMakeLists.txt b/plugin/cpu/CMakeLists.txt index 376d03e..00c0e12 100644 --- a/plugin/cpu/CMakeLists.txt +++ b/plugin/cpu/CMakeLists.txt @@ -18,8 +18,9 @@ FOREACH(flag ${${PROJECT_NAME}_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) +#INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../common/include) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -fvisibility=hidden") SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") diff --git a/plugin/dummy/CMakeLists.txt b/plugin/dummy/CMakeLists.txt index 80305fc..0bfa1e6 100644 --- a/plugin/dummy/CMakeLists.txt +++ b/plugin/dummy/CMakeLists.txt @@ -24,6 +24,7 @@ SET(SOURCES ) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../common/include) ADD_LIBRARY(${PROJECT_NAME} SHARED ${SOURCES}) TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${${PROJECT_NAME}_LDFLAGS}) diff --git a/plugin/dummy/include/bm_plugin_interface.h b/plugin/dummy/include/bm_plugin_interface.h deleted file mode 100644 index a722542..0000000 --- a/plugin/dummy/include/bm_plugin_interface.h +++ /dev/null @@ -1,286 +0,0 @@ -/* - * Copyright (c) 2018 Samsung Electronics Co., Ltd All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#ifndef __BM_PLUGIN_INTERFACE_H__ -#define __BM_PLUGIN_INTERFACE_H__ - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef unsigned int uint; -typedef unsigned char uchar; - -#define BM_DATA_TYPE_MAX (BM_DATA_TYPE_BATTERY + 1) -#define BM_PLUGIN_ID_MAX (BM_PLUGIN_ID_BATTERY + 1) -#define BM_DURATION_TYPE_MAX (BM_DURATION_TYPE_1WEEK + 1) - -typedef enum { - BM_PLUGIN_ERROR_NONE = TIZEN_ERROR_NONE, /**< Successful */ - BM_PLUGIN_ERROR_NO_DATA = TIZEN_ERROR_NO_DATA, /**< No data */ - BM_PLUGIN_ERROR_INVALID_PARAMETER = TIZEN_ERROR_INVALID_PARAMETER, /**< Invalid parameter */ - BM_PLUGIN_ERROR_OUT_OF_MEMORY = TIZEN_ERROR_OUT_OF_MEMORY, /**< Out of memory */ - BM_PLUGIN_ERROR_NOT_SUPPORTED = TIZEN_ERROR_NOT_SUPPORTED, /**< Not supported */ - BM_PLUGIN_ERROR_SERVICE_UNAVAILABLE = TIZEN_ERROR_UNKNOWN - 1 /**< Service unavailable */ -} bm_plugin_error_e; - -/* - * enum for plugin identifier - */ -typedef enum { - BM_PLUGIN_ID_BLE=0, /**< Bluetooth Low Energy */ - BM_PLUGIN_ID_WIFI, /**< Wi-Fi */ - BM_PLUGIN_ID_CPU, /**< CPU */ - BM_PLUGIN_ID_DISPLAY, /**< Display */ - BM_PLUGIN_ID_DEVICE_NETWORK, /**< Network */ - BM_PLUGIN_ID_GPS_SENSOR, /**< GPS */ - BM_PLUGIN_ID_HRM_SENSOR, /**< Heart Rate Monitor */ - BM_PLUGIN_ID_BATTERY /**< Battery */ -} bm_plugin_id_e; - -/* - * enum for feature data collection period - */ -typedef enum { - BM_DURATION_TYPE_1DAY = 0, /**< Set the period from a day ago to now */ - BM_DURATION_TYPE_1WEEK /**< Set the period from a week ago to now */ -} bm_duration_type_e; - -/* - * enum for feature data type - */ -typedef enum { - BM_DATA_TYPE_BLE=0, /**< Bluetooth Low Energy */ - BM_DATA_TYPE_WIFI, /**< Wi-Fi */ - BM_DATA_TYPE_CPU, /**< CPU */ - BM_DATA_TYPE_DISPLAY, /**< Display */ - BM_DATA_TYPE_DEVICE_NETWORK, /**< Network */ - BM_DATA_TYPE_GPS_SENSOR, /**< GPS */ - BM_DATA_TYPE_HRM_SENSOR, /**< Heart Rate Monitor */ - BM_DATA_TYPE_BATTERY /**< Battery */ -} bm_plugin_data_type_e; - -/* - * common structure for application time map. - */ -typedef struct { - char *app_id; /**< application id */ - uint time; /**< total duration for which application as active */ -} app_time_map_st1; - -typedef struct { - char *app_id; /**< application id */ - uint time; /**< total duration for which application as active */ - uint rx; /**< Total Bytes received by the application during runtime */ - uint tx; /**< Total Bytes transmitted by the application during runtime */ -} app_time_map_st2; - -/* - * structure for "display" feature data. - */ -typedef struct { - uint high; /**< total time in milliseconds during which brightness intensity was high */ - uint low; /**< total time in milliseconds during which brightness intensity was low */ - uint med; /**< total time in milliseconds during which brightness intensity was medium */ - time_t start; /**< start time of feature data collection session */ - time_t stop; /**< stop time of feature data collection session */ - GSList *atm_list; /**< application time map('app_time_map_st1') list for all active applications between start & stop */ - GSList *display_list; /**< list of nodes of 'bm_display_st' for next consecutive sessions */ -} bm_display_st; - -/* - * structure for "cpu" feature data. - */ -typedef struct { - uint cpuTicks; /**< CPU Usage during the session */ - uint cpuTimeBackground; /**< Time spent in Background State average operating frequency will be used to calculate the power */ - uint cpuTimeForeground; /**< Time spent in Foreground state average operating frequency will be used to calculate the power */ - GSList *atm_list; /**< application time map('app_time_map_st1') list for all active applications between start & stop */ - GSList *cpu_data_list; /**< list of nodes of 'bm_cpu_st' for next consecutive sessions */ -} bm_cpu_st; - -/* - * structure for "device_network" feature data. - */ -typedef struct { - uint time_level_0; /**< Total time in milliseconds during which signal_strength was on level 0 */ - uint time_level_1; /**< Total time in milliseconds during which signal_strength was on level 1 */ - uint time_level_2; /**< Total time in milliseconds during which signal_strength was on level 2 */ - uint time_level_3; /**< Total time in milliseconds during which signal_strength was on level 3 */ - uint time_level_4; /**< Total time in milliseconds during which signal_strength was on level 4 */ - uint time_level_5; /**< Total time in milliseconds during which signal_strength was on level 5 */ - uint time_level_6; /**< Total time in milliseconds during which signal_strength was on level 6 */ - GSList *atm_list; /**< application time map('app_time_map_st2') list for all active applications between start & stop */ - GSList *dn_data_list; /**< list of nodes of 'bm_device_network_st' for next consecutive sessions */ -} bm_device_network_st; - -/* - * structure for "Wi-Fi" feature data. - */ -typedef struct { - uint time_level_0; /**< Total time in milliseconds during which rssi was on level 0 */ - uint time_level_1; /**< Total time in milliseconds during which rssi was on level 1 */ - uint time_level_2; /**< Total time in milliseconds during which rssi was on level 2 */ - uint time_level_3; /**< Total time in milliseconds during which rssi was on level 3 */ - uint time_level_4; /**< Total time in milliseconds during which rssi was on level 4 */ - time_t startTime; /**< start time of feature data collection session */ - time_t endTime; /**< end time of feature data collection session */ - uint scanTime; /**< Total time spent by the resource in (scan) mode during the session */ - GSList *atm_list; /**< application time map('app_time_map_st2') list for all active applications between start & stop */ - GSList *wifi_data_list; /**< list of nodes of 'bm_wifi_st' for next consecutive sessions */ -} bm_wifi_st; - -/* - * structure for "bluetooth" feature data. - */ -typedef struct { - uint scanTime; /**< Total time spent by the resource in (scan) mode during the session */ - uint connectedTime; /**< Total time spent by the resource in (connected) mode during the session */ - time_t startTime; /**< start time of feature data collection session */ - time_t stopTime; /**< stop time of feature data collection session */ - GSList *atm_list; /**< application time map('app_time_map_st2') list for all active applications between start & stop */ - GSList *bt_data_list; /**< list of nodes of 'bm_bluetooth_st' for next consecutive sessions */ -} bm_bluetooth_st; - -/* - * structure for "gps" feature data. - */ -typedef struct { - time_t connStartTime; /**< start time of feature data collection session */ - time_t connStopTime; /**< stop time of feature data collection session */ - GSList *atm_list; /**< application time map('app_time_map_st1') list for all active applications between start & stop */ - GSList *gps_data_list; /**< list of nodes of 'bm_gps_st' for next consecutive sessions */ -} bm_gps_st; - -/* - * structure for "hrm-sensor" feature data. - */ -typedef struct { - uint sensor_hub_wakeup_time; /**< wake-up time of sensor-hub */ - uint sensor_hub_wakeup_count; /**< wake-up count of sensor-hub */ - uint sensor_wakeup_time; /**< sensor wake-up time */ - uint sensor_wakeup_count; /**< sensor wake-up count */ - GSList *atm_list; /**< application time map('app_time_map_st1') list for all active applications between start & stop */ - GSList *hrm_data_list; /**< list of nodes of 'bm_hrm_sensor_st' for next consecutive sessions */ -} bm_hrm_sensor_st; - -/* - * structure for "battery" feature data. - */ -typedef struct { - uint battery_percent; /**< Battery percent */ - uint is_charging; /**< State of charging */ -} bm_battery_st; - -/* ========================================================================== */ - -/* - * battery-monitor data handle - */ -typedef void *bm_data_h; - -/* - * Callback to be invoked when service is going OFF - * - * [Param] handle - handle through which service will provide data - * to battery-monitor service daemon. - * - * [Param] result - the result of callback operation - */ -typedef void (*bm_data_callback)(bm_plugin_error_e result, bm_data_h *handle); - -/* - * battery-monitor callback structure - */ -typedef struct { - bm_data_callback provide_feature_data; -} bm_callbacks_st; - -/* - * structure for plugin API's - */ -typedef struct { - /* - * [Sync API] To initialize plugin - */ - int (*init)(const bm_callbacks_st *callbacks); - /* - * [Sync API] To deinitialize plugin - */ - int (*deinit)(void); - /* - * [Sync API] To get feature data from plugin - * - * [Param] handle - battery-monitor data handle through which plugin - * will provide data to the manager. This handle will be passed - * as reference, plugin will assign a valid object which will be - * set free by the manager; battery-monitor manager will typecast - * the object provided through handle for each plugin and will use - * it for further calculation. - * - * [Param] data_type - type of data like - BLE, WiFi, CPU etc. - */ - int (*get_feature_data)(bm_data_h *handle, bm_plugin_data_type_e data_type); -} bm_api_st; - -/* - * structure for plugin information - */ -typedef struct { - /* - * Respective "identifier" of Plugin - */ - int id; - /* - * Respective "name" of Plugin - */ - const char *name; - /* - * Respective "author" of Plugin - */ - const char *author; - /* - * Respective "version" of Plugin - */ - const char *version; - /* - * Plugin init function - */ - int (*init)(bm_api_st **api); - /* - * Plugin de-init function - */ - int (*deinit)(void); -} bm_plugin_st; - - -/* - * macro for adding plugin - */ -#define BM_PLUGIN_ADD(id, name, author, version, init, deinit) \ - bm_plugin_st bm_plugin = { id, name, author, version, init, deinit }; - - -#ifdef __cplusplus -} -#endif - -#endif /* __BM_PLUGIN_INTERFACE_H__ */ -- 2.7.4