AudioManager  7.6.6
Native Application Runtime Environment
am::IAmRoutingSend Class Referenceabstract

This class implements everything from Audiomanager -> RoutingAdapter There are two rules that have to be kept in mind when implementing against this interface:
. More...

#include <IAmRouting.h>

Public Member Functions

 IAmRoutingSend ()
 
virtual ~IAmRoutingSend ()
 
virtual void getInterfaceVersion (std::string &version) const =0
 This function returns the version of the interface. More...
 
virtual am_Error_e startupInterface (IAmRoutingReceive *routingreceiveinterface)=0
 starts up the interface. More...
 
virtual void setRoutingReady (const uint16_t handle)=0
 indicates that the routing now ready to be used. More...
 
virtual void setRoutingRundown (const uint16_t handle)=0
 indicates that the routing plugins need to be prepared to switch the power off or be ready again. More...
 
virtual am_Error_e asyncAbort (const am_Handle_s handle)=0
 aborts an asynchronous action. More...
 
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
 connects a source to a sink More...
 
virtual am_Error_e asyncDisconnect (const am_Handle_s handle, const am_connectionID_t connectionID)=0
 disconnect a connection with given connectionID More...
 
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
 this method is used to set the volume of a sink. More...
 
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
 sets the volume of a source. More...
 
virtual am_Error_e asyncSetSourceState (const am_Handle_s handle, const am_sourceID_t sourceID, const am_SourceState_e state)=0
 This function is used to set the source state of a particular source. More...
 
virtual am_Error_e asyncSetSinkSoundProperties (const am_Handle_s handle, const am_sinkID_t sinkID, const std::vector< am_SoundProperty_s > &listSoundProperties)=0
 this function sets the sinksoundproperty. More...
 
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 sinksoundproperty. More...
 
virtual am_Error_e asyncSetSourceSoundProperties (const am_Handle_s handle, const am_sourceID_t sourceID, const std::vector< am_SoundProperty_s > &listSoundProperties)=0
 this function sets the sourcesoundproperty. More...
 
virtual am_Error_e asyncSetSourceSoundProperty (const am_Handle_s handle, const am_sourceID_t sourceID, const am_SoundProperty_s &soundProperty)=0
 this function sets the sourcesoundproperty. More...
 
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 triggers crossfading. More...
 
virtual am_Error_e setDomainState (const am_domainID_t domainID, const am_DomainState_e domainState)=0
 this function is used for early and late audio functions to set the domain state More...
 
virtual am_Error_e returnBusName (std::string &BusName) const =0
 this method is used to retrieve the busname during startup of the plugin. More...
 
virtual am_Error_e asyncSetVolumes (const am_Handle_s handle, const std::vector< am_Volumes_s > &listVolumes)=0
 This command sets multiple source or and sink volumes within a domain at a time. More...
 
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 sink. More...
 
virtual am_Error_e asyncSetSourceNotificationConfiguration (const am_Handle_s handle, const am_sourceID_t sourceID, const am_NotificationConfiguration_s &notificationConfiguration)=0
 sets the notification configuration of a source. More...
 
virtual am_Error_e resyncConnectionState (const am_domainID_t domainID, std::vector< am_Connection_s > &listOfExistingConnections)=0
 Retrieves a list of all current active connections from a domain. More...
 

Detailed Description

This class implements everything from Audiomanager -> RoutingAdapter There are two rules that have to be kept in mind when implementing against this interface:
.

Warning
  1. CALLS TO THIS INTERFACE ARE NOT THREAD SAFE !!!!
  2. YOU MAY NOT CALL THE CALLING INTERFACE DURING AN SYNCHRONOUS OR ASYNCHRONOUS CALL THAT EXPECTS A RETURN VALUE.

Violation these rules may lead to unexpected behavior! Nevertheless you can implement thread safe by using the deferred-call pattern described on the wiki which also helps to implement calls that are forbidden.
For more information, please check CAmSerializer

Definition at line 357 of file IAmRouting.h.

Constructor & Destructor Documentation

am::IAmRoutingSend::IAmRoutingSend ( )
inline

Definition at line 361 of file IAmRouting.h.

virtual am::IAmRoutingSend::~IAmRoutingSend ( )
inlinevirtual

Definition at line 365 of file IAmRouting.h.

Member Function Documentation

virtual am_Error_e am::IAmRoutingSend::asyncAbort ( const am_Handle_s  handle)
pure virtual

aborts an asynchronous action.

Returns
E_OK on success, E_UNKNOWN on error, E_NON_EXISTENT if handle was not found
virtual am_Error_e am::IAmRoutingSend::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 
)
pure virtual

connects a source to a sink

Returns
E_OK on success, E_UNKNOWN on error, E_WRONG_FORMAT in case am_ConnectionFormat_e does not match
virtual am_Error_e am::IAmRoutingSend::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 
)
pure virtual

