From 038732ec315808ccebda557e88a79bec9febf5a9 Mon Sep 17 00:00:00 2001 From: Jens Lorenz Date: Thu, 10 Jul 2014 10:35:54 +0200 Subject: Bug #100 - update of interface version numbers and added removed comments Signed-off-by: Jens Lorenz --- include/routing/IAmRoutingSend.h | 151 +++++++++++++++++++++++++++++++-------- 1 file changed, 123 insertions(+), 28 deletions(-) mode change 100644 => 100755 include/routing/IAmRoutingSend.h (limited to 'include/routing/IAmRoutingSend.h') diff --git a/include/routing/IAmRoutingSend.h b/include/routing/IAmRoutingSend.h old mode 100644 new mode 100755 index 697bc0f..d9aeb3c --- a/include/routing/IAmRoutingSend.h +++ b/include/routing/IAmRoutingSend.h @@ -1,40 +1,39 @@ -/** +/** * Copyright (C) 2012 - 2014, BMW AG - * - * This file is part of GENIVI Project AudioManager. - * - * Contributions are licensed to the GENIVI Alliance under one or more - * Contribution License Agreements. - * - * \copyright - * This Source Code Form is subject to the terms of the - * Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with - * this file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * + * + * This file is part of GENIVI Project AudioManager. + * + * Contributions are licensed to the GENIVI Alliance under one or more + * Contribution License Agreements. + * + * \copyright + * This Source Code Form is subject to the terms of the + * Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with + * this file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * * \author Christian Linke, christian.linke@bmw.de BMW 2011 - 2014 - * - * \file + * + * \file * For further information see http://projects.genivi.org/audio-manager - * + * * THIS CODE HAS BEEN GENERATED BY ENTERPRISE ARCHITECT GENIVI MODEL. * PLEASE CHANGE ONLY IN ENTERPRISE ARCHITECT AND GENERATE AGAIN. - */ -#if !defined(EA_3AD07676_42DA_4ba9_A6E8_DA06F23BC8EB__INCLUDED_) -#define EA_3AD07676_42DA_4ba9_A6E8_DA06F23BC8EB__INCLUDED_ - -#include -#include -#include "audiomanagertypes.h" - -namespace am { -class IAmRoutingReceive; + */ +#if !defined(EA_75F8849C_0F4B_4641_B0B9_01DE137E6938__INCLUDED_) +#define EA_75F8849C_0F4B_4641_B0B9_01DE137E6938__INCLUDED_ + +#include +#include +#include "audiomanagertypes.h" +namespace am { +class IAmRoutingReceive; } #include "audiomanagertypes.h" #include "IAmRoutingReceive.h" -#define RoutingSendVersion "2.0" +#define RoutingSendVersion "3.0" namespace am { /** @@ -63,27 +62,123 @@ public: } + /** + * This function returns the version of the interface + */ virtual void getInterfaceVersion(std::string& version) const =0; + /** + * starts up the interface. In the implementations, here is the best place for + * init routines. + */ virtual am_Error_e startupInterface(IAmRoutingReceive* routingreceiveinterface) =0; + /** + * indicates that the routing now ready to be used. Should be used as trigger to + * register all sinks, sources, etc... + */ virtual void setRoutingReady(const uint16_t handle) =0; + /** + * indicates that the routing plugins need to be prepared to switch the power off + * or be ready again. + */ virtual void setRoutingRundown(const uint16_t handle) =0; + /** + * aborts an asynchronous action. + * @return E_OK on success, E_UNKNOWN on error, E_NON_EXISTENT if handle was not + * found + */ virtual am_Error_e asyncAbort(const am_Handle_s handle) =0; + /** + * connects a source to a sink + * @return E_OK on success, E_UNKNOWN on error, E_WRONG_FORMAT in case + * am_ConnectionFormat_e does not match + */ virtual am_Error_e asyncConnect(const am_Handle_s handle, const am_connectionID_t connectionID, const am_sourceID_t sourceID, const am_sinkID_t sinkID, const am_CustomConnectionFormat_t connectionFormat) =0; + /** + * disconnect a connection with given connectionID + * @return E_OK on success, E_UNKNOWN on error, E_NON_EXISTENT if connection was + * not found + */ virtual am_Error_e asyncDisconnect(const am_Handle_s handle, const am_connectionID_t connectionID) =0; + /** + * this method is used to set the volume of a sink. This function is used to drive + * ramps, to mute or unmute or directly set the value. The difference is made + * through the ramptype. + * @return E_OK on success, E_UNKNOWN on error, E_OUT_OF_RANGE if new volume is + * out of range + */ virtual am_Error_e asyncSetSinkVolume(const am_Handle_s handle, const am_sinkID_t sinkID, const am_volume_t volume, const am_CustomRampType_t ramp, const am_time_t time) =0; + /** + * sets the volume of a source. This method is used to set the volume of a sink. + * This function is used to drive ramps, to mute or unmute or directly set the + * value. The difference is made through the ramptype. + * @return E_OK on success, E_UNKNOWN on error, E_OUT_OF_RANGE if volume is out of + * range. + * triggers the acknowledge ackSourceVolumeChange + */ virtual am_Error_e asyncSetSourceVolume(const am_Handle_s handle, const am_sourceID_t sourceID, const am_volume_t volume, const am_CustomRampType_t ramp, const am_time_t time) =0; + /** + * This function is used to set the source state of a particular source. + * @return E_OK on success, E_UNKNOWN on error + */ virtual am_Error_e asyncSetSourceState(const am_Handle_s handle, const am_sourceID_t sourceID, const am_SourceState_e state) =0; + /** + * this function sets the sinksoundproperty. + * @return E_OK on success, E_UNKNOWN on error, E_OUT_OF_RANGE in case the propery + * value is out of range + */ virtual am_Error_e asyncSetSinkSoundProperties(const am_Handle_s handle, const am_sinkID_t sinkID, const std::vector& listSoundProperties) =0; + /** + * this function sets the sinksoundproperty. + * @return E_OK on success, E_UNKNOWN on error, E_OUT_OF_RANGE in case the propery + * value is out of range + */ virtual am_Error_e asyncSetSinkSoundProperty(const am_Handle_s handle, const am_sinkID_t sinkID, const am_SoundProperty_s& soundProperty) =0; + /** + * this function sets the sourcesoundproperty. + * @return E_OK on success, E_UNKNOWN on error, E_OUT_OF_RANGE in case the propery + * value is out of range + */ virtual am_Error_e asyncSetSourceSoundProperties(const am_Handle_s handle, const am_sourceID_t sourceID, const std::vector& listSoundProperties) =0; + /** + * this function sets the sourcesoundproperty. + * @return E_OK on success, E_UNKNOWN on error, E_OUT_OF_RANGE in case the propery + * value is out of range + */ virtual am_Error_e asyncSetSourceSoundProperty(const am_Handle_s handle, const am_sourceID_t sourceID, const am_SoundProperty_s& soundProperty) =0; + /** + * this function triggers crossfading. + * @return E_OK on success, E_UNKNOWN on error + */ virtual am_Error_e asyncCrossFade(const am_Handle_s handle, const am_crossfaderID_t crossfaderID, const am_HotSink_e hotSink, const am_CustomRampType_t rampType, const am_time_t time) =0; + /** + * this function is used for early and late audio functions to set the domain + * state + * @return E_OK on success, E_UNKNOWN on error + */ virtual am_Error_e setDomainState(const am_domainID_t domainID, const am_DomainState_e domainState) =0; + /** + * this method is used to retrieve the busname during startup of the plugin. Needs + * to be implemented + * @return E_OK on success, E_UNKNOWN on error + */ virtual am_Error_e returnBusName(std::string& BusName) const =0; + /** + * This command sets multiple source or and sink volumes within a domain at a time. + * It can be used to synchronize volume setting events. + * @return E_OK on success, E_UNKNOWN on error. + */ virtual am_Error_e asyncSetVolumes(const am_Handle_s handle, const std::vector& listVolumes) =0; + /** + * sets the notification configuration of a sink. + * @return E_OK on success, E_UNKNOWN on error. + */ virtual am_Error_e asyncSetSinkNotificationConfiguration(const am_Handle_s handle, const am_sinkID_t sinkID, const am_NotificationConfiguration_s& notificationConfiguration) =0; + /** + * sets the notification configuration of a source. + * @return E_OK on success, E_UNKNOWN on error. + */ virtual am_Error_e asyncSetSourceNotificationConfiguration(const am_Handle_s handle, const am_sourceID_t sourceID, const am_NotificationConfiguration_s& notificationConfiguration) =0; }; } -#endif // !defined(EA_3AD07676_42DA_4ba9_A6E8_DA06F23BC8EB__INCLUDED_) +#endif // !defined(EA_75F8849C_0F4B_4641_B0B9_01DE137E6938__INCLUDED_) -- cgit v1.2.1