AudioManager  7.6.6
Native Application Runtime Environment
IAmControl.h
Go to the documentation of this file.
1 
23 #if !defined(EA_69597D9E_B0A3_4c6d_BBB6_E7F436B8B799__INCLUDED_)
24 #define EA_69597D9E_B0A3_4c6d_BBB6_E7F436B8B799__INCLUDED_
25 
26 #include <vector>
27 #include <string>
28 #include "audiomanagertypes.h"
29 namespace am {
30 class CAmSocketHandler;
31 }
32 
33 #include "audiomanagertypes.h"
34 
35 #define ControlVersion "5.1"
36 namespace am {
37 
57 {
58 
59 public:
61 
62  }
63 
64  virtual ~IAmControlReceive() {
65 
66  }
67 
71  virtual void getInterfaceVersion(std::string& version) const =0;
76  virtual am_Error_e getRoute(const bool onlyfree, const am_sourceID_t sourceID, const am_sinkID_t sinkID, std::vector<am_Route_s>& returnList) =0;
83  virtual am_Error_e connect(am_Handle_s& handle, am_connectionID_t& connectionID, const am_CustomConnectionFormat_t format, const am_sourceID_t sourceID, const am_sinkID_t sinkID) =0;
89  virtual am_Error_e disconnect(am_Handle_s& handle, const am_connectionID_t connectionID) =0;
95  virtual am_Error_e crossfade(am_Handle_s& handle, const am_HotSink_e hotSource, const am_crossfaderID_t crossfaderID, const am_CustomRampType_t rampType, const am_time_t rampTime) =0;
100  virtual am_Error_e abortAction(const am_Handle_s handle) =0;
107  virtual am_Error_e setSourceState(am_Handle_s& handle, const am_sourceID_t sourceID, const am_SourceState_e state) =0;
117  virtual am_Error_e setSinkVolume(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;
127  virtual am_Error_e setSourceVolume(am_Handle_s& handle, const am_sourceID_t sourceID, const am_volume_t volume, const am_CustomRampType_t rampType, const am_time_t time) =0;
133  virtual am_Error_e setSinkSoundProperties(am_Handle_s& handle, const am_sinkID_t sinkID, const std::vector<am_SoundProperty_s>& soundProperty) =0;
139  virtual am_Error_e setSinkSoundProperty(am_Handle_s& handle, const am_sinkID_t sinkID, const am_SoundProperty_s& soundProperty) =0;
145  virtual am_Error_e setSourceSoundProperties(am_Handle_s& handle, const am_sourceID_t sourceID, const std::vector<am_SoundProperty_s>& soundProperty) =0;
151  virtual am_Error_e setSourceSoundProperty(am_Handle_s& handle, const am_sourceID_t sourceID, const am_SoundProperty_s& soundProperty) =0;
157  virtual am_Error_e setDomainState(const am_domainID_t domainID, const am_DomainState_e domainState) =0;
163  virtual am_Error_e enterDomainDB(const am_Domain_s& domainData, am_domainID_t& domainID) =0;
168  virtual am_Error_e enterMainConnectionDB(const am_MainConnection_s& mainConnectionData, am_mainConnectionID_t& connectionID) =0;
178  virtual am_Error_e enterSinkDB(const am_Sink_s& sinkData, am_sinkID_t& sinkID) =0;
188  virtual am_Error_e enterCrossfaderDB(const am_Crossfader_s& crossfaderData, am_crossfaderID_t& crossfaderID) =0;
198  virtual am_Error_e enterGatewayDB(const am_Gateway_s& gatewayData, am_gatewayID_t& gatewayID) =0;
208  virtual am_Error_e enterConverterDB(const am_Converter_s& converterData, am_converterID_t& converterID) =0;
218  virtual am_Error_e enterSourceDB(const am_Source_s& sourceData, am_sourceID_t& sourceID) =0;
224  virtual am_Error_e enterSinkClassDB(const am_SinkClass_s& sinkClass, am_sinkClass_t& sinkClassID) =0;
234  virtual am_Error_e enterSourceClassDB(am_sourceClass_t& sourceClassID, const am_SourceClass_s& sourceClass) =0;
244  virtual am_Error_e changeSinkClassInfoDB(const am_SinkClass_s& sinkClass) =0;
254  virtual am_Error_e changeSourceClassInfoDB(const am_SourceClass_s& sourceClass) =0;
261  virtual am_Error_e enterSystemPropertiesListDB(const std::vector<am_SystemProperty_s>& listSystemProperties) =0;
267  virtual am_Error_e changeMainConnectionRouteDB(const am_mainConnectionID_t mainconnectionID, const std::vector<am_connectionID_t>& listConnectionID) =0;
273  virtual am_Error_e changeMainConnectionStateDB(const am_mainConnectionID_t mainconnectionID, const am_ConnectionState_e connectionState) =0;
279  virtual am_Error_e changeSinkMainVolumeDB(const am_mainVolume_t mainVolume, const am_sinkID_t sinkID) =0;
285  virtual am_Error_e changeSinkAvailabilityDB(const am_Availability_s& availability, const am_sinkID_t sinkID) =0;
291  virtual am_Error_e changDomainStateDB(const am_DomainState_e domainState, const am_domainID_t domainID) =0;
297  virtual am_Error_e changeSinkMuteStateDB(const am_MuteState_e muteState, const am_sinkID_t sinkID) =0;
303  virtual am_Error_e changeMainSinkSoundPropertyDB(const am_MainSoundProperty_s& soundProperty, const am_sinkID_t sinkID) =0;
309  virtual am_Error_e changeMainSourceSoundPropertyDB(const am_MainSoundProperty_s& soundProperty, const am_sourceID_t sourceID) =0;
315  virtual am_Error_e changeSourceAvailabilityDB(const am_Availability_s& availability, const am_sourceID_t sourceID) =0;
321  virtual am_Error_e changeSystemPropertyDB(const am_SystemProperty_s& property) =0;
327  virtual am_Error_e removeMainConnectionDB(const am_mainConnectionID_t mainConnectionID) =0;
333  virtual am_Error_e removeSinkDB(const am_sinkID_t sinkID) =0;
339  virtual am_Error_e removeSourceDB(const am_sourceID_t sourceID) =0;
345  virtual am_Error_e removeGatewayDB(const am_gatewayID_t gatewayID) =0;
351  virtual am_Error_e removeConverterDB(const am_converterID_t converterID) =0;
357  virtual am_Error_e removeCrossfaderDB(const am_crossfaderID_t crossfaderID) =0;
363  virtual am_Error_e removeDomainDB(const am_domainID_t domainID) =0;
369  virtual am_Error_e removeSinkClassDB(const am_sinkClass_t sinkClassID) =0;
375  virtual am_Error_e removeSourceClassDB(const am_sourceClass_t sourceClassID) =0;
381  virtual am_Error_e getSourceClassInfoDB(const am_sourceID_t sourceID, am_SourceClass_s& classInfo) const =0;
387  virtual am_Error_e getSinkClassInfoDB(const am_sinkID_t sinkID, am_SinkClass_s& sinkClass) const =0;
393  virtual am_Error_e getSinkInfoDB(const am_sinkID_t sinkID, am_Sink_s& sinkData) const =0;
399  virtual am_Error_e getSourceInfoDB(const am_sourceID_t sourceID, am_Source_s& sourceData) const =0;
405  virtual am_Error_e getConverterInfoDB(const am_converterID_t converterID, am_Converter_s& converterData) const =0;
411  virtual am_Error_e getGatewayInfoDB(const am_gatewayID_t gatewayID, am_Gateway_s& gatewayData) const =0;
417  virtual am_Error_e getCrossfaderInfoDB(const am_crossfaderID_t crossfaderID, am_Crossfader_s& crossfaderData) const =0;
423  virtual am_Error_e getMainConnectionInfoDB(const am_mainConnectionID_t mainConnectionID, am_MainConnection_s& mainConnectionData) const =0;
429  virtual am_Error_e getListSinksOfDomain(const am_domainID_t domainID, std::vector<am_sinkID_t>& listSinkID) const =0;
435  virtual am_Error_e getListSourcesOfDomain(const am_domainID_t domainID, std::vector<am_sourceID_t>& listSourceID) const =0;
441  virtual am_Error_e getListCrossfadersOfDomain(const am_domainID_t domainID, std::vector<am_crossfaderID_t>& listCrossfadersID) const =0;
447  virtual am_Error_e getListConvertersOfDomain(const am_domainID_t domainID, std::vector<am_converterID_t>& listConverterID) const =0;
453  virtual am_Error_e getListGatewaysOfDomain(const am_domainID_t domainID, std::vector<am_gatewayID_t>& listGatewaysID) const =0;
458  virtual am_Error_e getListMainConnections(std::vector<am_MainConnection_s>& listMainConnections) const =0;
463  virtual am_Error_e getListDomains(std::vector<am_Domain_s>& listDomains) const =0;
468  virtual am_Error_e getListConnections(std::vector<am_Connection_s>& listConnections) const =0;
473  virtual am_Error_e getListSinks(std::vector<am_Sink_s>& listSinks) const =0;
478  virtual am_Error_e getListSources(std::vector<am_Source_s>& listSources) const =0;
483  virtual am_Error_e getListSourceClasses(std::vector<am_SourceClass_s>& listSourceClasses) const =0;
488  virtual am_Error_e getListHandles(std::vector<am_Handle_s>& listHandles) const =0;
493  virtual am_Error_e getListCrossfaders(std::vector<am_Crossfader_s>& listCrossfaders) const =0;
498  virtual am_Error_e getListConverters(std::vector<am_Converter_s>& listConverters) const =0;
503  virtual am_Error_e getListGateways(std::vector<am_Gateway_s>& listGateways) const =0;
508  virtual am_Error_e getListSinkClasses(std::vector<am_SinkClass_s>& listSinkClasses) const =0;
512  virtual am_Error_e getListSystemProperties(std::vector<am_SystemProperty_s>& listSystemProperties) const =0;
517  virtual void setCommandReady() =0;
522  virtual void setCommandRundown() =0;
527  virtual void setRoutingReady() =0;
533  virtual void setRoutingRundown() =0;
537  virtual void confirmControllerReady(const am_Error_e error) =0;
541  virtual void confirmControllerRundown(const am_Error_e error) =0;
549  virtual am_Error_e getSocketHandler(CAmSocketHandler*& socketHandler) =0;
553  virtual am_Error_e changeSourceDB(const am_sourceID_t sourceID, const am_sourceClass_t sourceClassID, const std::vector<am_SoundProperty_s>& listSoundProperties, const std::vector<am_CustomConnectionFormat_t>& listConnectionFormats, const std::vector<am_MainSoundProperty_s>& listMainSoundProperties) =0;
557  virtual am_Error_e changeSinkDB(const am_sinkID_t sinkID, const am_sinkClass_t sinkClassID, const std::vector<am_SoundProperty_s>& listSoundProperties, const std::vector<am_CustomConnectionFormat_t>& listConnectionFormats, const std::vector<am_MainSoundProperty_s>& listMainSoundProperties) =0;
561  virtual am_Error_e changeConverterDB(const am_converterID_t converterID, const std::vector<am_CustomConnectionFormat_t>& listSourceConnectionFormats, const std::vector<am_CustomConnectionFormat_t>& listSinkConnectionFormats, const std::vector<bool>& convertionMatrix) =0;
565  virtual am_Error_e changeGatewayDB(const am_gatewayID_t gatewayID, const std::vector<am_CustomConnectionFormat_t>& listSourceConnectionFormats, const std::vector<am_CustomConnectionFormat_t>& listSinkConnectionFormats, const std::vector<bool>& convertionMatrix) =0;
575  virtual am_Error_e setVolumes(am_Handle_s& handle, const std::vector<am_Volumes_s>& listVolumes) =0;
579  virtual am_Error_e setSinkNotificationConfiguration(am_Handle_s& handle, const am_sinkID_t sinkID, const am_NotificationConfiguration_s& notificationConfiguration) =0;
583  virtual am_Error_e setSourceNotificationConfiguration(am_Handle_s& handle, const am_sourceID_t sourceID, const am_NotificationConfiguration_s& notificationConfiguration) =0;
588  virtual void sendMainSinkNotificationPayload(const am_sinkID_t sinkID, const am_NotificationPayload_s& notificationPayload) =0;
593  virtual void sendMainSourceNotificationPayload(const am_sourceID_t sourceID, const am_NotificationPayload_s& notificationPayload) =0;
598  virtual am_Error_e changeMainSinkNotificationConfigurationDB(const am_sinkID_t sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration) =0;
603  virtual am_Error_e changeMainSourceNotificationConfigurationDB(const am_sourceID_t sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration) =0;
608  virtual am_Error_e getListMainSinkSoundProperties(const am_sinkID_t sinkID, std::vector<am_MainSoundProperty_s>& listSoundproperties) const =0;
614  virtual am_Error_e getListMainSourceSoundProperties(const am_sourceID_t sourceID, std::vector<am_MainSoundProperty_s>& listSoundproperties) const =0;
619  virtual am_Error_e getListSinkSoundProperties(const am_sinkID_t sinkID, std::vector<am_SoundProperty_s>& listSoundproperties) const =0;
624  virtual am_Error_e getListSourceSoundProperties(const am_sourceID_t sourceID, std::vector<am_SoundProperty_s>& listSoundproperties) const =0;
629  virtual am_Error_e getMainSinkSoundPropertyValue(const am_sinkID_t sinkID, const am_CustomMainSoundPropertyType_t propertyType, int16_t& value) const =0;
634  virtual am_Error_e getSinkSoundPropertyValue(const am_sinkID_t sinkID, const am_CustomSoundPropertyType_t propertyType, int16_t& value) const =0;
639  virtual am_Error_e getMainSourceSoundPropertyValue(const am_sourceID_t sourceID, const am_CustomMainSoundPropertyType_t propertyType, int16_t& value) const =0;
644  virtual am_Error_e getSourceSoundPropertyValue(const am_sourceID_t sourceID, const am_CustomSoundPropertyType_t propertyType, int16_t& value) const =0;
649  virtual am_Error_e resyncConnectionState(const am_domainID_t domainID, std::vector<am_Connection_s>& listOfExistingConnections) =0;
654  virtual am_Error_e removeHandle(const am_Handle_s handle) = 0;
655 
656 };
657 
676 {
677 
678 public:
680 
681  }
682 
683  virtual ~IAmControlSend() {
684 
685  }
686 
691  virtual void getInterfaceVersion(std::string& version) const =0;
695  virtual am_Error_e startupController(IAmControlReceive* controlreceiveinterface) =0;
700  virtual void setControllerReady() =0;
710  virtual void setControllerRundown(const int16_t signal) =0;
716  virtual am_Error_e hookUserConnectionRequest(const am_sourceID_t sourceID, const am_sinkID_t sinkID, am_mainConnectionID_t& mainConnectionID) =0;
722  virtual am_Error_e hookUserDisconnectionRequest(const am_mainConnectionID_t connectionID) =0;
727  virtual am_Error_e hookUserSetMainSinkSoundProperty(const am_sinkID_t sinkID, const am_MainSoundProperty_s& soundProperty) =0;
732  virtual am_Error_e hookUserSetMainSourceSoundProperty(const am_sourceID_t sourceID, const am_MainSoundProperty_s& soundProperty) =0;
737  virtual am_Error_e hookUserSetSystemProperty(const am_SystemProperty_s& property) =0;
742  virtual am_Error_e hookUserVolumeChange(const am_sinkID_t SinkID, const am_mainVolume_t newVolume) =0;
747  virtual am_Error_e hookUserVolumeStep(const am_sinkID_t SinkID, const int16_t increment) =0;
752  virtual am_Error_e hookUserSetSinkMuteState(const am_sinkID_t sinkID, const am_MuteState_e muteState) =0;
758  virtual am_Error_e hookSystemRegisterDomain(const am_Domain_s& domainData, am_domainID_t& domainID) =0;
763  virtual am_Error_e hookSystemDeregisterDomain(const am_domainID_t domainID) =0;
767  virtual void hookSystemDomainRegistrationComplete(const am_domainID_t domainID) =0;
773  virtual am_Error_e hookSystemRegisterSink(const am_Sink_s& sinkData, am_sinkID_t& sinkID) =0;
778  virtual am_Error_e hookSystemDeregisterSink(const am_sinkID_t sinkID) =0;
784  virtual am_Error_e hookSystemRegisterSource(const am_Source_s& sourceData, am_sourceID_t& sourceID) =0;
789  virtual am_Error_e hookSystemDeregisterSource(const am_sourceID_t sourceID) =0;
795  virtual am_Error_e hookSystemRegisterConverter(const am_Converter_s& converterData, am_converterID_t& converterID) =0;
801  virtual am_Error_e hookSystemRegisterGateway(const am_Gateway_s& gatewayData, am_gatewayID_t& gatewayID) =0;
806  virtual am_Error_e hookSystemDeregisterConverter(const am_converterID_t converterID) =0;
811  virtual am_Error_e hookSystemDeregisterGateway(const am_gatewayID_t gatewayID) =0;
817  virtual am_Error_e hookSystemRegisterCrossfader(const am_Crossfader_s& crossfaderData, am_crossfaderID_t& crossfaderID) =0;
822  virtual am_Error_e hookSystemDeregisterCrossfader(const am_crossfaderID_t crossfaderID) =0;
826  virtual void hookSystemSinkVolumeTick(const am_Handle_s handle, const am_sinkID_t sinkID, const am_volume_t volume) =0;
830  virtual void hookSystemSourceVolumeTick(const am_Handle_s handle, const am_sourceID_t sourceID, const am_volume_t volume) =0;
834  virtual void hookSystemInterruptStateChange(const am_sourceID_t sourceID, const am_InterruptState_e interruptState) =0;
838  virtual void hookSystemSinkAvailablityStateChange(const am_sinkID_t sinkID, const am_Availability_s& availability) =0;
842  virtual void hookSystemSourceAvailablityStateChange(const am_sourceID_t sourceID, const am_Availability_s& availability) =0;
846  virtual void hookSystemDomainStateChange(const am_domainID_t domainID, const am_DomainState_e state) =0;
850  virtual void hookSystemReceiveEarlyData(const std::vector<am_EarlyData_s>& data) =0;
856  virtual void hookSystemSpeedChange(const am_speed_t speed) =0;
861  virtual void hookSystemTimingInformationChanged(const am_mainConnectionID_t mainConnectionID, const am_timeSync_t time) =0;
865  virtual void cbAckConnect(const am_Handle_s handle, const am_Error_e errorID) =0;
869  virtual void cbAckDisconnect(const am_Handle_s handle, const am_Error_e errorID) =0;
873  virtual void cbAckCrossFade(const am_Handle_s handle, const am_HotSink_e hostsink, const am_Error_e error) =0;
877  virtual void cbAckSetSinkVolumeChange(const am_Handle_s handle, const am_volume_t volume, const am_Error_e error) =0;
881  virtual void cbAckSetSourceVolumeChange(const am_Handle_s handle, const am_volume_t voulme, const am_Error_e error) =0;
885  virtual void cbAckSetSourceState(const am_Handle_s handle, const am_Error_e error) =0;
889  virtual void cbAckSetSourceSoundProperties(const am_Handle_s handle, const am_Error_e error) =0;
893  virtual void cbAckSetSourceSoundProperty(const am_Handle_s handle, const am_Error_e error) =0;
897  virtual void cbAckSetSinkSoundProperties(const am_Handle_s handle, const am_Error_e error) =0;
901  virtual void cbAckSetSinkSoundProperty(const am_Handle_s handle, const am_Error_e error) =0;
907  virtual am_Error_e getConnectionFormatChoice(const am_sourceID_t sourceID, const am_sinkID_t sinkID, const am_Route_s listRoute, const std::vector<am_CustomConnectionFormat_t> listPossibleConnectionFormats, std::vector<am_CustomConnectionFormat_t>& listPrioConnectionFormats) =0;
911  virtual void confirmCommandReady(const am_Error_e error) =0;
915  virtual void confirmRoutingReady(const am_Error_e error) =0;
919  virtual void confirmCommandRundown(const am_Error_e error) =0;
923  virtual void confirmRoutingRundown(const am_Error_e error) =0;
927  virtual am_Error_e hookSystemUpdateSink(const am_sinkID_t sinkID, const am_sinkClass_t sinkClassID, const std::vector<am_SoundProperty_s>& listSoundProperties, const std::vector<am_CustomConnectionFormat_t>& listConnectionFormats, const std::vector<am_MainSoundProperty_s>& listMainSoundProperties) =0;
931  virtual am_Error_e hookSystemUpdateSource(const am_sourceID_t sourceID, const am_sourceClass_t sourceClassID, const std::vector<am_SoundProperty_s>& listSoundProperties, const std::vector<am_CustomConnectionFormat_t>& listConnectionFormats, const std::vector<am_MainSoundProperty_s>& listMainSoundProperties) =0;
935  virtual am_Error_e hookSystemUpdateConverter(const am_converterID_t converterID, const std::vector<am_CustomConnectionFormat_t>& listSourceConnectionFormats, const std::vector<am_CustomConnectionFormat_t>& listSinkConnectionFormats, const std::vector<bool>& convertionMatrix) =0;
939  virtual am_Error_e hookSystemUpdateGateway(const am_gatewayID_t gatewayID, const std::vector<am_CustomConnectionFormat_t>& listSourceConnectionFormats, const std::vector<am_CustomConnectionFormat_t>& listSinkConnectionFormats, const std::vector<bool>& convertionMatrix) =0;
943  virtual void cbAckSetVolumes(const am_Handle_s handle, const std::vector<am_Volumes_s>& listVolumes, const am_Error_e error) =0;
947  virtual void cbAckSetSinkNotificationConfiguration(const am_Handle_s handle, const am_Error_e error) =0;
951  virtual void cbAckSetSourceNotificationConfiguration(const am_Handle_s handle, const am_Error_e error) =0;
955  virtual void hookSinkNotificationDataChanged(const am_sinkID_t sinkID, const am_NotificationPayload_s& payload) =0;
959  virtual void hookSourceNotificationDataChanged(const am_sourceID_t sourceID, const am_NotificationPayload_s& payload) =0;
964  virtual am_Error_e hookUserSetMainSinkNotificationConfiguration(const am_sinkID_t sinkID, const am_NotificationConfiguration_s& notificationConfiguration) =0;
969  virtual am_Error_e hookUserSetMainSourceNotificationConfiguration(const am_sourceID_t sourceID, const am_NotificationConfiguration_s& notificationConfiguration) =0;
973  virtual void hookSystemSingleTimingInformationChanged(const am_connectionID_t connectionID, const am_timeSync_t time) =0;
974 
975 
976 };
977 }
978 #endif // !defined(EA_69597D9E_B0A3_4c6d_BBB6_E7F436B8B799__INCLUDED_)
virtual am_Error_e setSinkVolume(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
with this function, setting of sinks volumes is done.
virtual am_Error_e getMainConnectionInfoDB(const am_mainConnectionID_t mainConnectionID, am_MainConnection_s &mainConnectionData) const =0
returns sources and the sink of a crossfader
virtual am_Error_e getListMainSourceSoundProperties(const am_sourceID_t sourceID, std::vector< am_MainSoundProperty_s > &listSoundproperties) const =0
This function retrieves a list of all source mainsoundproperties with its values. ...
virtual am_Error_e getListConverters(std::vector< am_Converter_s > &listConverters) const =0
returns a list of converters
virtual am_Error_e getSinkInfoDB(const am_sinkID_t sinkID, am_Sink_s &sinkData) const =0
returns the sinkData of a sink
uint16_t am_connectionID_t
a connection ID
uint16_t am_CustomSoundPropertyType_t
Within genivi only the some example properties are defined.
virtual am_Error_e enterSourceClassDB(am_sourceClass_t &sourceClassID, const am_SourceClass_s &sourceClass)=0
Enters a sourceClass into the database.
virtual am_Error_e getSinkClassInfoDB(const am_sinkID_t sinkID, am_SinkClass_s &sinkClass) const =0
returns the ClassInformation of a sink
A Common-API wrapper class, which loads the common-api runtime and instantiates all necessary objects...
virtual void confirmControllerRundown(const am_Error_e error)=0
Acknowledges the setControllerRundown call.
virtual am_Error_e getMainSourceSoundPropertyValue(const am_sourceID_t sourceID, const am_CustomMainSoundPropertyType_t propertyType, int16_t &value) const =0
This function retrieves the value of a source Mainsoundproperty.
uint16_t am_sinkClass_t
virtual am_Error_e removeMainConnectionDB(const am_mainConnectionID_t mainConnectionID)=0
removes a mainconnection from the DB
am_Error_e
the errors of the audiomanager.
am_InterruptState_e
This struct holds information about the configuration for notifications.
virtual am_Error_e getListSinkClasses(std::vector< am_SinkClass_s > &listSinkClasses) const =0
returns a list of all sink classes
struct describing source classes
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.
This struct describes the attribiutes of a sink.
This struct holds the payload of a notification.
virtual am_Error_e changeSinkMuteStateDB(const am_MuteState_e muteState, const am_sinkID_t sinkID)=0
changes the mute state of a sink
virtual am_Error_e enterMainConnectionDB(const am_MainConnection_s &mainConnectionData, am_mainConnectionID_t &connectionID)=0
enters a mainconnection in the database, creates and ID
virtual am_Error_e removeConverterDB(const am_converterID_t converterID)=0
removes a converter from the DB
virtual am_Error_e removeSourceClassDB(const am_sourceClass_t sourceClassID)=0
removes a domain from the DB
This struct describes the attribiutes of a domain.
virtual am_Error_e crossfade(am_Handle_s &handle, const am_HotSink_e hotSource, const am_crossfaderID_t crossfaderID, const am_CustomRampType_t rampType, const am_time_t rampTime)=0
triggers a cross fade.
virtual am_Error_e enterGatewayDB(const am_Gateway_s &gatewayData, am_gatewayID_t &gatewayID)=0
enters a gateway in the database.
uint16_t am_crossfaderID_t
a crossfader ID
uint16_t am_CustomConnectionFormat_t
This type classifies the format in which data is exchanged within a connection.
virtual am_Error_e changeSinkClassInfoDB(const am_SinkClass_s &sinkClass)=0
changes class information of a sinkclass.
The am::CAmSocketHandler implements a mainloop for the AudioManager.
uint16_t am_CustomMainSoundPropertyType_t
Here are all SoundProperties that can be set via the CommandInterface.
virtual am_Error_e getSocketHandler(CAmSocketHandler *&socketHandler)=0
This function returns the pointer to the socketHandler.
virtual am_Error_e changeSourceAvailabilityDB(const am_Availability_s &availability, const am_sourceID_t sourceID)=0
changes the availablility of a source
int16_t am_timeSync_t
offset time that is introduced in milli seconds.
virtual am_Error_e setSourceVolume(am_Handle_s &handle, const am_sourceID_t sourceID, const am_volume_t volume, const am_CustomRampType_t rampType, const am_time_t time)=0
with this function, setting of source volumes is done.
virtual am_Error_e getListSourceSoundProperties(const am_sourceID_t sourceID, std::vector< am_SoundProperty_s > &listSoundproperties) const =0
This function retrieves a list of all sink soundproperties with its values.
virtual am_Error_e getListSourcesOfDomain(const am_domainID_t domainID, std::vector< am_sourceID_t > &listSourceID) const =0
returns all source of a domain
struct that holds attribiutes of a mainconnection
virtual am_Error_e changeSinkDB(const am_sinkID_t sinkID, const am_sinkClass_t sinkClassID, const std::vector< am_SoundProperty_s > &listSoundProperties, const std::vector< am_CustomConnectionFormat_t > &listConnectionFormats, const std::vector< am_MainSoundProperty_s > &listMainSoundProperties)=0
Change the data of the sink.
virtual am_Error_e setSinkSoundProperties(am_Handle_s &handle, const am_sinkID_t sinkID, const std::vector< am_SoundProperty_s > &soundProperty)=0
is used to set several sinkSoundProperties at a time
virtual am_Error_e changeMainSourceSoundPropertyDB(const am_MainSoundProperty_s &soundProperty, const am_sourceID_t sourceID)=0
changes the mainsourcesoundproperty of a sink
virtual am_Error_e removeDomainDB(const am_domainID_t domainID)=0
removes a domain from the DB
virtual am_Error_e removeSourceDB(const am_sourceID_t sourceID)=0
removes a source from the DB
virtual am_Error_e changeSinkMainVolumeDB(const am_mainVolume_t mainVolume, const am_sinkID_t sinkID)=0
changes the sink volume of a sink
virtual am_Error_e getConverterInfoDB(const am_converterID_t converterID, am_Converter_s &converterData) const =0
return source and sink of a converter
virtual am_Error_e setSourceSoundProperties(am_Handle_s &handle, const am_sourceID_t sourceID, const std::vector< am_SoundProperty_s > &soundProperty)=0
is used to set several SourceSoundProperties at a time
virtual am_Error_e getListSinkSoundProperties(const am_sinkID_t sinkID, std::vector< am_SoundProperty_s > &listSoundproperties) const =0
This function retrieves a list of all sink soundproperties with its values.
virtual void setCommandReady()=0
sets the command interface to ready.
struct describing system properties
uint16_t am_converterID_t
a converter ID
virtual am_Error_e enterSystemPropertiesListDB(const std::vector< am_SystemProperty_s > &listSystemProperties)=0
This function is used to enter the system Properties into the database.
virtual am_Error_e getListConnections(std::vector< am_Connection_s > &listConnections) const =0
returns a complete list of all Connections
struct describung mainsound property
virtual am_Error_e setVolumes(am_Handle_s &handle, const std::vector< am_Volumes_s > &listVolumes)=0
with this function, setting of multiple volumes at a time is done.
virtual void sendMainSinkNotificationPayload(const am_sinkID_t sinkID, const am_NotificationPayload_s &notificationPayload)=0
Sends out the main notificiation of a sink.
virtual void confirmControllerReady(const am_Error_e error)=0
acknowledges the setControllerReady call.
virtual am_Error_e getMainSinkSoundPropertyValue(const am_sinkID_t sinkID, const am_CustomMainSoundPropertyType_t propertyType, int16_t &value) const =0
This function retrieves the value of a sink Mainsoundproperty.
virtual void setCommandRundown()=0
sets the command interface into the rundown state.
a handle is used for asynchronous operations and is uniquely assigned for each of this operations ...
virtual am_Error_e getListSinksOfDomain(const am_domainID_t domainID, std::vector< am_sinkID_t > &listSinkID) const =0
returns all sinks of a domain
uint16_t am_sourceID_t
a source ID
struct describing the sound property
virtual am_Error_e getSinkSoundPropertyValue(const am_sinkID_t sinkID, const am_CustomSoundPropertyType_t propertyType, int16_t &value) const =0
This function retrieves the value of a sink soundproperty.
virtual am_Error_e changeSourceClassInfoDB(const am_SourceClass_s &sourceClass)=0
changes class information of a sourceClass.
virtual am_Error_e getListSystemProperties(std::vector< am_SystemProperty_s > &listSystemProperties) const =0
returns the list of SystemProperties
virtual am_Error_e changeSinkAvailabilityDB(const am_Availability_s &availability, const am_sinkID_t sinkID)=0
changes the availablility of a sink
struct describing sinkclasses
virtual am_Error_e disconnect(am_Handle_s &handle, const am_connectionID_t connectionID)=0
is used to disconnect a connection
virtual am_Error_e enterSinkClassDB(const am_SinkClass_s &sinkClass, am_sinkClass_t &sinkClassID)=0
Enters a sourceClass into the database.
virtual am_Error_e enterConverterDB(const am_Converter_s &converterData, am_converterID_t &converterID)=0
enters a converter in the database.
virtual void sendMainSourceNotificationPayload(const am_sourceID_t sourceID, const am_NotificationPayload_s &notificationPayload)=0
Sends out the main notificiation of a source.
virtual ~IAmControlReceive()
Definition: IAmControl.h:64
virtual am_Error_e enterDomainDB(const am_Domain_s &domainData, am_domainID_t &domainID)=0
enters a domain in the database, creates and ID
virtual am_Error_e changeConverterDB(const am_converterID_t converterID, const std::vector< am_CustomConnectionFormat_t > &listSourceConnectionFormats, const std::vector< am_CustomConnectionFormat_t > &listSinkConnectionFormats, const std::vector< bool > &convertionMatrix)=0
changes converter Data
virtual am_Error_e changeMainSourceNotificationConfigurationDB(const am_sourceID_t sourceID, const am_NotificationConfiguration_s &mainNotificationConfiguration)=0
change the mainNotificationConfiguration of a source
am_ConnectionState_e
represents the connection state
virtual am_Error_e removeSinkDB(const am_sinkID_t sinkID)=0
removes a sink from the DB
This struct describes the attributes of a converter.
virtual am_Error_e changeMainSinkSoundPropertyDB(const am_MainSoundProperty_s &soundProperty, const am_sinkID_t sinkID)=0
changes the mainsinksoundproperty of a sink
This interface is presented by the AudioManager controller.
Definition: IAmControl.h:675
a list of routing elements that lead from source to sink
virtual am_Error_e enterSourceDB(const am_Source_s &sourceData, am_sourceID_t &sourceID)=0
enters a source in the database.
am_HotSink_e
describes the active sink of a crossfader.
virtual am_Error_e enterSinkDB(const am_Sink_s &sinkData, am_sinkID_t &sinkID)=0
enters a sink in the database.
int16_t am_volume_t
The unit is 0.1 db steps,The smallest value -3000 (=AM_MUTE).
This struct describes the attribiutes of a crossfader.
virtual am_Error_e getListGatewaysOfDomain(const am_domainID_t domainID, std::vector< am_gatewayID_t > &listGatewaysID) const =0
returns all gateways of a domain
virtual am_Error_e getListSourceClasses(std::vector< am_SourceClass_s > &listSourceClasses) const =0
returns a list of all source classes
virtual am_Error_e getListMainSinkSoundProperties(const am_sinkID_t sinkID, std::vector< am_MainSoundProperty_s > &listSoundproperties) const =0
This function retrieves a list of all sink mainsoundproperties with its values.
virtual am_Error_e changDomainStateDB(const am_DomainState_e domainState, const am_domainID_t domainID)=0
changes the domainstate of a domain
virtual am_Error_e getSourceSoundPropertyValue(const am_sourceID_t sourceID, const am_CustomSoundPropertyType_t propertyType, int16_t &value) const =0
This function retrieves the value of a source soundproperty.
virtual am_Error_e connect(am_Handle_s &handle, am_connectionID_t &connectionID, const am_CustomConnectionFormat_t format, const am_sourceID_t sourceID, const am_sinkID_t sinkID)=0
With this function, elementary connects can be triggered by the controller.
Copyright (C) 2012 - 2014, BMW AG.
uint16_t am_sourceClass_t
virtual am_Error_e changeMainSinkNotificationConfigurationDB(const am_sinkID_t sinkID, const am_NotificationConfiguration_s &mainNotificationConfiguration)=0
change the mainNotificationConfiguration of a sink
virtual am_Error_e changeMainConnectionStateDB(const am_mainConnectionID_t mainconnectionID, const am_ConnectionState_e connectionState)=0
changes the mainConnectionState of MainConnection
virtual am_Error_e changeSystemPropertyDB(const am_SystemProperty_s &property)=0
changes a systemProperty
this describes the availability of a sink or a source together with the latest change ...
virtual am_Error_e getListCrossfaders(std::vector< am_Crossfader_s > &listCrossfaders) const =0
returns a list of all crossfaders
This struct describes the attributes of a gateway.
virtual am_Error_e getSourceClassInfoDB(const am_sourceID_t sourceID, am_SourceClass_s &classInfo) const =0
returns the ClassInformation of a source
This interface gives access to all important functions of the audiomanager that are used by the Audio...
Definition: IAmControl.h:56
virtual am_Error_e getListMainConnections(std::vector< am_MainConnection_s > &listMainConnections) const =0
returns a complete list of all MainConnections
virtual void getInterfaceVersion(std::string &version) const =0
This function returns the version of the interface.
uint16_t am_time_t
time in ms!
virtual am_Error_e removeGatewayDB(const am_gatewayID_t gatewayID)=0
removes a gateway from the DB
virtual am_Error_e getListConvertersOfDomain(const am_domainID_t domainID, std::vector< am_converterID_t > &listConverterID) const =0
returns all converters of a domain
virtual am_Error_e setDomainState(const am_domainID_t domainID, const am_DomainState_e domainState)=0
sets the domain state of a domain
virtual ~IAmControlSend()
Definition: IAmControl.h:683
virtual am_Error_e removeHandle(const am_Handle_s handle)=0
This function searches for a handle in the RoutingSender and removes it if found. ...
virtual am_Error_e changeMainConnectionRouteDB(const am_mainConnectionID_t mainconnectionID, const std::vector< am_connectionID_t > &listConnectionID)=0
changes the mainConnectionState of MainConnection
uint16_t am_speed_t
speed
uint16_t am_domainID_t
a domain ID
int16_t am_mainVolume_t
This is the volume presented on the command interface.
virtual am_Error_e getListSinks(std::vector< am_Sink_s > &listSinks) const =0
returns a list of all sinks
virtual am_Error_e changeSourceDB(const am_sourceID_t sourceID, const am_sourceClass_t sourceClassID, const std::vector< am_SoundProperty_s > &listSoundProperties, const std::vector< am_CustomConnectionFormat_t > &listConnectionFormats, const std::vector< am_MainSoundProperty_s > &listMainSoundProperties)=0
Change the data of the source.
virtual am_Error_e changeGatewayDB(const am_gatewayID_t gatewayID, const std::vector< am_CustomConnectionFormat_t > &listSourceConnectionFormats, const std::vector< am_CustomConnectionFormat_t > &listSinkConnectionFormats, const std::vector< bool > &convertionMatrix)=0
changes Gateway Data
virtual void setRoutingReady()=0
sets the routinginterface to ready.
virtual am_Error_e getSourceInfoDB(const am_sourceID_t sourceID, am_Source_s &sourceData) const =0
returns the sourcekData of a source
uint16_t am_gatewayID_t
a gateway ID
virtual am_Error_e setSourceState(am_Handle_s &handle, const am_sourceID_t sourceID, const am_SourceState_e state)=0
this method sets a source state for a source.
This struct describes the attribiutes of a source.
uint16_t am_CustomRampType_t
The given ramp types here are just examples.
virtual am_Error_e getGatewayInfoDB(const am_gatewayID_t gatewayID, am_Gateway_s &gatewayData) const =0
return source and sink of a gateway
virtual am_Error_e getRoute(const bool onlyfree, const am_sourceID_t sourceID, const am_sinkID_t sinkID, std::vector< am_Route_s > &returnList)=0
calculates a route from source to sink.
virtual void setRoutingRundown()=0
sets the routinginterface to the rundown state.
uint16_t am_sinkID_t
a sink ID
uint16_t am_mainConnectionID_t
a mainConnection ID
virtual am_Error_e getListHandles(std::vector< am_Handle_s > &listHandles) const =0
returns a list of all handles
virtual am_Error_e getListSources(std::vector< am_Source_s > &listSources) const =0
returns a list of all sources
virtual am_Error_e removeCrossfaderDB(const am_crossfaderID_t crossfaderID)=0
removes a crossfader from the DB
virtual am_Error_e abortAction(const am_Handle_s handle)=0
with this method, all actions that have a handle assigned can be stopped.
virtual am_Error_e getCrossfaderInfoDB(const am_crossfaderID_t crossfaderID, am_Crossfader_s &crossfaderData) const =0
returns sources and the sink of a crossfader
am_SourceState_e
The source state reflects the state of the source.
virtual am_Error_e setSourceSoundProperty(am_Handle_s &handle, const am_sourceID_t sourceID, const am_SoundProperty_s &soundProperty)=0
is used to set sourceSoundProperties
virtual am_Error_e getListDomains(std::vector< am_Domain_s > &listDomains) const =0
returns a complete list of all domains
virtual am_Error_e getListCrossfadersOfDomain(const am_domainID_t domainID, std::vector< am_crossfaderID_t > &listCrossfadersID) const =0
returns all crossfaders of a domain
virtual am_Error_e getListGateways(std::vector< am_Gateway_s > &listGateways) const =0
returns a list of gateways
virtual am_Error_e setSinkSoundProperty(am_Handle_s &handle, const am_sinkID_t sinkID, const am_SoundProperty_s &soundProperty)=0
is used to set sinkSoundProperties
virtual am_Error_e removeSinkClassDB(const am_sinkClass_t sinkClassID)=0
removes a domain from the DB
virtual am_Error_e enterCrossfaderDB(const am_Crossfader_s &crossfaderData, am_crossfaderID_t &crossfaderID)=0
enters a crossfader in the database.
virtual am_Error_e setSinkNotificationConfiguration(am_Handle_s &handle, const am_sinkID_t sinkID, const am_NotificationConfiguration_s &notificationConfiguration)=0
set a sink notification configuration
virtual am_Error_e setSourceNotificationConfiguration(am_Handle_s &handle, const am_sourceID_t sourceID, const am_NotificationConfiguration_s &notificationConfiguration)=0
set a source notification configuration