/* * This file was generated by the CommonAPI Generators. * Used org.genivi.commonapi.core 2.1.6.v20150127. * Used org.franca.core 0.8.10.201309262002. * * */ /** * The interface towards the Controlling Instance (e.g HMI). It handles the * communication towards the HMI and other system components who need to interact * with the audiomanagement. There are two rules that have to be kept in mind * when implementing against this interface: * @author Christian Mueller */ #ifndef ORG_GENIVI_AM_Command_Control_DBUS_PROXY_H_ #define ORG_GENIVI_AM_Command_Control_DBUS_PROXY_H_ #include #if !defined (COMMONAPI_INTERNAL_COMPILATION) #define COMMONAPI_INTERNAL_COMPILATION #endif #include #include #include #undef COMMONAPI_INTERNAL_COMPILATION #include namespace org { namespace genivi { namespace am { class CommandControlDBusProxy: virtual public CommandControlProxyBase, virtual public CommonAPI::DBus::DBusProxy { public: CommandControlDBusProxy( const std::shared_ptr& factory, const std::string& commonApiAddress, const std::string& interfaceName, const std::string& busName, const std::string& objectPath, const std::shared_ptr& dbusProxyconnection); virtual ~CommandControlDBusProxy() { } virtual NewMainConnectionEvent& getNewMainConnectionEvent(); virtual RemovedMainConnectionEvent& getRemovedMainConnectionEvent(); virtual NewSinkEvent& getNewSinkEvent(); virtual RemovedSinkEvent& getRemovedSinkEvent(); virtual NewSourceEvent& getNewSourceEvent(); virtual RemovedSourceEvent& getRemovedSourceEvent(); virtual NumberOfSinkClassesChangedEvent& getNumberOfSinkClassesChangedEvent(); virtual NumberOfSourceClassesChangedEvent& getNumberOfSourceClassesChangedEvent(); virtual MainConnectionStateChangedEvent& getMainConnectionStateChangedEvent(); virtual MainSinkSoundPropertyChangedEvent& getMainSinkSoundPropertyChangedEvent(); virtual MainSourceSoundPropertyChangedEvent& getMainSourceSoundPropertyChangedEvent(); virtual SinkAvailabilityChangedEvent& getSinkAvailabilityChangedEvent(); virtual SourceAvailabilityChangedEvent& getSourceAvailabilityChangedEvent(); virtual VolumeChangedEvent& getVolumeChangedEvent(); virtual SinkMuteStateChangedEvent& getSinkMuteStateChangedEvent(); virtual SystemPropertyChangedEvent& getSystemPropertyChangedEvent(); virtual TimingInformationChangedEvent& getTimingInformationChangedEvent(); virtual SinkUpdatedEvent& getSinkUpdatedEvent(); virtual SourceUpdatedEvent& getSourceUpdatedEvent(); virtual SinkNotificationEvent& getSinkNotificationEvent(); virtual SourceNotificationEvent& getSourceNotificationEvent(); virtual MainSinkNotificationConfigurationChangedEvent& getMainSinkNotificationConfigurationChangedEvent(); virtual MainSourceNotificationConfigurationChangedEvent& getMainSourceNotificationConfigurationChangedEvent(); /** * connects a source to sink (at)return E_OK on success, E_NOT_POSSIBLE on * failure, E_ALREADY_EXISTS if the connection does already exists */ virtual void connect(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_mainConnectionID_t& mainConnectionID, am_Error_e& error); virtual std::future connectAsync(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, ConnectAsyncCallback callback); /** * disconnects a mainConnection (at)return E_OK on successes, E_NON_EXISTENT if * the connection does not exist, E_NOT_POSSIBLE on error. */ virtual void disconnect(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future disconnectAsync(const am_mainConnectionID_t& mainConnectionID, DisconnectAsyncCallback callback); /** * sets the volume for a sink (at)return E_OK on success, E_UNKOWN on error, * E_OUT_OF_RANGE in case the value is out of range */ virtual void setVolume(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future setVolumeAsync(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, SetVolumeAsyncCallback callback); /** * This function is used to increment or decrement the current volume for a * sink. (at)return E_OK on success, E_UNKNOWN on error and E_OUT_OF_RANGE if the * value is not in the given volume range. */ virtual void volumeStep(const am_sinkID_t& sinkID, const int16_t& volStep, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future volumeStepAsync(const am_sinkID_t& sinkID, const int16_t& volStep, VolumeStepAsyncCallback callback); /** * sets the mute state of a sink (at)return E_OK on success, E_UNKNOWN on error. * If the mute state is already the desired one, the Daemon will return E_OK. */ virtual void setSinkMuteState(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future setSinkMuteStateAsync(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, SetSinkMuteStateAsyncCallback callback); /** * This method is used to set sound properties, e.g. Equalizer Values. Since the * capabilities of the system can differ, the exact key value pairs can be * extended in each product (at)return E_OK on success, E_OUT_OF_RANGE if value * exceeds range, E_UNKNOWN in case of an error */ virtual void setMainSinkSoundProperty(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future setMainSinkSoundPropertyAsync(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, SetMainSinkSoundPropertyAsyncCallback callback); /** * This method is used to set sound properties, e.g. Equalizer Values. Since the * capabilities of the system can differ, the exact key value pairs can be * extended in each product (at)return E_OK on success, E_OUT_OF_RANGE if value * exceeds range, E_UNKNOWN in case of an error */ virtual void setMainSourceSoundProperty(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future setMainSourceSoundPropertyAsync(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, SetMainSourceSoundPropertyAsyncCallback callback); /** * is used to set a specific system property. (at)return E_OK on success, * E_OUT_OF_RANGE if value exceeds range, E_UNKNOWN in case of an error */ virtual void setSystemProperty(const am_SystemProperty_s& property, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future setSystemPropertyAsync(const am_SystemProperty_s& property, SetSystemPropertyAsyncCallback callback); /** * returns the actual list of MainConnections (at)return E_OK on success, * E_DATABASE_ERROR on error */ virtual void getListMainConnections(CommonAPI::CallStatus& callStatus, am_MainConnection_L& listConnections, am_Error_e& error); virtual std::future getListMainConnectionsAsync(GetListMainConnectionsAsyncCallback callback); /** * returns the actual list of Sinks (at)return E_OK on success, E_DATABASE_ERROR * on error */ virtual void getListMainSinks(CommonAPI::CallStatus& callStatus, am_SinkType_L& listMainSinks, am_Error_e& error); virtual std::future getListMainSinksAsync(GetListMainSinksAsyncCallback callback); /** * returns the actual list of Sources (at)return E_OK on success, E_DATABASE_ERROR * on error */ virtual void getListMainSources(CommonAPI::CallStatus& callStatus, am_SourceType_L& listMainSources, am_Error_e& error); virtual std::future getListMainSourcesAsync(GetListMainSourcesAsyncCallback callback); /** * This is used to retrieve all source sound properties related to a source. * Returns a vector of the sound properties and values as pair (at)return E_OK on * success, E_DATABASE_ERROR on error */ virtual void getListMainSinkSoundProperties(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error); virtual std::future getListMainSinkSoundPropertiesAsync(const am_sinkID_t& sinkID, GetListMainSinkSoundPropertiesAsyncCallback callback); /** * This is used to retrieve all source sound properties related to a * source. (at)return E_OK on success, E_DATABASE_ERROR on error */ virtual void getListMainSourceSoundProperties(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error); virtual std::future getListMainSourceSoundPropertiesAsync(const am_sourceID_t& sourceID, GetListMainSourceSoundPropertiesAsyncCallback callback); /** * This is used to retrieve SourceClass Information of all source classes * (at)return E_OK on success, E_DATABASE_ERROR on error */ virtual void getListSourceClasses(CommonAPI::CallStatus& callStatus, am_SourceClass_L& listSourceClasses, am_Error_e& error); virtual std::future getListSourceClassesAsync(GetListSourceClassesAsyncCallback callback); /** * This is used to retrieve SinkClass Information of all sink classes (at)return * E_OK on success, E_DATABASE_ERROR on error */ virtual void getListSinkClasses(CommonAPI::CallStatus& callStatus, am_SinkClass_L& listSinkClasses, am_Error_e& error); virtual std::future getListSinkClassesAsync(GetListSinkClassesAsyncCallback callback); /** * Retrieves a complete list of all systemProperties. (at)return E_OK on success, * E_DATABASE_ERROR on error */ virtual void getListSystemProperties(CommonAPI::CallStatus& callStatus, am_SystemProperty_L& listSystemProperties, am_Error_e& error); virtual std::future getListSystemPropertiesAsync(GetListSystemPropertiesAsyncCallback callback); /** * returns the delay in ms that the audiopath for the given mainConnection * has (at)return E_OK on success, E_NOT_POSSIBLE if timing information is not * yet retrieved, E_DATABASE_ERROR on read error on the database */ virtual void getTimingInformation(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_timeSync_t& delay, am_Error_e& error); virtual std::future getTimingInformationAsync(const am_mainConnectionID_t& mainConnectionID, GetTimingInformationAsyncCallback callback); /** * Retrieves the list of MainNotifications for a sink. Does not return the * possible ones. */ virtual void getListMainSinkNotificationConfigurations(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error); virtual std::future getListMainSinkNotificationConfigurationsAsync(const am_sinkID_t& sinkID, GetListMainSinkNotificationConfigurationsAsyncCallback callback); /** * Retrieves the list of MainNotifications for a source. Does not return the * possible ones. */ virtual void getListMainSourceNotificationConfigurations(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error); virtual std::future getListMainSourceNotificationConfigurationsAsync(const am_sourceID_t& sourceID, GetListMainSourceNotificationConfigurationsAsyncCallback callback); /** * sets a MainNotificationConfiuration. This can be used to turn on an off * notifications an to change the mode of the configuration. (at)return E_OK on * success, E_NON_EXISTENT if sinkID does not exists, E_DATABASE_ERROR on error */ virtual void setMainSinkNotificationConfiguration(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future setMainSinkNotificationConfigurationAsync(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSinkNotificationConfigurationAsyncCallback callback); /** * sets a MainNotificationConfiuration. This can be used to turn on an off * notifications an to change the mode of the configuration. (at)return E_OK on * success, E_NON_EXISTENT if sourceID does not exists, E_DATABASE_ERROR on error */ virtual void setMainSourceNotificationConfiguration(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error); virtual std::future setMainSourceNotificationConfigurationAsync(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSourceNotificationConfigurationAsyncCallback callback); virtual void getOwnVersion(uint16_t& ownVersionMajor, uint16_t& ownVersionMinor) const; private: CommonAPI::DBus::DBusEvent newMainConnection_; CommonAPI::DBus::DBusEvent removedMainConnection_; CommonAPI::DBus::DBusEvent newSink_; CommonAPI::DBus::DBusEvent removedSink_; CommonAPI::DBus::DBusEvent newSource_; CommonAPI::DBus::DBusEvent removedSource_; CommonAPI::DBus::DBusEvent numberOfSinkClassesChanged_; CommonAPI::DBus::DBusEvent numberOfSourceClassesChanged_; CommonAPI::DBus::DBusEvent mainConnectionStateChanged_; CommonAPI::DBus::DBusEvent mainSinkSoundPropertyChanged_; CommonAPI::DBus::DBusEvent mainSourceSoundPropertyChanged_; CommonAPI::DBus::DBusEvent sinkAvailabilityChanged_; CommonAPI::DBus::DBusEvent sourceAvailabilityChanged_; CommonAPI::DBus::DBusEvent volumeChanged_; CommonAPI::DBus::DBusEvent sinkMuteStateChanged_; CommonAPI::DBus::DBusEvent systemPropertyChanged_; CommonAPI::DBus::DBusEvent timingInformationChanged_; CommonAPI::DBus::DBusEvent sinkUpdated_; CommonAPI::DBus::DBusEvent sourceUpdated_; CommonAPI::DBus::DBusEvent sinkNotification_; CommonAPI::DBus::DBusEvent sourceNotification_; CommonAPI::DBus::DBusEvent mainSinkNotificationConfigurationChanged_; CommonAPI::DBus::DBusEvent mainSourceNotificationConfigurationChanged_; }; } // namespace am } // namespace genivi } // namespace org #endif // ORG_GENIVI_AM_Command_Control_DBUS_PROXY_H_