aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfulup <fulup.arfoll@iot.bzh>2017-08-15 12:48:59 +0200
committerfulup <fulup.arfoll@iot.bzh>2017-08-15 12:48:59 +0200
commite8b7ffa70194d1cc3ef4cc52bb0ace9f133514cf (patch)
tree63670aff03ca38b0a1da102f23e7223997f5b1f3
parent96f0057d65fbb90d9faa02a3ae4ae37b357094db (diff)
docall working with simple table
-rw-r--r--Controler-afb/ctl-binding.c3
-rw-r--r--Controler-afb/ctl-dispatch.c20
-rw-r--r--Controler-afb/ctl-lua.c67
-rw-r--r--conf.d/cmake/config.cmake5
-rw-r--r--conf.d/project/lua.d/CMakeLists.txt8
-rw-r--r--conf.d/project/lua.d/onload-audio-controls.lua11
-rw-r--r--conf.d/project/lua.d/onload-audio-oncall.lua43
-rw-r--r--htdocs/audio-control.html6
-rw-r--r--nbproject/configurations.xml431
-rw-r--r--nbproject/project.xml4
10 files changed, 526 insertions, 72 deletions
diff --git a/Controler-afb/ctl-binding.c b/Controler-afb/ctl-binding.c
index 19f97eb..554199b 100644
--- a/Controler-afb/ctl-binding.c
+++ b/Controler-afb/ctl-binding.c
@@ -69,7 +69,8 @@ PUBLIC int CtlBindingInit () {
errcount += LuaLibInit();
// now that everything is initialised execute the onload action
- errcount += DispatchOneOnLoad(CONTROL_ONLOAD_DEFAULT);
+ if (!errcount)
+ errcount += DispatchOneOnLoad(CONTROL_ONLOAD_DEFAULT);
AFB_DEBUG ("Audio Policy Control Binding Done errcount=%d", errcount);
return errcount;
diff --git a/Controler-afb/ctl-dispatch.c b/Controler-afb/ctl-dispatch.c
index 7d6a31d..3318c8d 100644
--- a/Controler-afb/ctl-dispatch.c
+++ b/Controler-afb/ctl-dispatch.c
@@ -90,7 +90,7 @@ STATIC int DispatchOneControl (DispatchHandleT **controls, const char* controlLa
json_object_get( actions[idx].argsJ); // make sure afb_service_call does not free the argsJ
int err = afb_service_call_sync(actions[idx].api, actions[idx].call, actions[idx].argsJ, &returnJ);
if (err) {
- static const char*format="DispatchOneControl Api api=%s verb=%s args=%s";
+ static const char*format="DispatchOneControl(Api) api=%s verb=%s args=%s";
if (afb_req_is_valid(request))afb_req_fail_f(request, "DISPATCH-CTL-MODE:API", format, actions[idx].label, actions[idx].api, actions[idx].call);
else AFB_ERROR (format, actions[idx].api, actions[idx].call, actions[idx].label);
goto OnErrorExit;
@@ -101,9 +101,9 @@ STATIC int DispatchOneControl (DispatchHandleT **controls, const char* controlLa
case CTL_MODE_LUA:
err= LuaCallFunc (&actions[idx], queryJ);
if (err) {
- static const char*format= "DispatchOneControl func=%s args=%s";
- if (afb_req_is_valid(request)) afb_req_fail_f(request, "DISPATCH-CTL-MODE:Lua", format, actions[idx].call, json_object_get_string(actions[idx].argsJ));
- else AFB_ERROR (format, actions[idx].call, json_object_get_string(actions[idx].argsJ));
+ static const char*format= "DispatchOneControl(Lua) label=%s func=%s args=%s";
+ if (afb_req_is_valid(request)) afb_req_fail_f(request, "DISPATCH-CTL-MODE:Lua", format, actions[idx].label, actions[idx].call, json_object_get_string(actions[idx].argsJ));
+ else AFB_ERROR (format, actions[idx].label, actions[idx].call, json_object_get_string(actions[idx].argsJ));
goto OnErrorExit;
}
break;
@@ -111,17 +111,17 @@ STATIC int DispatchOneControl (DispatchHandleT **controls, const char* controlLa
case CTL_MODE_CB:
err= (*actions[idx].actionCB) (&actions[idx], queryJ, configHandle->context);
if (err) {
- static const char*format="DispatchOneControl func=%s args=%s";
- if (afb_req_is_valid(request)) afb_req_fail_f(request, "DISPATCH-CTL-MODE:Cb", format, actions[idx].call, json_object_get_string(actions[idx].argsJ));
- else AFB_ERROR (format, actions[idx].call, json_object_get_string(actions[idx].argsJ));
+ static const char*format="DispatchOneControl(Callback) label%s func=%s args=%s";
+ if (afb_req_is_valid(request)) afb_req_fail_f(request, "DISPATCH-CTL-MODE:Cb", format, actions[idx].label, actions[idx].call, json_object_get_string(actions[idx].argsJ));
+ else AFB_ERROR (format, actions[idx].label, actions[idx].call, json_object_get_string(actions[idx].argsJ));
goto OnErrorExit;
}
break;
default:{
- static const char*format="DispatchOneControl unknown mode control=%s action=%s";
- AFB_ERROR (format, controls[index]->label, actions[idx].label);
- if (afb_req_is_valid(request))afb_req_fail_f(request, "DISPATCH-CTL-MODE:Unknown", format, controls[index]->label, actions[idx].label);
+ static const char*format="DispatchOneControl(unknown) mode control=%s action=%s";
+ AFB_ERROR (format, controls[index]->label);
+ if (afb_req_is_valid(request))afb_req_fail_f(request, "DISPATCH-CTL-MODE:Unknown", format, controls[index]->label);
}
}
}
diff --git a/Controler-afb/ctl-lua.c b/Controler-afb/ctl-lua.c
index 275b9d3..a7cd52f 100644
--- a/Controler-afb/ctl-lua.c
+++ b/Controler-afb/ctl-lua.c
@@ -238,6 +238,9 @@ STATIC void LuaFormatMessage(lua_State* luaState, LuaAfbMessageT action) {
message="-- Empty Message ???";
goto PrintMessage;
}
+
+ //AFB_NOTICE("**** responseJ=%s", json_object_get_string(responseJ));
+
// if we have only on argument just return the value.
if (json_object_get_type(responseJ)!=json_type_array || json_object_array_length(responseJ) <2) {
@@ -256,22 +259,31 @@ STATIC void LuaFormatMessage(lua_State* luaState, LuaAfbMessageT action) {
if (format[idx]=='%' && format[idx] !='\0') {
json_object *slotJ= json_object_array_get_idx(responseJ, arrayIdx);
+ //if (slotJ) AFB_NOTICE("**** idx=%d slotJ=%s", arrayIdx, json_object_get_string(slotJ));
+
switch (format[++idx]) {
case 'd':
if (slotJ) targetIdx += snprintf (&message[targetIdx], LUA_MSG_MAX_LENGTH-targetIdx,"%d", json_object_get_int(slotJ));
else targetIdx += snprintf (&message[targetIdx], LUA_MSG_MAX_LENGTH-targetIdx,"nil");
+ arrayIdx++;
break;
case 'f':
if (slotJ) targetIdx += snprintf (&message[targetIdx], LUA_MSG_MAX_LENGTH-targetIdx,"%f", json_object_get_double(slotJ));
else targetIdx += snprintf (&message[targetIdx], LUA_MSG_MAX_LENGTH-targetIdx,"nil");
+ arrayIdx++;
+ break;
+
+ case'%':
+ targetIdx += snprintf (&message[targetIdx], LUA_MSG_MAX_LENGTH-targetIdx,"%");
break;
case 's':
default:
if (slotJ) targetIdx += snprintf (&message[targetIdx], LUA_MSG_MAX_LENGTH-targetIdx,"%s", json_object_get_string(slotJ));
else targetIdx += snprintf (&message[targetIdx], LUA_MSG_MAX_LENGTH-targetIdx,"nil");
- }
+ arrayIdx++;
+ }
} else {
message[targetIdx++] = format[idx];
@@ -497,7 +509,7 @@ STATIC int LuaAfbPushEvent(lua_State* luaState) {
// Generated some fake event based on watchdog/counter
PUBLIC int LuaCallFunc (DispatchActionT *action, json_object *queryJ) {
- int err, count=0;
+ int err, count;
json_object* argsJ = action->argsJ;
const char* func = action->call;
@@ -506,29 +518,22 @@ PUBLIC int LuaCallFunc (DispatchActionT *action, json_object *queryJ) {
lua_getglobal(luaState, func);
// push argsJ on the stack
+ count=0;
if (!argsJ) {
lua_pushnil(luaState);
count++;
- } else if (json_object_get_type(argsJ) != json_type_array) {
+ } else {
count+= LuaPushArgument (argsJ);
- } else {
- for (int idx=0; idx<json_object_array_length(argsJ); idx++) {
- count += LuaPushArgument (json_object_array_get_idx(argsJ, idx));
- }
- }
+ }
// push queryJ on the stack
if (!queryJ) {
lua_pushnil(luaState);
count++;
- } else if (json_object_get_type(queryJ) != json_type_array) {
+ } else {
count+= LuaPushArgument (queryJ);
- } else {
- for (int idx=0; idx<json_object_array_length(queryJ); idx++) {
- count += LuaPushArgument (json_object_array_get_idx(queryJ, idx));
- }
- }
-
+ }
+
// effectively exec LUA script code
err=lua_pcall(luaState, count, 1, 0);
if (err) {
@@ -571,14 +576,14 @@ STATIC void LuaDoAction (LuaDoActionT action, afb_req request) {
case LUA_DOCALL: {
const char *func;
- json_object *args;
- err= wrap_json_unpack (queryJ, "{s:s, s?o !}", "func", &func,"args", &args);
+ json_object *argsJ=NULL;
+
+ err= wrap_json_unpack (queryJ, "{s:s, s?o !}", "func", &func, "args", &argsJ);
if (err) {
- AFB_ERROR ("LUA-DOCALL-SYNTAX missing func|args args=%s", json_object_get_string(queryJ));
+ AFB_ERROR ("LUA-DOCALL-SYNTAX missing func|args query=%s", json_object_get_string(queryJ));
goto OnErrorExit;
}
-
// load function (should exist in CONTROL_PATH_LUA
lua_getglobal(luaState, func);
@@ -587,14 +592,13 @@ STATIC void LuaDoAction (LuaDoActionT action, afb_req request) {
if (!afbContext) goto OnErrorExit;
// push query on the stack
- if (json_object_get_type(args) != json_type_array) {
- count= LuaPushArgument (args);
- } else {
- for (int idx=0; idx<json_object_array_length(args); idx++) {
- count += LuaPushArgument (json_object_array_get_idx(args, idx));
- if (err) break;
- }
- }
+ if (!argsJ) {
+ lua_pushnil(luaState);
+ count++;
+ } else {
+ AFB_NOTICE("***** args=%s", json_object_get_string(argsJ));
+ count+= LuaPushArgument (argsJ);
+ }
break;
}
@@ -611,7 +615,7 @@ STATIC void LuaDoAction (LuaDoActionT action, afb_req request) {
err= wrap_json_unpack (queryJ, "{s:s, s?o s?o !}", "script", &script,"args", &args, "arg", &args);
if (err) {
- AFB_ERROR ("LUA-DOSCRIPT-SYNTAX:missing script|(args,arg) args=%s", json_object_get_string(queryJ));
+ AFB_ERROR ("LUA-DOSCRIPT-SYNTAX:missing script|(args,arg) query=%s", json_object_get_string(queryJ));
goto OnErrorExit;
}
@@ -668,8 +672,7 @@ STATIC void LuaDoAction (LuaDoActionT action, afb_req request) {
AFB_ERROR ("LUA-DO-EXEC:FAIL query=%s err=%s", json_object_get_string(queryJ), lua_tostring(luaState,-1) );
goto OnErrorExit;
}
-
-
+ return;
OnErrorExit:
afb_req_fail(request,"LUA:ERROR", lua_tostring(luaState,-1));
@@ -681,7 +684,7 @@ PUBLIC void ctlapi_lua_dostring (afb_req request) {
}
PUBLIC void ctlapi_lua_docall (afb_req request) {
- LuaDoAction (LUA_DOSCRIPT, request);
+ LuaDoAction (LUA_DOCALL, request);
}
PUBLIC void ctlapi_lua_doscript (afb_req request) {
@@ -778,6 +781,6 @@ PUBLIC int LuaLibInit () {
return 0;
OnErrorExit:
- return -1;
+ return 1;
}
\ No newline at end of file
diff --git a/conf.d/cmake/config.cmake b/conf.d/cmake/config.cmake
index ff8bf38..73a00f6 100644
--- a/conf.d/cmake/config.cmake
+++ b/conf.d/cmake/config.cmake
@@ -67,6 +67,7 @@ set (PKG_REQUIRED_LIST
# Define CONTROL_CDEV_NAME should match MOST driver values
# ---------------------------------------------------------
+ set(LUA_COMPILER "luac5.3" CACHE STRING "LUA syntaxe check")
add_compile_options(-DCONTROL_ONLOAD_DEFAULT="onload-default")
add_compile_options(-DCONTROL_MAXPATH_LEN=255)
add_compile_options(-DCONTROL_DOSCRIPT_PRE="doscript")
@@ -77,8 +78,8 @@ set (PKG_REQUIRED_LIST
add_compile_options(-DCONTROL_LUA_EVENT="luaevt")
add_compile_options(-DCONTROL_LUA_PATH="${CMAKE_SOURCE_DIR}/conf.d/project/lua.d:${CMAKE_INSTALL_PREFIX}/controler/ctl-lua.d")
- set (CTL_PLUGIN_PRE "ctl-" cache "Prefix for Controler share plugin")
- set (CTL_PLUGIN_EXT ".ctlso" cache "Postfix for Controler share plugin")
+ set (CTL_PLUGIN_PRE "ctl-" CACHE STRING "Prefix for Controler share plugin")
+ set (CTL_PLUGIN_EXT ".ctlso" CACHE STRING "Postfix for Controler share plugin")
add_compile_options(-DCTL_PLUGIN_MAGIC=2468013579)
add_compile_options(-DCONTROL_PLUGIN_PATH="${CMAKE_BINARY_DIR}:${BINDINGS_INSTALL_DIR}/ctlplug:/usr/lib/afb/ctlplug")
diff --git a/conf.d/project/lua.d/CMakeLists.txt b/conf.d/project/lua.d/CMakeLists.txt
index db54742..ecf1e6d 100644
--- a/conf.d/project/lua.d/CMakeLists.txt
+++ b/conf.d/project/lua.d/CMakeLists.txt
@@ -22,7 +22,7 @@
##################################################
PROJECT_TARGET_ADD(ctl-lua.d)
- file(GLOB XML_FILES "*.lua")
+ file(GLOB LUA_FILES "*.lua")
add_custom_target(${TARGET_NAME}
DEPENDS ${PROJECT_PKG_BUILD_DIR}/${TARGET_NAME}
@@ -30,11 +30,11 @@ PROJECT_TARGET_ADD(ctl-lua.d)
# check XML schema before pushing config
add_custom_command(
- DEPENDS ${XML_FILES}
+ DEPENDS ${LUA_FILES}
OUTPUT ${PROJECT_PKG_BUILD_DIR}/${TARGET_NAME}
- # COMMAND xmllint -schema ${XML_SCHEMA} ${XML_FILES} --noout (Fulup we miss this for JSON)
+ COMMAND ${LUA_COMPILER} ${LUA_FILES}
COMMAND mkdir -p ${PROJECT_PKG_BUILD_DIR}/${TARGET_NAME}
COMMAND touch ${PROJECT_PKG_BUILD_DIR}/${TARGET_NAME}
- COMMAND cp -r ${XML_FILES} ${PROJECT_PKG_BUILD_DIR}/${TARGET_NAME}
+ COMMAND cp -r ${LUA_FILES} ${PROJECT_PKG_BUILD_DIR}/${TARGET_NAME}
)
diff --git a/conf.d/project/lua.d/onload-audio-controls.lua b/conf.d/project/lua.d/onload-audio-controls.lua
index eb6a61b..2fbf4f5 100644
--- a/conf.d/project/lua.d/onload-audio-controls.lua
+++ b/conf.d/project/lua.d/onload-audio-controls.lua
@@ -19,10 +19,11 @@
--]]
function Audio_Init_CB (status, result, context)
- print ("***** result=", Dump_Table(result))
- print ("***** context=", Dump_Table(context))
+ print ("--inlua:Audio_Init_CB-- result=", Dump_Table(result))
+ print ("--inlua:Audio_Init_CB-- context=", Dump_Table(context))
- -- AFB:notice ("--LUA:Audio_Init_Hal result=%s context=%s", result, context)
+ -- (Fulup Bug) AFB:debug ("Audio_Init_Hal result=%s context=%s", result, context)
+ AFB:debug ("Audio_Init_Hal result=%s context=%s", {["ret1"]=5678, ["ret2"]="abcd"}, context)
end
@@ -37,12 +38,12 @@ end
function Audio_Set_Navigation(args, query)
- AFB:notice ("--LUA:Audio_Set_Use_Case args=%s query=%s", args, query);
+ AFB:notice ("LUA:Audio_Set_Use_Case args=%s query=%s", args, query);
-- synchronous call to alsacore service
local error,data= AFB:callsync ('alsacore', 'ping', {})
if (error) then
- AFB:error ("--LUA:Audio_Set_Use_Case FAIL args=%s", args)
+ AFB:error ("LUA:Audio_Set_Use_Case FAIL args=%s", args)
else
AFB:notice ("--LUA:Audio_Set_Use_Case DONE args=%s response=%s", args, data["response"])
end
diff --git a/conf.d/project/lua.d/onload-audio-oncall.lua b/conf.d/project/lua.d/onload-audio-oncall.lua
index 22cba85..13cda4b 100644
--- a/conf.d/project/lua.d/onload-audio-oncall.lua
+++ b/conf.d/project/lua.d/onload-audio-oncall.lua
@@ -21,28 +21,40 @@
-- global counter to keep track of calls
count=0
--- Adjust Volume function of vehicle speed
-function Oncall_Helloworld (request, args)
- count=count+1
+-- Display receive arguments and echo them to caller
+function Simple_Echo_Args (request, args)
+ count=count+1
+ AFB:notice("LUA OnCall Echo Args count=%d args=%s", count, args)
- AFB:notice("LUA OnCall Helloworld count=%d args=%s", count, args);
- AFB:success (request, {"count"=count})
+ print ("--inlua-- args=", Dump_Table(args))
+
+ local response={
+ ["count"]=count,
+ ["args"]=args,
+ }
+
+ -- fulup Embdeded table ToeDone AFB:success (request, response)
+ AFB:success (request, {["func"]="Simple_Echo_Args", ["ret1"]=5678, ["ret2"]="abcd"})
end
-function Test_Async_CB (request, result, context)
+function Test_Async_CB (request, result, context)
+ response={
+ ["result"]=result,
+ ["context"]=context,
+ }
AFB:notice ("Test_Async_CB result=%s context=%s", result, context)
- AFB:success (request, {"response"=result, "context"=context})
+ AFB:success (request, response)
end
function Test_Call_Async (request, args)
local context={
- "value1"="abcd",
- "value2"=1234
+ ["value1"]="abcd",
+ ["value2"]=1234
}
- AFB:notice ("Test_Call_Async args=%s", args)
- AFB:service("alsacore","ping", args, "Test_Async_CB", context)
+ AFB:notice ("Test_Call_Async args=%s cb=Test_Async_CB", args)
+ AFB:service("alsacore","ping", "Test_Async_CB", context)
end
function Test_Call_Sync (request, args)
@@ -60,7 +72,8 @@ end
function Test_Event_Make (request, args)
AFB:notice ("Test_Event_Make args=%s", args)
- local err eventFD AFB:event (args["evtname"])
+
+ local err evt_handle= AFB:event (args["evtname"])
if (err) then
AFB:fail ("AFB:Test_Event_Make fail event=%s", args["evtname"]);
else
@@ -68,11 +81,11 @@ function Test_Event_Make (request, args)
end
local evtData = {
- val1="My 1st private Event",
- val2=5678
+ ["val1"]="My 1st private Event",
+ ["val2"]=5678
}
- AFB:notify (eventFD, evtData)
+ AFB:notify (evt_handle, evtData)
end
-- send an event on default binder event
diff --git a/htdocs/audio-control.html b/htdocs/audio-control.html
index 2025581..fdd3daa 100644
--- a/htdocs/audio-control.html
+++ b/htdocs/audio-control.html
@@ -29,9 +29,9 @@
<li><button onclick="callbinder('control','multimedia' ,{'xxx': 'multi'});">Select Mutimedia</button></li>
<li><button onclick="callbinder('control','emergency' ,{'yyy': 'emerg'});">Select Emergency</button></li>
<br>
- <li><button onclick="callbinder('control','lua_dostring','print(\'Bonjours\'); return true, 4567');">LUA string</button></li>
- <li><button onclick="callbinder('control','lua_docall' , {'func':'Adjust_Volume_Speed', 'args':[20]});">LUA function</button></li>
- <li><button onclick="callbinder('control','lua_doscript', {'script':'helloworld-lua-script.lua', args:[{'arg1':'abcd'}, {'next':7890}, {'last':'xyz'}]});">LUA script</button></li>
+ <li><button onclick="callbinder('control','lua_dostring','print(\'Bonjours\'); return true, 1234');">LUA string</button></li>
+ <li><button onclick="callbinder('control','lua_docall' , {'func':'Simple_Echo_Args', 'args':{speed:20}});">LUA function</button></li>
+ <li><button onclick="callbinder('control','lua_doscript', {'script':'helloworld-lua-script.lua', args:{'arg1':'abcd', 'next':7890, 'last':[1,2,3,4]});">LUA script</button></li>
</ol>
diff --git a/nbproject/configurations.xml b/nbproject/configurations.xml
index 6ac0844..62a0f3d 100644
--- a/nbproject/configurations.xml
+++ b/nbproject/configurations.xml
@@ -1231,5 +1231,436 @@
</cTool>
</folder>
</conf>
+ <conf name="LocalHostNoTrace" type="0">
+ <toolsSet>
+ <compilerSet>GNU|GNU</compilerSet>
+ <dependencyChecking>false</dependencyChecking>
+ <rebuildPropChanged>false</rebuildPropChanged>
+ </toolsSet>
+ <flagsDictionary>
+ <element flagsID="0" commonFlags="-g -fPIC -fPIC"/>
+ <element flagsID="1" commonFlags="-g -fPIC -fPIC -g"/>
+ <element flagsID="2" commonFlags="-mtune=generic -march=x86-64 -g -fPIC"/>
+ <element flagsID="3" commonFlags="-mtune=generic -march=x86-64 -g -g -fPIC"/>
+ <element flagsID="4"
+ commonFlags="-mtune=generic -march=x86-64 -g -ggdb -g -ggdb -fPIC"/>
+ </flagsDictionary>
+ <codeAssistance>
+ <includeAdditional>true</includeAdditional>
+ </codeAssistance>
+ <makefileType>
+ <makeTool>
+ <buildCommandWorkingDir>build</buildCommandWorkingDir>
+ <buildCommand>${MAKE} -f Makefile install</buildCommand>
+ <cleanCommand>${MAKE} -f Makefile clean</cleanCommand>
+ <executablePath>build/CMakeFiles/feature_tests.bin</executablePath>
+ <cTool flags="0">
+ <incDir>
+ <pElem>../../../opt/include</pElem>
+ <pElem>../../../opt/include/alsa</pElem>
+ <pElem>/usr/include/p11-kit-1</pElem>
+ <pElem>/usr/include/json-c</pElem>
+ <pElem>/usr/include/lua5.3</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_CONFIG_PATH="/home/fulup/Workspace/AGL-AppFW/audio-bindings-dev/conf.d/project/config.d:/usr/local/controler/config.d"</Elem>
+ <Elem>CONTROL_CONFIG_POST="control"</Elem>
+ <Elem>CONTROL_CONFIG_PRE="onload"</Elem>
+ <Elem>CONTROL_LUA_EVENT="luaevt"</Elem>
+ <Elem>CONTROL_LUA_PATH="/home/fulup/Workspace/AGL-AppFW/audio-bindings-dev/conf.d/project/lua.d:/usr/local/controler/ctl-lua.d"</Elem>
+ <Elem>CONTROL_MAXPATH_LEN=255</Elem>
+ <Elem>CONTROL_ONLOAD_DEFAULT="onload-default"</Elem>
+ <Elem>CONTROL_PLUGIN_PATH="/home/fulup/Workspace/AGL-AppFW/audio-bindings-dev/build:/home/fulup/opt/audio-bindings/ctlplug:/usr/lib/afb/ctlplug"</Elem>
+ <Elem>CTL_PLUGIN_MAGIC=2468013579</Elem>
+ <Elem>MAX_LINEAR_DB_SCALE=24</Elem>
+ <Elem>MAX_SND_CARD=16</Elem>
+ <Elem>TLV_BYTE_SIZE=256</Elem>
+ </preprocessorList>
+ </cTool>
+ </makeTool>
+ <preBuild>
+ <preBuildCommandWorkingDir>build</preBuildCommandWorkingDir>
+ <preBuildCommand>cmake ..</preBuildCommand>
+ <preBuildFirst>true</preBuildFirst>
+ </preBuild>
+ </makefileType>
+ <item path="Alsa-Plugin/Alsa-Policy-Hook/PolicyHookCb.c"
+ ex="false"
+ tool="0"
+ flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Alsa-afb/Alsa-AddCtl.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Alsa-afb/Alsa-ApiHat.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Alsa-afb/Alsa-RegEvt.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Alsa-afb/Alsa-SetGet.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Alsa-afb/Alsa-Ucm.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Audio-Common/audio-common.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Audio-Common/wrap-json.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="Common/AudioCommonLib.c" ex="false" tool="0" flavor2="2">
+ <cTool flags="1">
+ </cTool>
+ </item>
+ <item path="Controler-afb/ctl-binding.c" ex="false" tool="0" flavor2="0">
+ <cTool flags="0">
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </item>
+ <item path="Controler-afb/ctl-dispatch.c" ex="false" tool="0" flavor2="2">
+ <cTool flags="0">
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </item>
+ <item path="Controler-afb/ctl-events.c" ex="false" tool="0" flavor2="2">
+ <cTool flags="0">
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </item>
+ <item path="Controler-afb/ctl-lua.c" ex="false" tool="0" flavor2="2">
+ <cTool flags="0">
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </item>
+ <item path="Controler-afb/ctl-misc.c" ex="false" tool="0" flavor2="2">
+ <cTool flags="0">
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </item>
+ <item path="Controler-afb/ctl-plugin-sample.c" ex="false" tool="0" flavor2="2">
+ <cTool flags="0">
+ <incDir>
+ <pElem>build/Controler-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>audio_plugin_sample_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </item>
+ <item path="HAL-afb/HAL-interface/hal-interface.c"
+ ex="false"
+ tool="0"
+ flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="HAL-afb/HAL-interface/hal-volramp.c"
+ ex="false"
+ tool="0"
+ flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="HAL-afb/HAL-interface/hal-volume.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="HAL-afb/HAL-plugin/HalPlugPcm.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="2">
+ </cTool>
+ </item>
+ <item path="HAL-afb/HDA-intel/IntelHdaHAL.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="HAL-afb/Jabra-Solemate/JabraUsbHAL.c"
+ ex="false"
+ tool="0"
+ flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="HAL-afb/Scarlett-Focusrite/ScarlettUsbHAL.c"
+ ex="false"
+ tool="0"
+ flavor2="3">
+ <cTool flags="0">
+ </cTool>
+ </item>
+ <item path="HAL-afb/Unicens-USB/UnicensHAL.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="4">
+ <incDir>
+ <pElem>Shared-Interface</pElem>
+ <pElem>HAL-afb/HAL-interface</pElem>
+ <pElem>build/HAL-afb/Unicens-USB</pElem>
+ </incDir>
+ </cTool>
+ </item>
+ <item path="HAL-afb/Unicens-USB/UnicensVol.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="4">
+ <incDir>
+ <pElem>HAL-afb/HAL-interface</pElem>
+ <pElem>build/HAL-afb/Unicens-USB</pElem>
+ </incDir>
+ </cTool>
+ </item>
+ <item path="HighLevel-afb/HighLevelApiConf.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="3">
+ </cTool>
+ </item>
+ <item path="HighLevel-afb/HighLevelBinding.c" ex="false" tool="0" flavor2="3">
+ <cTool flags="3">
+ </cTool>
+ </item>
+ <item path="MostVolume/DeviceContainer.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/DeviceValue.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/Mediator.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/external/ConnectionInfo.cpp"
+ ex="false"
+ tool="1"
+ flavor2="4">
+ </item>
+ <item path="MostVolume/external/Console.c" ex="false" tool="0" flavor2="2">
+ </item>
+ <item path="MostVolume/external/MacAddr.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/external/MostIpc.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/external/MostMsg.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/external/MostMsgTx.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/external/MsgAddr.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/external/MsgFilter.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/external/Shadow_NetworkMaster.cpp"
+ ex="false"
+ tool="1"
+ flavor2="4">
+ </item>
+ <item path="MostVolume/external/Thread.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <item path="MostVolume/libmostvolume.cpp" ex="false" tool="1" flavor2="4">
+ </item>
+ <folder path="0/Alsa-Plugin">
+ <cTool>
+ <incDir>
+ <pElem>build/Alsa-Plugin/Alsa-Policy-Hook</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ <Elem>PIC</Elem>
+ <Elem>policy_hook_cb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/Alsa-afb">
+ <cTool>
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Alsa-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ <Elem>alsa_lowlevel_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/Audio-Common">
+ <cTool>
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Audio-Common</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/Common">
+ <cTool>
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ <pElem>build/HAL-afb/HAL-plugin</pElem>
+ <pElem>/usr/include/alsa</pElem>
+ <pElem>build/Common</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_CDEV_RX="/dev/inic-usb-crx"</Elem>
+ <Elem>CONTROL_CDEV_TX="/dev/inic-usb-ctx"</Elem>
+ <Elem>audio_plugin_sample_EXPORTS</Elem>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/Controler-afb">
+ <cTool>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/HAL-afb/HAL-interface">
+ <cTool>
+ <incDir>
+ <pElem>HAL-afb/HAL-interface</pElem>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/HAL-afb/HAL-interface</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/HAL-afb/HAL-plugin">
+ <cTool>
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ <pElem>build/HAL-afb/HAL-plugin</pElem>
+ <pElem>../../../opt/include/afb</pElem>
+ <pElem>HAL-afb/HAL-plugin</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_CDEV_RX="/dev/inic-usb-crx"</Elem>
+ <Elem>CONTROL_CDEV_TX="/dev/inic-usb-ctx"</Elem>
+ <Elem>audio_plugin_sample_EXPORTS</Elem>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/HAL-afb/HDA-intel">
+ <cTool>
+ <incDir>
+ <pElem>HAL-afb/HAL-interface</pElem>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/HAL-afb/HDA-intel</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ <Elem>hal_intel_hda_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/HAL-afb/Jabra-Solemate">
+ <cTool>
+ <incDir>
+ <pElem>HAL-afb/HAL-interface</pElem>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/HAL-afb/Jabra-Solemate</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ <Elem>hal_jabra_usb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/HAL-afb/Scarlett-Focusrite">
+ <cTool>
+ <incDir>
+ <pElem>HAL-afb/HAL-interface</pElem>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/HAL-afb/Scarlett-Focusrite</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_DOSCRIPT_PRE="doscript"</Elem>
+ <Elem>hal_scalett_usb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/HAL-afb/Unicens-USB">
+ <cTool>
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ <pElem>build/HAL-afb/HAL-plugin</pElem>
+ <pElem>../../../opt/include/afb</pElem>
+ <pElem>HAL-afb/Unicens-USB</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>CONTROL_CDEV_RX="/dev/inic-usb-crx"</Elem>
+ <Elem>CONTROL_CDEV_TX="/dev/inic-usb-ctx"</Elem>
+ <Elem>audio_plugin_sample_EXPORTS</Elem>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/HighLevel-afb">
+ <cTool>
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ <pElem>build/HAL-afb/HAL-plugin</pElem>
+ <pElem>../../../opt/include/afb</pElem>
+ <pElem>HighLevel-afb</pElem>
+ <pElem>Shared-Interface</pElem>
+ <pElem>build/HighLevel-afb</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>audio_plugin_sample_EXPORTS</Elem>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ <folder path="0/MostVolume">
+ <cTool>
+ <incDir>
+ <pElem>Audio-Common</pElem>
+ <pElem>build/Controler-afb</pElem>
+ <pElem>build/HAL-afb/HAL-plugin</pElem>
+ </incDir>
+ <preprocessorList>
+ <Elem>audio_plugin_sample_EXPORTS</Elem>
+ <Elem>control_afb_EXPORTS</Elem>
+ </preprocessorList>
+ </cTool>
+ </folder>
+ </conf>
</confs>
</configurationDescriptor>
diff --git a/nbproject/project.xml b/nbproject/project.xml
index 988f845..5f13ad6 100644
--- a/nbproject/project.xml
+++ b/nbproject/project.xml
@@ -25,6 +25,10 @@
<name>Aplay_Multimedia</name>
<type>0</type>
</confElem>
+ <confElem>
+ <name>LocalHostNoTrace</name>
+ <type>0</type>
+ </confElem>
</confList>
<formatting>
<project-formatting-style>false</project-formatting-style>