summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Aillet <jonathan.aillet@iot.bzh>2019-04-18 16:30:56 +0200
committerJonathan Aillet <jonathan.aillet@iot.bzh>2019-05-24 16:33:30 +0200
commit3d5de3986cc98fea301ffcc88f96a4b6ce7653e9 (patch)
treeaef80fd2b96e73b6a88bbe8620c3d9395ccab21f
parent06054f68c5d5ca216f2756e7de2787a7ea2b9488 (diff)
Improve static verbs loading
Improve static verbs loading by using 'afb_api_set_verbs_v3' application_framework function. BUG-AGL: SPEC-2329 Change-Id: I3fe5397316d4a582635da637ab6a207b606c496e Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
-rw-r--r--lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.c50
-rw-r--r--lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.h28
-rw-r--r--lib/4a-hal-utilities/CMakeLists.txt3
-rw-r--r--src/4a-hal-manager/4a-hal-manager.c5
-rw-r--r--src/4a-internals-hal/4a-internals-hal-api-loader.c5
-rw-r--r--src/4a-internals-hal/4a-internals-hal-mixer-link.c1
6 files changed, 5 insertions, 87 deletions
diff --git a/lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.c b/lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.c
deleted file mode 100644
index 16c28c4..0000000
--- a/lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (C) 2018 "IoT.bzh"
- * Author Jonathan Aillet <jonathan.aillet@iot.bzh>
- *
- * 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.
- */
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <string.h>
-
-#include <afb/afb-binding.h>
-
-#include "4a-hal-utilities-verbs-loader.h"
-
-/*******************************************************************************
- * Dynamic API common functions *
- ******************************************************************************/
-
-int HalUtlLoadVerbs(afb_api_t apiHandle, afb_verb_t *verbs)
-{
- int idx, errCount = 0;
-
- if(! apiHandle || ! verbs)
- return -1;
-
- for (idx = 0; verbs[idx].verb; idx++) {
- errCount+= afb_api_add_verb(apiHandle,
- verbs[idx].verb,
- NULL,
- verbs[idx].callback,
- (void *) &verbs[idx],
- verbs[idx].auth,
- 0,
- 0);
- }
-
- return errCount;
-} \ No newline at end of file
diff --git a/lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.h b/lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.h
deleted file mode 100644
index 9084595..0000000
--- a/lib/4a-hal-utilities/4a-hal-utilities-verbs-loader.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (C) 2018 "IoT.bzh"
- * Author Jonathan Aillet <jonathan.aillet@iot.bzh>
- *
- * 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 _HAL_UTILITIES_VERBS_LOADER_INCLUDE_
-#define _HAL_UTILITIES_VERBS_LOADER_INCLUDE_
-
-#include <stdio.h>
-
-#include <afb/afb-binding.h>
-
-// Verb that allows to add verb to a dynamic api
-int HalUtlLoadVerbs(afb_api_t apiHandle, afb_verb_t *verbs);
-
-#endif /* _HAL_UTILITIES_VERBS_LOADER_INCLUDE_ */ \ No newline at end of file
diff --git a/lib/4a-hal-utilities/CMakeLists.txt b/lib/4a-hal-utilities/CMakeLists.txt
index d90dd11..8eb2c62 100644
--- a/lib/4a-hal-utilities/CMakeLists.txt
+++ b/lib/4a-hal-utilities/CMakeLists.txt
@@ -24,8 +24,7 @@ PROJECT_TARGET_ADD(4a-hal-utilities)
ADD_LIBRARY(${TARGET_NAME} STATIC
4a-hal-utilities-alsa-data.c
4a-hal-utilities-data.c
- 4a-hal-utilities-hal-streams-handler.c
- 4a-hal-utilities-verbs-loader.c)
+ 4a-hal-utilities-hal-streams-handler.c)
# Define target includes for this target client
TARGET_INCLUDE_DIRECTORIES(${TARGET_NAME} PUBLIC
diff --git a/src/4a-hal-manager/4a-hal-manager.c b/src/4a-hal-manager/4a-hal-manager.c
index 20103cb..567e9eb 100644
--- a/src/4a-hal-manager/4a-hal-manager.c
+++ b/src/4a-hal-manager/4a-hal-manager.c
@@ -23,7 +23,6 @@
#include <afb/afb-binding.h>
#include "4a-hal-utilities-data.h"
-#include "4a-hal-utilities-verbs-loader.h"
#include "../4a-internals-hal/4a-internals-hal-api-loader.h"
@@ -111,8 +110,8 @@ static int HalMgrLoadApi(void *cbdata, afb_api_t apiHandle)
// Save closure as api's data context
afb_api_set_userdata(apiHandle, halMgrData);
- // Add static controls verbs
- if(HalUtlLoadVerbs(apiHandle, HalManagerApiStaticVerbs)) {
+ // Add static 'hal-manager' verbs
+ if(afb_api_set_verbs_v3(apiHandle, HalManagerApiStaticVerbs)) {
AFB_API_ERROR(apiHandle, "Load section : fail to register static verbs");
return -2;
}
diff --git a/src/4a-internals-hal/4a-internals-hal-api-loader.c b/src/4a-internals-hal/4a-internals-hal-api-loader.c
index 75d0e6f..93628eb 100644
--- a/src/4a-internals-hal/4a-internals-hal-api-loader.c
+++ b/src/4a-internals-hal/4a-internals-hal-api-loader.c
@@ -27,7 +27,6 @@
#include <ctl-config.h>
-#include "4a-hal-utilities-verbs-loader.h"
#include "4a-internals-hal-api-loader.h"
#include "4a-internals-hal-alsacore-link.h"
#include "4a-internals-hal-cb.h"
@@ -133,8 +132,8 @@ static int InternalHalLoadOneApi(void *cbdata, afb_api_t apiHandle)
// Save closure as api's data context
afb_api_set_userdata(apiHandle, ctrlConfig);
- // Add static controls verbs
- if(HalUtlLoadVerbs(apiHandle, InternalHalApiStaticVerbs)) {
+ // Add static internal hal verbs
+ if(afb_api_set_verbs_v3(apiHandle, InternalHalApiStaticVerbs)) {
AFB_API_ERROR(apiHandle, "Load Section : fail to register static V2 verbs");
return -2;
}
diff --git a/src/4a-internals-hal/4a-internals-hal-mixer-link.c b/src/4a-internals-hal/4a-internals-hal-mixer-link.c
index 4e0398e..3183081 100644
--- a/src/4a-internals-hal/4a-internals-hal-mixer-link.c
+++ b/src/4a-internals-hal/4a-internals-hal-mixer-link.c
@@ -27,7 +27,6 @@
#include "4a-hal-utilities-data.h"
#include "4a-hal-utilities-hal-streams-handler.h"
-#include "4a-hal-utilities-verbs-loader.h"
#include "../4a-hal-manager/4a-hal-manager.h"