From 716d28f99637d6f2b8eb2758c2da41da67b8027c Mon Sep 17 00:00:00 2001 From: Fulup Ar Foll Date: Tue, 15 Aug 2017 14:13:49 +0200 Subject: Documentation --- data/CMakeLists.txt | 46 ++++++++++++++++++++ data/default-control-policy.json | 90 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 136 insertions(+) create mode 100644 data/CMakeLists.txt create mode 100644 data/default-control-policy.json (limited to 'data') diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt new file mode 100644 index 0000000..55ee664 --- /dev/null +++ b/data/CMakeLists.txt @@ -0,0 +1,46 @@ +########################################################################### +# Copyright 2017 IoT.bzh +# +# author: Fulup Ar Foll +# +# 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. +########################################################################### + + + +################################################## +# Control Policy Config file +################################################## +PROJECT_TARGET_ADD(Control_config) + + file(GLOB XML_FILES "*.json") + + add_custom_target(${TARGET_NAME} + DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME} + ) + + # check XML schema before pushing config + add_custom_command( + DEPENDS ${XML_FILES} + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + # COMMAND xmllint -schema ${XML_SCHEMA} ${XML_FILES} --noout (Fulup we miss this for JSON) + COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME} + COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME} + COMMAND cp -r ${XML_FILES} ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME} + ) + + SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES + LABELS "DATA" + OUTPUT_NAME ${TARGET_NAME} + ) diff --git a/data/default-control-policy.json b/data/default-control-policy.json new file mode 100644 index 0000000..30cd1ce --- /dev/null +++ b/data/default-control-policy.json @@ -0,0 +1,90 @@ +{ + "$schema": "ToBeDone", + "metadata": { + "label": "sample-audio-policy", + "info": "Provide Default Audio Policy for Multimedia, Navigation and Emergency", + "version": "1.0" + }, + "onload": { + "info": "controler initialisation config", + "plugin": "sample-audio-policy.so", + "actions": [ + { + "info": "Call policy sharelib install entrypoint", + "callback": "SamplePolicyInstall", + "query": {"arg1" : "first_arg", "nextarg": "second arg value"} + }, { + "info": "Assert AlsaCore Presence", + "api": "alsacore", + "verb": "ping" + } + ] + }, + "controls": + [{ + "label": "multimedia", + "actions": [ + { + "label": "multimedia-policy-cb", + "info": "Call Sharelib Sample Callback", + "callback": "samplePolicyCB", + "query": { + "arg1": "snoopy", + "arg2": "toto" + } + }, { + "label": "multimedia-policy-ucm", + "info": "Subcall AlSA UCM navigation", + "api": "alsacore", + "verb": "ucmset", + "query": { + "verb": "multimedia" + } + } + ] + }, + { + "label":"navigation", + "action" : { + "api": "alsacore", + "verb": "ucmset", + "query": { + "verb": "navigation" + }, + "optional": true, + "timeout": 100 + } + }, { + "label":"emergency", + "action": { + "api": "alsacore", + "verb": "ucmset", + "query": { + "verb": "emergency" + } + } + }] + , + "events": [ + { + "label": "SampleEvent", + "comment": "define action when receiving a given event", + "actions": [ + { + "info": "Event Callback-1", + "callback": "ProcessEventCB", + "query": { + "arg": "action-1" + } + }, { + "info": "Event Callback-2", + "callback": "ProcessEventCB", + "query": { + "arg": "action-2" + } + } + ] + } + ] +} + -- cgit 1.2.3-korg