summaryrefslogtreecommitdiffstats
path: root/plugins
AgeCommit message (Collapse)AuthorFilesLines
2018-07-22Fix the build for master with latest binderRomain Forlot3-3/+0
Update config.cmake file with app-templates improvments: - Now versioning is handled by app-templates based on gerrit tags - Binding version set up in config.cmake rather than in code. - Update variables name for build type and install prefix. Submodule afb-helpers 43ec971..a37225f: > Fix: use of GetBindingDirPath without dynapi > Retrieve directory list from environment variables > Remove the file .gitmodules > Remove unnecessary 'AFB_DEBUG' redefinition > Use binding version to handle dynapi > At search, use the prefix parameter as a prefix > Remove deprecated use of cmake/Qt macro > Rename method to avoid conflict with Qt's one Submodule conf.d/app-templates aa68dbd..f94e45e: > Align sample on actual default compile options > Add support to binding version 3. > Warning if not using wgtpkg-pack to make a widget > Rework CMAKE_INSTALL_PREFIX and INSTALL_PREFIX var > Be able to overwrite BUILD_TYPE using CLI > Use CACHE variable for other common CMAKE variable > Fix:: wrong wgt using RELEASE BUILD TYPE > Fix: SYSROOT location detection... Wrong test. > Change the default debug compilation options. > Clearer coverage compilation options configuration Submodule ctl-utilities 1ff524b..ff14c58: > Fix : typo introduced in a previous commit. > Use prefix variable to find controller's plugins > Use binding version to set controller definitions > ctl-lua: typo fix > asynchronism for test: LockWait added > Fix: plugin api assignement order > Execute ConfigExec only if section is existing > Always set the api member even if NULL. > Ability to add a plugin after the initial load > Be able to dispatch required api at the wanted time Depends-On : I135a723d21d70b8c54f4cab1c534210757318ed0 Change-Id: I90938f53dd1f606b3aa39a549e618c0fe413870c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-07-05Update submodulesRomain Forlot1-1/+3
Submodule conf.d/app-templates 6e1a3c3..aa68dbd: > Don't overwrite the autobuild script if it exists > Disable the in-tree build method. > Detect Yocto as OS distribution > Fix: wrong compile options added > Fallback using zip format if no wgtpkg-pack found > 02-variables.cmake: Avoid checking CXX version if not required > config.cmake.sample: Remove dependency to libsystemd > config.cmake.sample: Remove dependency to libmicrohttpd > Added -D_FORTIFY_SOURCE=2 to CFLAGS > start-on-target: uses RSYNC_PREFIX path for config > Fixed spelling. > Improve OS detection > Fix: OS detection > Launch from workdir > Change closing that could fix native debugging Submodule ctl-utilities 0129510...1ff524b: > Change LUA package path at LUA interpreter load > Don't load two times a plugin even for LUA > Fixed hidden bound variable (apiHandle) > Fixed null value when push Lua arguments > Adjust to compile with incoming bindings v3 > Remove declaration to not existing functions > Add 2 lua utilities function > Update README.md for new metadata keys. > Fix a compilation issue due to modif of AFB_ReqSuccess > README:md: update README accordingly to new json scheme. > Fixed crash due to call to json_object_put > Fix segfault when printing long message from lua > Fixed spelling of AFB_ReqSuccess > Remove an unnecessary variable > Make parsing of action loading non blocking > Use an external file for app fw functions link > Use macro to test request validity > Fixed build warnings with gcc >= 7.3 > Increase lua script max message size > Prevent lost of config file path when searching > Correct way that api actions are handled in controller > Handle more metadata in the controller. > Add possibility to set prefix to NULL in CtlConfigScan > Fixed compilation warnings with gcc-7.2.0 > Add an external field to CtlConfigT > Make action item from a LUA action mandatory > Handle no prefix given > Good usage of strncat and strncpy > Update to the new JSON syntax > Detect failure at OnLoad action calls > Improve reliability and function calls > Correctly release request JSON object > Add AFB macros > Don't use assert in controller. > Change lua2c JSON syntax. > Search for Event section > Fix: changes key name. > Fix: arguments pointer NULL check > Fix wrong error message. > Simplify action definition > Fix: Dyn API Action loading procedure > Use new version of function GetBindingDirPath > Format > Merge changes from topic 'sandbox/claneys/wip' > Upgrade config schema > Fix: callback execution condition < Format < Fix: callback execution condition < New action loading function. < Upgrade config schema Adapt json config file to new syntax Fix: prefix now add the "-" so it'isn't needed to add it in the prefix at search (signal-composer.cpp) Fix: calling a api verb without json_object fails because of config arguments not retrieved. (sources.cpp) Change-Id: I48c1bca9fbac485e6a34b4645e683d9bdb1cbf2b Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-07-05Reintoduce the old builtin pluginRomain Forlot2-0/+85
We use only one function of two from the plugin which could be called from the LUA script to be able to set a signal value from a LUA callback. Change-Id: Ic7a0fcd3d8c4c2370828c1d09fff9ed88a0dc15b Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-07-05Rework loading sources and signals.Romain Forlot1-22/+0
Some function that are now included in the controller submodule do not need to be in the composer as well. Also initialize sources and signals in the same way . JSON configuration needs to be updated to fit this changes Change-Id: I2043791e7ee80f8350f33ed15bdf9980c0773b82 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-07-05Change, clean plugins.Romain Forlot4-138/+71
Improve GPS plugin to be able to calculate the heading also remove the builtin plugin that was an error. We need to pass GPS plugin in C++ to be able to use the context. Handle "double" and "int" signal's value. Change-Id: I6d902e4ac76a0e933326c0b4c43922645c9c5a4c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-18Update documentationRomain Forlot1-2/+1
Change-Id: I82edfc5111805cf5e2affad1a6366d1144006fbf Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-18Several small fixes and improvements.Romain Forlot3-19/+10
Cleaning Make some additionnals test avoiding segfault, Filling opitonnal response object to avoid warning Wrong plugins type register macro called Change-Id: I012cc3ddc5f89b75dbc46c3ea535717141823884 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-15Get back on track l2c functionsRomain Forlot1-4/+6
Adjust to the new controller behavior lua2c functions calls Change-Id: I52d385101d5205a2dd2c996810feccb1f00c20c7 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Fix wrong timestamp type use to retrieve value.Romain Forlot1-1/+1
Change-Id: I884a7957325a57a97dd562d620e11167f452edf2 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Load additionnals object at runtimeRomain Forlot1-3/+8
Later integrated in controller submodule Change-Id: I7d5c7431e60fc16cc2053747674fe4f14efd6a14 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Hold all contexts (plugin & source) in signalCtx_Romain Forlot1-38/+36
Keeping persistence between call data are kept in that member also subscription Action now use getSignals_ context and no more the signal one, this is more accurate and simples Change-Id: Idd7c56ba30f1daa9eaf9b99a7261d58189ef0bb2 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Disable plugin initialization no more neededRomain Forlot2-4/+4
Context is computed before calling action and accessible through source parameter. Change-Id: Ia1b2c59b7ad4e4e3f60ff193307201dbc6d388ba Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Update and use latest ctl-utilities.Romain Forlot1-27/+32
Controller will now handle loading additional files from section. Context retrieving change a bit, now we have source context and plugin context. Update json unpacking and packing. Cleaning, format. Change-Id: Ie7a4721f6b703796a0dac1a236922427f4755dc5 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Typo, cleaning, formatRomain Forlot1-1/+1
Change-Id: Ibc0457d7395d336c9716e3ed7ca51b71c450f0db Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Migrate to ctl-utilities libraryRomain Forlot4-23/+19
New version of controller as a library. Loading additionnals files from each sections. Change-Id: I4f5e78d0baf9650cb8d1cc1da26f8e1fd73b792c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14LUA lib and bin embedded in projectRomain Forlot3-23/+33
Change-Id: I1a61b49f55e4daa305800e754a14b6041aa81b34 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Fix uint64_t coming from LUA that don't supportRomain Forlot1-3/+2
Change-Id: Ida74a1f9904e9271ffc4a7c21d24f3b7f6c3f584 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14lua2c completely operationnalRomain Forlot3-14/+33
- Retrieve args from lua call correctly - Correctly push and set function pointer into plugin symbols Change-Id: I12d03e1101c458a042887a67a35a08082bd98f4c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Make calling lua2c function from lua worksRomain Forlot1-3/+4
Change-Id: I56d78a3fe567d1f7a6c675f6a56473f96d325c85 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Enhance pointer manage and container browsingRomain Forlot2-7/+6
- SourceAPI now holds share_ptr of Signal - Signal are stored in a map<string,signal> that change way to browse the signals - subscribed property included in SourceAPI. - Clean old code - renaming struct SignalValue->signalValue Change-Id: Ic5c28296ddd7197c6562e12fbc91c504c1cc0b4d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Finalize subscription to be a simple relay for nowRomain Forlot1-1/+1
Adding new object holding signals subscribed and afb event that observes Signals using Reactive response observer design pattern Change-Id: I96647d36e0d27c25a399c1b3789621a803a845b6 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Batch low-can subscriptionRomain Forlot1-36/+41
Change-Id: Ic1561e34d01be2b15618536fe6ef01066c184520 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Make compile LUA2C functions, binding not workingRomain Forlot1-3/+2
Change-Id: I37e66929e3ebf464802f9b89a222743936862029 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Make LUA worksRomain Forlot4-161/+82
- Added LUA library at link - Make app-template crash build if a checked file fails - Fix old defined variable CONTROL_LUA_PATH to a default one in the binding data directory - Add an example with unit conversion made in LUA Change-Id: I1b4712bde32a38044ad6b14ebd38b6782fd01fe9 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Modification about conf definitionRomain Forlot1-25/+26
- Argument for each signal subscription. (getSignalsArgs) - differentiation between Signal as raw signal from another API and virtual signal depending upon other signals - changing way to specify function with uri that specify everythings that could be needed to invoke a function. Change-Id: I8917c5ae3c2c1e3fa48ddfdda41fc75eaba32bb7 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Make callback from plugin workRomain Forlot1-34/+47
Can't shared C++ symbol easily with plugin so workaround with a separate static function that handle the job Change-Id: I1208b51bc47c2daa5f08e10b25260cf206f90aed Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Get CPP controller plugin worksRomain Forlot3-35/+214
Context passing variables not working well Change-Id: Ibc67bef353e5cc2e53ef9e5579d106baab92a604 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Adding GPS plugin to make the subscriptionRomain Forlot3-2/+75
Change-Id: I838ec22ee246c7ad1b438a2777b1fd8af02433b7 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2017-12-14Subscription by plugin to signalsRomain Forlot2-0/+197
Change-Id: Icb923f87df2be8eb664106bc9077b3a8221dd3ce Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>