summaryrefslogtreecommitdiff
path: root/PluginRoutingInterfaceCAPI/src
diff options
context:
space:
mode:
Diffstat (limited to 'PluginRoutingInterfaceCAPI/src')
-rw-r--r--PluginRoutingInterfaceCAPI/src/CAmRoutingSenderCommon.cpp12
-rw-r--r--PluginRoutingInterfaceCAPI/src/CAmRoutingService.cpp23
2 files changed, 35 insertions, 0 deletions
diff --git a/PluginRoutingInterfaceCAPI/src/CAmRoutingSenderCommon.cpp b/PluginRoutingInterfaceCAPI/src/CAmRoutingSenderCommon.cpp
index 68d360d..be1bdfc 100644
--- a/PluginRoutingInterfaceCAPI/src/CAmRoutingSenderCommon.cpp
+++ b/PluginRoutingInterfaceCAPI/src/CAmRoutingSenderCommon.cpp
@@ -183,6 +183,18 @@ void CAmConvertCAPI2AM(const org::genivi::am::am_Gateway_s & source, am::am_Gate
destination.convertionMatrix = source.convertionMatrix;
}
+void CAmConvertCAPI2AM(const org::genivi::am::am_Converter_s & source, am::am_Converter_s & destination)
+{
+ destination.sinkID = source.sinkID;
+ destination.converterID = source.converterID;
+ destination.name = source.name;
+ destination.sourceID = source.sourceID;
+ destination.domainID = source.domainID;
+ CAmConvertCAPIVector2AM(source.listSourceFormats, destination.listSourceFormats);
+ CAmConvertCAPIVector2AM(source.listSinkFormats, destination.listSinkFormats);
+ destination.convertionMatrix = source.convertionMatrix;
+}
+
void CAmConvertCAPI2AM(const org::genivi::am::am_EarlyData_u & source, am::am_EarlyData_u & destination)
{
if(source.isType<org::genivi::am::am_volume_t>())
diff --git a/PluginRoutingInterfaceCAPI/src/CAmRoutingService.cpp b/PluginRoutingInterfaceCAPI/src/CAmRoutingService.cpp
index 61e113f..2ee2f44 100644
--- a/PluginRoutingInterfaceCAPI/src/CAmRoutingService.cpp
+++ b/PluginRoutingInterfaceCAPI/src/CAmRoutingService.cpp
@@ -184,10 +184,21 @@ void CAmRoutingService::registerGateway(org::genivi::am::am_Gateway_s gatewayDat
error = static_cast<org::genivi::am::am_Error_e>(mpIAmRoutingReceive->registerGateway(converted, gatewayID));
}
+void CAmRoutingService::registerConverter(org::genivi::am::am_Converter_s aData, org::genivi::am::am_converterID_t& converterID, org::genivi::am::am_Error_e& error) {
+ assert(mpIAmRoutingReceive);
+ am_Converter_s converted;
+ CAmConvertCAPI2AM(aData, converted);
+ error = static_cast<org::genivi::am::am_Error_e>(mpIAmRoutingReceive->registerConverter(converted, converterID));
+}
+
void CAmRoutingService::deregisterGateway(org::genivi::am::am_gatewayID_t gatewayID, org::genivi::am::am_Error_e& returnError) {
returnError = static_cast<org::genivi::am::am_Error_e>(mpIAmRoutingReceive->deregisterGateway(gatewayID));
}
+void CAmRoutingService::deregisterConverter(org::genivi::am::am_converterID_t converterID, org::genivi::am::am_Error_e& returnError) {
+ returnError = static_cast<org::genivi::am::am_Error_e>(mpIAmRoutingReceive->deregisterConverter(converterID));
+}
+
void CAmRoutingService::peekSink(std::string name, org::genivi::am::am_sinkID_t& sinkID, org::genivi::am::am_Error_e& error) {
assert(mpIAmRoutingReceive);
error = static_cast<org::genivi::am::am_Error_e>(mpIAmRoutingReceive->peekSink(name, sinkID));
@@ -315,6 +326,18 @@ void CAmRoutingService::updateGateway(org::genivi::am::am_gatewayID_t gatewayID,
error = (org::genivi::am::am_Error_e)mpIAmRoutingReceive->updateGateway(gatewayID, destinationSourceConnectionFormats, destinationSinkConnectionFormats, convertionMatrix);
}
+void CAmRoutingService::updateConverter(org::genivi::am::am_converterID_t converterID, org::genivi::am::am_ConnectionFormat_L listSourceFormats, org::genivi::am::am_ConnectionFormat_L listSinkFormats, org::genivi::am::am_Convertion_L convertionMatrix, org::genivi::am::am_Error_e& error) {
+
+ assert(mpIAmRoutingReceive);
+ std::vector<am_CustomConnectionFormat_t> destinationSourceConnectionFormats;
+ CAmConvertCAPIVector2AM(listSourceFormats, destinationSourceConnectionFormats);
+
+ std::vector<am_CustomConnectionFormat_t> destinationSinkConnectionFormats;
+ CAmConvertCAPIVector2AM(listSinkFormats, destinationSinkConnectionFormats);
+
+ error = (org::genivi::am::am_Error_e)mpIAmRoutingReceive->updateConverter(converterID, destinationSourceConnectionFormats, destinationSinkConnectionFormats, convertionMatrix);
+}
+
void CAmRoutingService::updateSink(org::genivi::am::am_sinkID_t sinkID, org::genivi::am::am_sinkClass_t sinkClassID, org::genivi::am::am_SoundProperty_L listSoundProperties, org::genivi::am::am_ConnectionFormat_L listConnectionFormats, org::genivi::am::am_MainSoundProperty_L listMainSoundProperties, org::genivi::am::am_Error_e& error) {
assert(mpIAmRoutingReceive);
std::vector<am_SoundProperty_s> dstListSoundProperties;