From 52df6f68bd40f8d86ef6a2ebe4d547d4a8b02f48 Mon Sep 17 00:00:00 2001 From: jbnadal Date: Tue, 3 Apr 2018 16:00:38 +0200 Subject: [PATCH] rename some class --- .vscode/c_cpp_properties.json | 3 +- .../libubus-cpp/builders/cmake/CMakeLists.txt | 2 +- .../ubus-cpp/{ubus-timer.h => uloop-timer.h} | 28 ++++---- .../src/{ubus-timer.cpp => uloop-timer.cpp} | 69 +++++++++++-------- src/prog/domod/builders/cmake/CMakeLists.txt | 11 +-- .../src/devices/{Device.cpp => device.cpp} | 18 ++--- .../domod/src/devices/{Device.h => device.h} | 9 ++- .../src/devices/{Devices.cpp => devices.cpp} | 0 .../src/devices/{Devices.h => devices.h} | 0 .../{LightDevice.cpp => light-device.cpp} | 0 .../devices/{LightDevice.h => light-device.h} | 0 .../src/devices/{Light.cpp => light.cpp} | 0 .../domod/src/devices/{Light.h => light.h} | 0 .../{ShutterDevice.cpp => shutter-device.cpp} | 0 .../{ShutterDevice.h => shutter-device.h} | 0 .../src/devices/{Shutter.cpp => shutter.cpp} | 0 .../src/devices/{Shutter.h => shutter.h} | 0 ...rinklerDevice.cpp => sprinkler-device.cpp} | 2 +- .../{SprinklerDevice.h => sprinkler-device.h} | 4 +- .../devices/{Sprinkler.cpp => sprinkler.cpp} | 0 .../src/devices/{Sprinkler.h => sprinkler.h} | 0 src/prog/domod/src/main.cpp | 19 +++++ .../domod/src/timers/{Event.cpp => event.cpp} | 0 .../domod/src/timers/{Event.h => event.h} | 0 .../src/timers/{Timers.cpp => timers.cpp} | 0 .../domod/src/timers/{Timers.h => timers.h} | 11 ++- 26 files changed, 104 insertions(+), 72 deletions(-) rename src/lib/libubus-cpp/include/ubus-cpp/{ubus-timer.h => uloop-timer.h} (75%) rename src/lib/libubus-cpp/src/{ubus-timer.cpp => uloop-timer.cpp} (62%) rename src/prog/domod/src/devices/{Device.cpp => device.cpp} (82%) rename src/prog/domod/src/devices/{Device.h => device.h} (86%) rename src/prog/domod/src/devices/{Devices.cpp => devices.cpp} (100%) rename src/prog/domod/src/devices/{Devices.h => devices.h} (100%) rename src/prog/domod/src/devices/{LightDevice.cpp => light-device.cpp} (100%) rename src/prog/domod/src/devices/{LightDevice.h => light-device.h} (100%) rename src/prog/domod/src/devices/{Light.cpp => light.cpp} (100%) rename src/prog/domod/src/devices/{Light.h => light.h} (100%) rename src/prog/domod/src/devices/{ShutterDevice.cpp => shutter-device.cpp} (100%) rename src/prog/domod/src/devices/{ShutterDevice.h => shutter-device.h} (100%) rename src/prog/domod/src/devices/{Shutter.cpp => shutter.cpp} (100%) rename src/prog/domod/src/devices/{Shutter.h => shutter.h} (100%) rename src/prog/domod/src/devices/{SprinklerDevice.cpp => sprinkler-device.cpp} (98%) rename src/prog/domod/src/devices/{SprinklerDevice.h => sprinkler-device.h} (96%) rename src/prog/domod/src/devices/{Sprinkler.cpp => sprinkler.cpp} (100%) rename src/prog/domod/src/devices/{Sprinkler.h => sprinkler.h} (100%) rename src/prog/domod/src/timers/{Event.cpp => event.cpp} (100%) rename src/prog/domod/src/timers/{Event.h => event.h} (100%) rename src/prog/domod/src/timers/{Timers.cpp => timers.cpp} (100%) rename src/prog/domod/src/timers/{Timers.h => timers.h} (89%) diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json index 6cc8f177..d65d1dab 100644 --- a/.vscode/c_cpp_properties.json +++ b/.vscode/c_cpp_properties.json @@ -31,7 +31,8 @@ "${workspaceRoot}/_builds/x86_64_domo-debug/cross/usr/x86_64-buildroot-linux-gnu/sysroot/usr/include", "${workspaceRoot}/_builds/x86_64_domo-debug/cross/opt/ext-toolchain/x86_64-buildroot-linux-gnu/include/c++/5.4.0", "${workspaceRoot}/_builds/x86_64_domo-debug/cross/opt/ext-toolchain/x86_64-buildroot-linux-gnu/include/c++/5.4.0/x86_64-buildroot-linux-gnu", - "${workspaceRoot}/_builds/x86_64_domo-debug/cross/opt/ext-toolchain/lib/gcc/x86_64-buildroot-linux-gnu/5.4.0/include" + "${workspaceRoot}/_builds/x86_64_domo-debug/cross/opt/ext-toolchain/lib/gcc/x86_64-buildroot-linux-gnu/5.4.0/include", + "${workspaceFolder}/src/lib/libubus-cpp/include" ], "defines": [], "intelliSenseMode": "clang-x64", diff --git a/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt b/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt index 3be73b05..177f3c7e 100644 --- a/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt +++ b/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt @@ -14,7 +14,7 @@ file( source_files ${workspaceRoot}/src/lib/libubus-cpp/src/ubus-call.cpp ${workspaceRoot}/src/lib/libubus-cpp/src/ubus-object.cpp - ${workspaceRoot}/src/lib/libubus-cpp/src/ubus-timer.cpp + ${workspaceRoot}/src/lib/libubus-cpp/src/uloop-timer.cpp ) add_library( diff --git a/src/lib/libubus-cpp/include/ubus-cpp/ubus-timer.h b/src/lib/libubus-cpp/include/ubus-cpp/uloop-timer.h similarity index 75% rename from src/lib/libubus-cpp/include/ubus-cpp/ubus-timer.h rename to src/lib/libubus-cpp/include/ubus-cpp/uloop-timer.h index 3338007e..19131fb6 100644 --- a/src/lib/libubus-cpp/include/ubus-cpp/ubus-timer.h +++ b/src/lib/libubus-cpp/include/ubus-cpp/uloop-timer.h @@ -23,8 +23,8 @@ * */ -#ifndef _UBUS_TIMER_H -#define _UBUS_TIMER_H +#ifndef _ULOOP_TIMER_H +#define _ULOOP_TIMER_H /*------------------------------- INCLUDES ----------------------------------*/ @@ -39,23 +39,25 @@ extern "C" { /*--------------------------------- CLASS ----------------------------------*/ -class UBusTimer : public uloop_timeout { +class ULoopTimer : public uloop_timeout { // Disable copy construction and copy assignement - UBusTimer (const UBusTimer&); - UBusTimer &operator=(const UBusTimer&); + ULoopTimer (const ULoopTimer&); + ULoopTimer &operator=(const ULoopTimer&); public: - UBusTimer (void); - virtual ~UBusTimer (void); + ULoopTimer (void); + virtual ~ULoopTimer (void); - virtual int Expire (void); - int Start (unsigned int aTimerValue, bool aRepeat = false); - int Tick (void); + virtual int expire (void); + int start (unsigned int a_timer_value, bool a_is_repeated = false); + int stop (void); + + int tick (void); private: - bool mRepeat; - uint16_t mTimerValue; + bool m_is_repeated; + uint16_t m_timer_value; }; -#endif /* _UBUS_TIMER_H */ +#endif /* _ULOOP_TIMER_H */ diff --git a/src/lib/libubus-cpp/src/ubus-timer.cpp b/src/lib/libubus-cpp/src/uloop-timer.cpp similarity index 62% rename from src/lib/libubus-cpp/src/ubus-timer.cpp rename to src/lib/libubus-cpp/src/uloop-timer.cpp index 1c444d91..e5c915bf 100644 --- a/src/lib/libubus-cpp/src/ubus-timer.cpp +++ b/src/lib/libubus-cpp/src/uloop-timer.cpp @@ -27,7 +27,7 @@ #include -#include "ubus-cpp/ubus-timer.h" +#include "ubus-cpp/uloop-timer.h" /*! ---------------------------------------------------------------------------- @@ -35,60 +35,73 @@ * * @brief Callback used when a Timer has expired. */ -static void timer_callback (struct uloop_timeout *aTimeout) +static void timer_callback (struct uloop_timeout *a_timeout) { - UBusTimer *aTmp = static_cast(aTimeout); - aTmp->Tick(); + ULoopTimer *the_timer = static_cast(a_timeout); + + the_timer->tick(); } /*! ---------------------------------------------------------------------------- - * @fn UBusTimer + * @fn ULoopTimer * - * @brief Constructor of the Timer UBUS Object. + * @brief Constructor of the Uloop Timer Object. */ -UBusTimer::UBusTimer (void) +ULoopTimer::ULoopTimer (void) { // Uloop Timer Init. cb = timer_callback; pending = 0; // UBus Timer. - mRepeat = false; - mTimerValue = 0; + m_is_repeated = false; + m_timer_value = 0; } /*! ---------------------------------------------------------------------------- - * @fn ~UBusTimer + * @fn ~ULoopTimer * - * @brief Destructor of the Timer UBUS Object. + * @brief Destructor of the Ullop Timer Object. */ -UBusTimer::~UBusTimer (void) +ULoopTimer::~ULoopTimer (void) { } /*! ---------------------------------------------------------------------------- - * @fn Start the Timer - * + * @fn start + * @param aTimerValue is the amount of time (in milliseconds) before the timer + * expires. * @brief Start the Timer object. */ -int UBusTimer::Start (unsigned int aTimerValue, bool aRepeat) +int ULoopTimer::start (unsigned int a_timer_value, bool a_is_repeated) { - mTimerValue = aTimerValue; - mRepeat = aRepeat; + m_timer_value = a_timer_value; + m_is_repeated = a_is_repeated; - return uloop_timeout_set (this, mTimerValue); + return uloop_timeout_set (this, m_timer_value); } /*! ---------------------------------------------------------------------------- - * @fn Expire + * @fn stop + * + * @brief Stop the Timer object. + */ +int ULoopTimer::stop (void) +{ + return uloop_timeout_cancel (this); +} + + +/*! ---------------------------------------------------------------------------- + * @fn expire * * @brief Method Should be overrided. */ -int UBusTimer::Expire (void) +int ULoopTimer::expire (void) { //fprintf (stderr, "UBusTimer::Expire\n"); return 0; @@ -96,18 +109,16 @@ int UBusTimer::Expire (void) /*! ---------------------------------------------------------------------------- - * @fn Tick + * @fn tick * * @brief Method called when the Timer has expired. */ -int UBusTimer::Tick (void) +int ULoopTimer::tick (void) { - //fprintf (stderr, "UBusTimer::Tick\n"); + // fprintf (stderr, "UBusTimer::Tick\n"); + + if (m_is_repeated == true) + uloop_timeout_set (this, m_timer_value); - Expire (); - - if (mRepeat == true) - uloop_timeout_set (this, mTimerValue); - - return 0; + return expire (); } diff --git a/src/prog/domod/builders/cmake/CMakeLists.txt b/src/prog/domod/builders/cmake/CMakeLists.txt index e1ba8ce8..c35a3ce8 100644 --- a/src/prog/domod/builders/cmake/CMakeLists.txt +++ b/src/prog/domod/builders/cmake/CMakeLists.txt @@ -15,13 +15,16 @@ file( GLOB_RECURSE source_files ${workspaceRoot}/src/prog/domod/src/main.cpp + ${workspaceRoot}/src/prog/domod/src/devices/device.cpp + ${workspaceRoot}/src/prog/domod/src/devices/devices.cpp + ${workspaceRoot}/src/prog/domod/src/timers/event.cpp + ${workspaceRoot}/src/prog/domod/src/ubus/timers.cpp ) # $ENV{SRC_DIR}/src/prog/domod/src/timers/Timers.cpp -# $ENV{SRC_DIR}/src/prog/domod/src/timers/Event.cpp # $ENV{SRC_DIR}/src/prog/domod/src/timers/Clock.cpp -# $ENV{SRC_DIR}/src/prog/domod/src/devices/Devices.cpp -# $ENV{SRC_DIR}/src/prog/domod/src/devices/Device.cpp +# + # $ENV{SRC_DIR}/src/prog/domod/src/devices/LightDevice.cpp # $ENV{SRC_DIR}/src/prog/domod/src/devices/ShutterDevice.cpp # $ENV{SRC_DIR}/src/prog/domod/src/devices/SprinklerDevice.cpp @@ -33,10 +36,8 @@ file( # $ENV{SRC_DIR}/src/prog/domod/src/ubus/capabilities_shutters.cpp # $ENV{SRC_DIR}/src/prog/domod/src/ubus/capabilities_sprinklers.cpp # $ENV{SRC_DIR}/src/prog/domod/src/ubus/speach_command.cpp -# $ENV{SRC_DIR}/src/prog/domod/src/ubus/timers.cpp # $ENV{SRC_DIR}/src/prog/domod/src/helpers/Tokenizer.cpp # $ENV{SRC_DIR}/src/prog/domod/src/helpers/Strings.cpp -# $ENV{SRC_DIR}/src/prog/domod/src/main.cpp #) add_executable (domod ${source_files}) diff --git a/src/prog/domod/src/devices/Device.cpp b/src/prog/domod/src/devices/device.cpp similarity index 82% rename from src/prog/domod/src/devices/Device.cpp rename to src/prog/domod/src/devices/device.cpp index 176a5ebb..98750453 100644 --- a/src/prog/domod/src/devices/Device.cpp +++ b/src/prog/domod/src/devices/device.cpp @@ -27,7 +27,9 @@ #include -#include "devices/Device.h" +#include + +#include "devices/device.h" /*! ---------------------------------------------------------------------------- @@ -51,11 +53,11 @@ Device::~Device (void) /*! ---------------------------------------------------------------------------- - * @fn load_from_json + * @fn from_json * - * @brief Load LightDevice Object From a Json Object. + * @brief Load Device Object From a Json Object stringified. */ -int Device::load_from_json (Json::Value anElem) +int Device::from_json (const std::string &a_json) { fprintf(stderr, "Device::load_from_json...\n"); return 0; @@ -65,11 +67,9 @@ int Device::load_from_json (Json::Value anElem) /*! ---------------------------------------------------------------------------- * @fn to_json * - * @brief Export LightDevice Object as JSON Object. + * @brief Export Device Object as JSON Object. */ -Json::Value Device::to_json (bool bDataOnly) const +struct json_object *Device::to_json (void) const { - Json::Value theResult; - fprintf(stderr, "Device::to_json...\n"); - return theResult; + return NULL; } diff --git a/src/prog/domod/src/devices/Device.h b/src/prog/domod/src/devices/device.h similarity index 86% rename from src/prog/domod/src/devices/Device.h rename to src/prog/domod/src/devices/device.h index 4ef5de99..15919b40 100644 --- a/src/prog/domod/src/devices/Device.h +++ b/src/prog/domod/src/devices/device.h @@ -30,10 +30,9 @@ #include -#include - -/*---------------------------------- Deps -----------------------------------*/ +/*------------------------------ DEPENDENCIES -------------------------------*/ +struct json_object; /*--------------------------------- CLASS ----------------------------------*/ @@ -43,8 +42,8 @@ public: Device (void); virtual ~Device (void); - virtual int load_from_json (Json::Value anElem); - virtual Json::Value to_json (bool bDataOnly = false) const; + virtual int from_json (const std::string &a_json); + virtual struct json_object *to_json (void) const; protected: std::string mspeach_name; diff --git a/src/prog/domod/src/devices/Devices.cpp b/src/prog/domod/src/devices/devices.cpp similarity index 100% rename from src/prog/domod/src/devices/Devices.cpp rename to src/prog/domod/src/devices/devices.cpp diff --git a/src/prog/domod/src/devices/Devices.h b/src/prog/domod/src/devices/devices.h similarity index 100% rename from src/prog/domod/src/devices/Devices.h rename to src/prog/domod/src/devices/devices.h diff --git a/src/prog/domod/src/devices/LightDevice.cpp b/src/prog/domod/src/devices/light-device.cpp similarity index 100% rename from src/prog/domod/src/devices/LightDevice.cpp rename to src/prog/domod/src/devices/light-device.cpp diff --git a/src/prog/domod/src/devices/LightDevice.h b/src/prog/domod/src/devices/light-device.h similarity index 100% rename from src/prog/domod/src/devices/LightDevice.h rename to src/prog/domod/src/devices/light-device.h diff --git a/src/prog/domod/src/devices/Light.cpp b/src/prog/domod/src/devices/light.cpp similarity index 100% rename from src/prog/domod/src/devices/Light.cpp rename to src/prog/domod/src/devices/light.cpp diff --git a/src/prog/domod/src/devices/Light.h b/src/prog/domod/src/devices/light.h similarity index 100% rename from src/prog/domod/src/devices/Light.h rename to src/prog/domod/src/devices/light.h diff --git a/src/prog/domod/src/devices/ShutterDevice.cpp b/src/prog/domod/src/devices/shutter-device.cpp similarity index 100% rename from src/prog/domod/src/devices/ShutterDevice.cpp rename to src/prog/domod/src/devices/shutter-device.cpp diff --git a/src/prog/domod/src/devices/ShutterDevice.h b/src/prog/domod/src/devices/shutter-device.h similarity index 100% rename from src/prog/domod/src/devices/ShutterDevice.h rename to src/prog/domod/src/devices/shutter-device.h diff --git a/src/prog/domod/src/devices/Shutter.cpp b/src/prog/domod/src/devices/shutter.cpp similarity index 100% rename from src/prog/domod/src/devices/Shutter.cpp rename to src/prog/domod/src/devices/shutter.cpp diff --git a/src/prog/domod/src/devices/Shutter.h b/src/prog/domod/src/devices/shutter.h similarity index 100% rename from src/prog/domod/src/devices/Shutter.h rename to src/prog/domod/src/devices/shutter.h diff --git a/src/prog/domod/src/devices/SprinklerDevice.cpp b/src/prog/domod/src/devices/sprinkler-device.cpp similarity index 98% rename from src/prog/domod/src/devices/SprinklerDevice.cpp rename to src/prog/domod/src/devices/sprinkler-device.cpp index adf19976..a51e24af 100644 --- a/src/prog/domod/src/devices/SprinklerDevice.cpp +++ b/src/prog/domod/src/devices/sprinkler-device.cpp @@ -29,7 +29,7 @@ #include -#include "devices/SprinklerDevice.h" +#include "devices/sprinkler-device.h" /*! ---------------------------------------------------------------------------- diff --git a/src/prog/domod/src/devices/SprinklerDevice.h b/src/prog/domod/src/devices/sprinkler-device.h similarity index 96% rename from src/prog/domod/src/devices/SprinklerDevice.h rename to src/prog/domod/src/devices/sprinkler-device.h index 1f908b6a..9a9f4118 100644 --- a/src/prog/domod/src/devices/SprinklerDevice.h +++ b/src/prog/domod/src/devices/sprinkler-device.h @@ -30,8 +30,8 @@ #include -#include "devices/Sprinkler.h" -#include "devices/Device.h" +#include "devices/sprinkler.h" +#include "devices/device.h" /*---------------------------------- Deps -----------------------------------*/ diff --git a/src/prog/domod/src/devices/Sprinkler.cpp b/src/prog/domod/src/devices/sprinkler.cpp similarity index 100% rename from src/prog/domod/src/devices/Sprinkler.cpp rename to src/prog/domod/src/devices/sprinkler.cpp diff --git a/src/prog/domod/src/devices/Sprinkler.h b/src/prog/domod/src/devices/sprinkler.h similarity index 100% rename from src/prog/domod/src/devices/Sprinkler.h rename to src/prog/domod/src/devices/sprinkler.h diff --git a/src/prog/domod/src/main.cpp b/src/prog/domod/src/main.cpp index 5dc61fb1..fbd32f2e 100644 --- a/src/prog/domod/src/main.cpp +++ b/src/prog/domod/src/main.cpp @@ -37,6 +37,9 @@ extern "C" { #include } +#include "timers/timers.h" +#include "devices/devices.h" + /*-------------------------------- DEFINES ---------------------------------*/ #define k_dir_sep '/' @@ -117,11 +120,27 @@ int main(int argc, char *argv[]) { int the_ret = 0; std::string the_config_path; + struct ubus_context *the_ctx = NULL; /* Get the Path of the binary to load configs. */ the_config_path = get_config_path(argv[0]); printf ("config path: %s\n", the_config_path.c_str()); + + /* Setup the devices. */ + Devices the_devices(the_config_path + "/Devices.json"); + if (theDevices.load() != 0) { + fprintf(stderr, "Failed to load devices.\n"); + return -1; + } + + /* Setup the Timers. */ + Timers the_timers(the_config_path + "/Timers.json", &the_devices); + if (the_timers.load() != 0) { + fprintf(stderr, "Failed to load timers.\n"); + return -2; + } + return 0; /* Setup the Ubus context. */ diff --git a/src/prog/domod/src/timers/Event.cpp b/src/prog/domod/src/timers/event.cpp similarity index 100% rename from src/prog/domod/src/timers/Event.cpp rename to src/prog/domod/src/timers/event.cpp diff --git a/src/prog/domod/src/timers/Event.h b/src/prog/domod/src/timers/event.h similarity index 100% rename from src/prog/domod/src/timers/Event.h rename to src/prog/domod/src/timers/event.h diff --git a/src/prog/domod/src/timers/Timers.cpp b/src/prog/domod/src/timers/timers.cpp similarity index 100% rename from src/prog/domod/src/timers/Timers.cpp rename to src/prog/domod/src/timers/timers.cpp diff --git a/src/prog/domod/src/timers/Timers.h b/src/prog/domod/src/timers/timers.h similarity index 89% rename from src/prog/domod/src/timers/Timers.h rename to src/prog/domod/src/timers/timers.h index 395d4425..c38ea47a 100644 --- a/src/prog/domod/src/timers/Timers.h +++ b/src/prog/domod/src/timers/timers.h @@ -31,10 +31,9 @@ #include #include -#include +#include -#include "ubus-cpp/UBusTimer.h" -#include "timers/Event.h" +#include "timers/event.h" /*---------------------------------- Deps -----------------------------------*/ @@ -42,13 +41,13 @@ class Devices; /*--------------------------------- CLASS ----------------------------------*/ -class Timers : public UBusTimer { +class Timers : public ULoopTimer { public: - Timers (std::string aPath, Devices *aDevice); + Timers (const std::string &a_path, Devices *a_device); ~Timers (void); - int Expire (void); + int expire (void); int load (void); int save (void);