summaryrefslogtreecommitdiffstats
path: root/src/4a-internals-hal/4a-internals-hal-cb.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/4a-internals-hal/4a-internals-hal-cb.c')
-rw-r--r--src/4a-internals-hal/4a-internals-hal-cb.c95
1 files changed, 56 insertions, 39 deletions
diff --git a/src/4a-internals-hal/4a-internals-hal-cb.c b/src/4a-internals-hal/4a-internals-hal-cb.c
index 0102d8d..c4934a4 100644
--- a/src/4a-internals-hal/4a-internals-hal-cb.c
+++ b/src/4a-internals-hal/4a-internals-hal-cb.c
@@ -49,7 +49,8 @@ void InternalHalDispatchApiEvent(afb_api_t apiHandle, const char *evtLabel, json
AFB_API_DEBUG(apiHandle, "Evtname=%s [msg=%s]", evtLabel, json_object_get_string(eventJ));
- if(! (ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle))) {
+ ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle);
+ if(! ctrlConfig) {
AFB_API_ERROR(apiHandle, "Can't get current internal hal controller config");
return;
}
@@ -74,7 +75,7 @@ void InternalHalDispatchApiEvent(afb_api_t apiHandle, const char *evtLabel, json
currentHalAlsaCtlsT = currentHalData->internalHalData->alsaMapT;
- // Search for corresponding numid in halCtls, if found, launch callback (if available)
+ // Search for corresponding numid in ALSA controls list, if found, launch callback (if available)
for(idx = 0; idx < currentHalAlsaCtlsT->ctlsCount; idx++) {
if(currentHalAlsaCtlsT->ctls[idx].ctl.numid == numid) {
if(currentHalAlsaCtlsT->ctls[idx].action) {
@@ -90,7 +91,7 @@ void InternalHalDispatchApiEvent(afb_api_t apiHandle, const char *evtLabel, json
numid);
}
- if((! currentHalAlsaCtlsT->ctls[idx].alsaControlEvent) ||
+ if(! currentHalAlsaCtlsT->ctls[idx].alsaControlEvent ||
InternalHalConvertJsonValues(apiHandle,
&currentHalAlsaCtlsT->ctls[idx].ctl.alsaCtlProperties,
valuesJ,
@@ -138,7 +139,8 @@ int InternalHalHalMixerConfig(afb_api_t apiHandle, CtlSectionT *section, json_ob
if(! apiHandle || ! section)
return -1;
- if(! (ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle)))
+ ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle);
+ if(! ctrlConfig)
return -2;
currentHalData = (struct HalData *) getExternalData(ctrlConfig);
@@ -184,7 +186,7 @@ int InternalHalProcessOneHalMapObject(afb_api_t apiHandle, struct InternalHalAls
"info", &alsaMap->info,
"alsa", &alsaJ,
"action", &action)) {
- AFB_API_ERROR(apiHandle, "Parsing error, map should only contains [label]|[uid]|[tag]|[info]|[alsa]|[action] in:\n-- %s", json_object_get_string(AlsaMapJ));
+ AFB_API_ERROR(apiHandle, "Parsing error, map should only contains [label]|[uid]|[tag]|[info]|[alsa]|[action] in : '%s'", json_object_get_string(AlsaMapJ));
return -1;
}
@@ -193,7 +195,7 @@ int InternalHalProcessOneHalMapObject(afb_api_t apiHandle, struct InternalHalAls
"numid", &alsaMap->ctl.numid,
"value", &alsaMap->ctl.value,
"create", &createAlsaCtlJ)) {
- AFB_API_ERROR(apiHandle, "Parsing error, alsa json should only contains [name]|[numid]||[value]|[create] in:\n-- %s", json_object_get_string(alsaJ));
+ AFB_API_ERROR(apiHandle, "Parsing error, alsa json should only contains [name]|[numid]||[value]|[create] in : '%s'", json_object_get_string(alsaJ));
return -2;
}
@@ -207,14 +209,17 @@ int InternalHalProcessOneHalMapObject(afb_api_t apiHandle, struct InternalHalAls
"minval", &alsaMap->ctl.alsaCtlCreation->minval,
"maxval", &alsaMap->ctl.alsaCtlCreation->maxval,
"step", &alsaMap->ctl.alsaCtlCreation->step)) {
- AFB_API_ERROR(apiHandle, "Parsing error, alsa creation json should only contains [type]|[count]|[minval]|[maxval]|[step] in:\n-- %s", json_object_get_string(alsaJ));
+ AFB_API_ERROR(apiHandle, "Parsing error, alsa creation json should only contains [type]|[count]|[minval]|[maxval]|[step] in : '%s'", json_object_get_string(alsaJ));
return -3;
}
if(typename) {
alsaMap->ctl.alsaCtlCreation->type = InternalHalMapsAlsaTypeToEnum(typename);
if(alsaMap->ctl.alsaCtlCreation->type == SND_CTL_ELEM_TYPE_NONE) {
- AFB_API_ERROR(apiHandle, "Couldn't get alsa type from string %s in:\n-- %s", typename, json_object_get_string(alsaJ));
+ AFB_API_ERROR(apiHandle,
+ "Couldn't get alsa type from string %s in : '%s'",
+ typename,
+ json_object_get_string(alsaJ));
return -4;
}
}
@@ -224,7 +229,7 @@ int InternalHalProcessOneHalMapObject(afb_api_t apiHandle, struct InternalHalAls
}
else if(alsaMap->ctl.name && alsaMap->ctl.numid > 0) {
AFB_API_ERROR(apiHandle,
- "Can't have both a control name (%s) and a control uid (%i) in alsa object:\n-- %s",
+ "Can't have both a control name (%s) and a control uid (%i) in alsa object : '%s'",
alsaMap->ctl.name,
alsaMap->ctl.numid,
json_object_get_string(alsaJ));
@@ -232,7 +237,7 @@ int InternalHalProcessOneHalMapObject(afb_api_t apiHandle, struct InternalHalAls
}
else if(! alsaMap->ctl.name && alsaMap->ctl.numid <= 0) {
AFB_API_ERROR(apiHandle,
- "Need at least a control name or a control uid in alsa object:\n-- %s",
+ "Need at least a control name or a control uid in alsa object : '%s'",
json_object_get_string(alsaJ));
return -6;
}
@@ -249,9 +254,10 @@ int InternalHalHandleOneHalMapObject(afb_api_t apiHandle, char *cardId, struct I
json_object *valueJ, *convertedValueJ = NULL;
- if(! (alsaMap->alsaControlEvent = afb_api_make_event(apiHandle, alsaMap->uid))) {
+ alsaMap->alsaControlEvent = afb_api_make_event(apiHandle, alsaMap->uid);
+ if(! alsaMap->alsaControlEvent) {
AFB_API_ERROR(apiHandle,
- "Didn't succeed to create event for current alsa control to load action using alsa object:\n-- %s",
+ "Didn't succeed to create event for current alsa control to load action using alsa object : '%s'",
json_object_get_string(alsaMap->actionJ));
return -1;
}
@@ -298,7 +304,7 @@ int InternalHalHandleOneHalMapObject(afb_api_t apiHandle, char *cardId, struct I
alsaMap->action = calloc(1, sizeof(CtlActionT));
if(ActionLoadOne(apiHandle, alsaMap->action, alsaMap->actionJ, 0)) {
AFB_API_ERROR(apiHandle,
- "Didn't succeed to load action using alsa object:\n-- %s",
+ "Didn't succeed to load action using alsa object : '%s'",
json_object_get_string(alsaMap->actionJ));
return -6;
}
@@ -306,7 +312,7 @@ int InternalHalHandleOneHalMapObject(afb_api_t apiHandle, char *cardId, struct I
if(afb_api_add_verb(apiHandle, alsaMap->uid, alsaMap->info, InternalHalActionOnAlsaCtl, (void *) alsaMap, NULL, 0, 0)) {
AFB_API_ERROR(apiHandle,
- "Didn't succeed to create verb for current alsa control to load action using alsa object:\n-- %s",
+ "Didn't succeed to create verb for current alsa control to load action using alsa object : '%s'",
json_object_get_string(alsaMap->actionJ));
return -7;
}
@@ -335,7 +341,7 @@ int InternalHalProcessAllHalMap(afb_api_t apiHandle, json_object *AlsaMapJ, stru
default:
currentInternalHalAlsaMapT->ctlsCount = 0;
currentInternalHalAlsaMapT->ctls = NULL;
- AFB_API_WARNING(apiHandle, "Couldn't get content of 'halmap' section in : '%s'", json_object_get_string(AlsaMapJ));
+ AFB_API_ERROR(apiHandle, "Content of 'halmap' section is not valid ('%s')", json_object_get_string(AlsaMapJ));
return -1;
}
@@ -370,7 +376,8 @@ int InternalHalHalMapConfig(afb_api_t apiHandle, CtlSectionT *section, json_obje
CtlConfigT *ctrlConfig;
struct HalData *currentHalData;
- if(! (ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle)))
+ ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle);
+ if(! ctrlConfig)
return -1;
currentHalData = (struct HalData *) getExternalData(ctrlConfig);
@@ -391,7 +398,7 @@ int InternalHalHalMapConfig(afb_api_t apiHandle, CtlSectionT *section, json_obje
}
else if(currentHalData->sndCardId < 0) {
AFB_API_ERROR(apiHandle, "Hal alsa card id is not valid, 'halmap' section data can't be handle");
- return -6;
+ return -4;
}
else if(! currentHalData->internalHalData->alsaMapT) {
AFB_API_WARNING(apiHandle, "'halmap' section data is empty");
@@ -403,7 +410,7 @@ int InternalHalHalMapConfig(afb_api_t apiHandle, CtlSectionT *section, json_obje
}
else if(InternalHalHandleAllHalMap(apiHandle, currentHalData->sndCardId, currentHalData->internalHalData->alsaMapT)) {
AFB_API_ERROR(apiHandle, "Failed to handle 'halmap' section");
- return -9;
+ return -5;
}
return 0;
@@ -428,12 +435,11 @@ json_object *InternalHalGetJsonArrayForMixerDataTable(afb_api_t apiHandle,
mixerDataArrayJ = json_object_new_array();
if(! mixerDataArrayJ) {
- AFB_API_ERROR(apiHandle, "Can't generate json mixer data array");
+ AFB_API_ERROR(apiHandle, "Didn't succeed to allocate requested mixer data json array");
return NULL;
}
currentMixerData = *mixerDataList;
-
while(currentMixerData) {
switch(dataType) {
case MIXER_DATA_STREAMS:
@@ -480,8 +486,9 @@ json_object *InternalHalGetJsonArrayForControls(afb_api_t apiHandle, struct Inte
return NULL;
}
- if(! (alsaMapDataArray = json_object_new_array())) {
- AFB_API_ERROR(apiHandle, "Can't generate json mixer data array");
+ alsaMapDataArray = json_object_new_array();
+ if(! alsaMapDataArray) {
+ AFB_API_ERROR(apiHandle, "Didn't succeed to allocate ALSA controls data json array");
return NULL;
}
@@ -506,14 +513,22 @@ void InternalHalInfo(afb_req_t request)
struct HalData *currentHalData;
- json_object *requestJson, *toReturnJ = NULL, *requestAnswer, *streamsArray, *playbacksArray, *capturesArray, *controlsArray;
+ json_object *requestJson,
+ *toReturnJ = NULL,
+ *requestAnswer,
+ *streamsArray,
+ *playbacksArray,
+ *capturesArray,
+ *controlsArray;
- if(! (apiHandle = afb_req_get_api(request))) {
+ apiHandle = afb_req_get_api(request);
+ if(! apiHandle) {
afb_req_fail(request, "api_handle", "Can't get current internal hal api handle");
return;
}
- if(! (ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle))) {
+ ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle);
+ if(! ctrlConfig) {
afb_req_fail(request, "hal_controller_config", "Can't get current internal hal controller config");
return;
}
@@ -524,7 +539,8 @@ void InternalHalInfo(afb_req_t request)
return;
}
- if(! (requestJson = afb_req_json(request))) {
+ requestJson = afb_req_json(request);
+ if(! requestJson) {
AFB_REQ_NOTICE(request, "Can't get request json");
}
else if(json_object_is_type(requestJson, json_type_object) && json_object_get_object(requestJson)->count > 0) {
@@ -604,12 +620,14 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
json_object *requestJson, *requestedSubscriptionsJ, *requestedSubscriptionJ = NULL;
json_type requestJsonType;
- if(! (apiHandle = afb_req_get_api(request))) {
+ apiHandle = afb_req_get_api(request);
+ if(! apiHandle) {
afb_req_fail(request, "api_handle", "Can't get current internal hal api handle");
return;
}
- if(! (ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle))) {
+ ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle);
+ if(! ctrlConfig) {
afb_req_fail(request, "hal_controller_config", "Can't get current internal hal controller config");
return;
}
@@ -627,7 +645,8 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
InternalHalAlsaMapT = currentHalData->internalHalData->alsaMapT;
- if(! (requestJson = afb_req_json(request))) {
+ requestJson = afb_req_json(request);
+ if(! requestJson) {
afb_req_fail(request, "request_json", "Can't get request json");
return;
}
@@ -669,17 +688,17 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
if(currentHalData->internalHalData->streamUpdates &&
subscribeUnsubscribeType == SUBSCRIPTION &&
afb_req_subscribe(request, currentHalData->internalHalData->streamUpdates)) {
- afb_req_fail_f(request,
- "request_stream_list_updates_event",
- "Error while trying to subscribe to stream list updates event");
+ afb_req_fail(request,
+ "request_stream_list_updates_event",
+ "Error while trying to subscribe to stream list updates event");
return;
}
else if(currentHalData->internalHalData->streamUpdates &&
subscribeUnsubscribeType == UNSUBSCRIPTION &&
afb_req_unsubscribe(request, currentHalData->internalHalData->streamUpdates)) {
- afb_req_fail_f(request,
- "request_stream_list_updates_event",
- "Error while trying to unsubscribe to stream list updates event");
+ afb_req_fail(request,
+ "request_stream_list_updates_event",
+ "Error while trying to unsubscribe to stream list updates event");
return;
}
@@ -689,7 +708,7 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
currentStreamData = currentHalData->internalHalData->streamsData;
while(currentStreamData &&
- (! subscriptionFound)) {
+ ! subscriptionFound) {
if(! strcasecmp(currentSubscriptionString, currentStreamData->verb)) {
if(currentStreamData->event &&
subscribeUnsubscribeType == SUBSCRIPTION &&
@@ -712,7 +731,6 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
subscriptionFound = 1;
subscriptionDoneNb++;
-
break;
}
@@ -721,7 +739,7 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
searchIdx = 0;
while((searchIdx < (InternalHalAlsaMapT ? InternalHalAlsaMapT->ctlsCount : 0)) &&
- (! subscriptionFound)) {
+ ! subscriptionFound) {
if(! strcasecmp(currentSubscriptionString, InternalHalAlsaMapT->ctls[searchIdx].uid)) {
if(InternalHalAlsaMapT->ctls[searchIdx].alsaControlEvent &&
subscribeUnsubscribeType == SUBSCRIPTION &&
@@ -744,7 +762,6 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
subscriptionFound = 1;
subscriptionDoneNb++;
-
break;
}