this function triggers crossfading.

Returns
E_OK on success, E_UNKNOWN on error
virtual am_Error_e am::IAmRoutingSend::asyncDisconnect ( const am_Handle_s  handle,
const am_connectionID_t  connectionID 
)
pure virtual

disconnect a connection with given connectionID

Returns
E_OK on success, E_UNKNOWN on error, E_NON_EXISTENT if connection was not found
virtual am_Error_e am::IAmRoutingSend::asyncSetSinkNotificationConfiguration ( const am_Handle_s  handle,
const am_sinkID_t  sinkID,
const am_NotificationConfiguration_s notificationConfiguration 
)
pure virtual

sets the notification configuration of a sink.

Returns
E_OK on success, E_UNKNOWN on error.
virtual am_Error_e am::IAmRoutingSend::asyncSetSinkSoundProperties ( const am_Handle_s  handle,
const am_sinkID_t  sinkID,
const std::vector< am_SoundProperty_s > &  listSoundProperties 
)
pure virtual

this function sets the sinksoundproperty.

Returns
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 am::IAmRoutingSend::asyncSetSinkSoundProperty ( const am_Handle_s  handle,
const am_sinkID_t  sinkID,
const am_SoundProperty_s soundProperty 
)
pure virtual

this function sets the sinksoundproperty.

Returns
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 am::IAmRoutingSend::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 
)
pure virtual

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.

Returns
E_OK on success, E_UNKNOWN on error, E_OUT_OF_RANGE if new volume is out of range
virtual am_Error_e am::IAmRoutingSend::asyncSetSourceNotificationConfiguration ( const am_Handle_s  handle,
const am_sourceID_t  sourceID,
const am_NotificationConfiguration_s notificationConfiguration 
)
pure virtual

sets the notification configuration of a source.

Returns
E_OK on success, E_UNKNOWN on error.
virtual am_Error_e am::IAmRoutingSend::asyncSetSourceSoundProperties ( const am_Handle_s  handle,
const am_sourceID_t  sourceID,
const std::vector< am_SoundProperty_s > &  listSoundProperties 
)
pure virtual

this function sets the sourcesoundproperty.

Returns
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 am::IAmRoutingSend::asyncSetSourceSoundProperty ( const am_Handle_s  handle,
const am_sourceID_t  sourceID,
const am_SoundProperty_s soundProperty 
)
pure virtual

this function sets the sourcesoundproperty.

Returns
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 am::IAmRoutingSend::asyncSetSourceState ( const am_Handle_s  handle,
const am_sourceID_t  sourceID,
const am_SourceState_e  state 
)
pure virtual

This function is used to set the source state of a particular source.

Returns
E_OK on success, E_UNKNOWN on error
virtual am_Error_e am::IAmRoutingSend::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 
)
pure virtual

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.

Returns
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 am::IAmRoutingSend::asyncSetVolumes ( const am_Handle_s  handle,
const std::vector< am_Volumes_s > &  listVolumes 
)
pure virtual

This command sets multiple source or and sink volumes within a domain at a time.

It can be used to synchronize volume setting events.

Returns
E_OK on success, E_UNKNOWN on error.
virtual void am::IAmRoutingSend::getInterfaceVersion ( std::string &  version) const
pure virtual

This function returns the version of the interface.

virtual am_Error_e am::IAmRoutingSend::resyncConnectionState ( const am_domainID_t  domainID,
std::vector< am_Connection_s > &  listOfExistingConnections 
)
pure virtual

Retrieves a list of all current active connections from a domain.

This method is meant to be used if the audiomanager and a remote domain are out of sync.

virtual am_Error_e am::IAmRoutingSend::returnBusName ( std::string &  BusName) const
pure virtual

this method is used to retrieve the busname during startup of the plugin.

Needs to be implemented

Returns
E_OK on success, E_UNKNOWN on error
virtual am_Error_e am::IAmRoutingSend::setDomainState ( const am_domainID_t  domainID,
const am_DomainState_e  domainState 
)
pure virtual

this function is used for early and late audio functions to set the domain state

Returns
E_OK on success, E_UNKNOWN on error
virtual void am::IAmRoutingSend::setRoutingReady ( const uint16_t  handle)
pure virtual

indicates that the routing now ready to be used.

Should be used as trigger to register all sinks, sources, etc...

virtual void am::IAmRoutingSend::setRoutingRundown ( const uint16_t  handle)
pure virtual

indicates that the routing plugins need to be prepared to switch the power off or be ready again.

virtual am_Error_e am::IAmRoutingSend::startupInterface ( IAmRoutingReceive routingreceiveinterface)
pure virtual

starts up the interface.

In the implementations, here is the best place for init routines.


The documentation for this class was generated from the following file: