summaryrefslogtreecommitdiff
path: root/PluginCommandInterfaceCAPI/src-gen/org/genivi/am
diff options
context:
space:
mode:
Diffstat (limited to 'PluginCommandInterfaceCAPI/src-gen/org/genivi/am')
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControl.h67
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.cpp651
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.h266
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.cpp1096
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.h422
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxy.h1194
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxyBase.h348
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStub.h492
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.cpp456
-rw-r--r--PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.h336
10 files changed, 5328 insertions, 0 deletions
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControl.h b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControl.h
new file mode 100644
index 0000000..106e5ad
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControl.h
@@ -0,0 +1,67 @@
+/*
+* 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_H_
+#define ORG_GENIVI_AM_Command_Control_H_
+
+
+
+
+#if !defined (COMMONAPI_INTERNAL_COMPILATION)
+#define COMMONAPI_INTERNAL_COMPILATION
+#endif
+
+#include <CommonAPI/types.h>
+
+#undef COMMONAPI_INTERNAL_COMPILATION
+
+namespace org {
+namespace genivi {
+namespace am {
+
+class CommandControl {
+ public:
+ virtual ~CommandControl() { }
+
+ static inline const char* getInterfaceId();
+ static inline CommonAPI::Version getInterfaceVersion();
+};
+
+const char* CommandControl::getInterfaceId() {
+ static const char* interfaceId = "org.genivi.am.CommandControl";
+ return interfaceId;
+}
+
+CommonAPI::Version CommandControl::getInterfaceVersion() {
+ return CommonAPI::Version(2, 0);
+}
+
+
+} // namespace am
+} // namespace genivi
+} // namespace org
+
+namespace CommonAPI {
+
+}
+
+
+namespace std {
+ //hashes for types
+
+ //hashes for error types
+}
+
+#endif // ORG_GENIVI_AM_Command_Control_H_
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.cpp b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.cpp
new file mode 100644
index 0000000..bf46af3
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.cpp
@@ -0,0 +1,651 @@
+/*
+* 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
+ */
+#include "CommandControlDBusProxy.h"
+
+namespace org {
+namespace genivi {
+namespace am {
+
+std::shared_ptr<CommonAPI::DBus::DBusProxy> createCommandControlDBusProxy(
+ const std::shared_ptr<CommonAPI::DBus::DBusFactory>& factory,
+ const std::string& commonApiAddress,
+ const std::string& interfaceName,
+ const std::string& busName,
+ const std::string& objectPath,
+ const std::shared_ptr<CommonAPI::DBus::DBusProxyConnection>& dbusProxyConnection) {
+ return std::make_shared<CommandControlDBusProxy>(factory, commonApiAddress, interfaceName, busName, objectPath, dbusProxyConnection);
+}
+
+INITIALIZER(registerCommandControlDBusProxy) {
+ CommonAPI::DBus::DBusFactory::registerProxyFactoryMethod(CommandControl::getInterfaceId(),
+ &createCommandControlDBusProxy);
+}
+
+CommandControlDBusProxy::CommandControlDBusProxy(
+ const std::shared_ptr<CommonAPI::DBus::DBusFactory>& factory,
+ const std::string& commonApiAddress,
+ const std::string& interfaceName,
+ const std::string& busName,
+ const std::string& objectPath,
+ const std::shared_ptr<CommonAPI::DBus::DBusProxyConnection>& dbusProxyconnection):
+ CommonAPI::DBus::DBusProxy(factory, commonApiAddress, interfaceName, busName, objectPath, dbusProxyconnection)
+, newMainConnection_(*this, "newMainConnection", "(qqqni)"),
+ removedMainConnection_(*this, "removedMainConnection", "q"),
+ newSink_(*this, "newSink", "(qs(iq)niq)"),
+ removedSink_(*this, "removedSink", "q"),
+ newSource_(*this, "newSource", "(qs(iq)q)"),
+ removedSource_(*this, "removedSource", "q"),
+ numberOfSinkClassesChanged_(*this, "numberOfSinkClassesChanged", ""),
+ numberOfSourceClassesChanged_(*this, "numberOfSourceClassesChanged", ""),
+ mainConnectionStateChanged_(*this, "mainConnectionStateChanged", "qi"),
+ mainSinkSoundPropertyChanged_(*this, "mainSinkSoundPropertyChanged", "q(qn)"),
+ mainSourceSoundPropertyChanged_(*this, "mainSourceSoundPropertyChanged", "q(qn)"),
+ sinkAvailabilityChanged_(*this, "sinkAvailabilityChanged", "q(iq)"),
+ sourceAvailabilityChanged_(*this, "sourceAvailabilityChanged", "q(iq)"),
+ volumeChanged_(*this, "volumeChanged", "qn"),
+ sinkMuteStateChanged_(*this, "sinkMuteStateChanged", "qi"),
+ systemPropertyChanged_(*this, "systemPropertyChanged", "(qn)"),
+ timingInformationChanged_(*this, "timingInformationChanged", "qn"),
+ sinkUpdated_(*this, "sinkUpdated", "qqa(qn)"),
+ sourceUpdated_(*this, "sourceUpdated", "qqa(qn)"),
+ sinkNotification_(*this, "sinkNotification", "q(qn)"),
+ sourceNotification_(*this, "sourceNotification", "q(qn)"),
+ mainSinkNotificationConfigurationChanged_(*this, "mainSinkNotificationConfigurationChanged", "q(qin)"),
+ mainSourceNotificationConfigurationChanged_(*this, "mainSourceNotificationConfigurationChanged", "q(qin)")
+ {
+ }
+
+
+CommandControlDBusProxy::NewMainConnectionEvent& CommandControlDBusProxy::getNewMainConnectionEvent() {
+ return newMainConnection_;
+}
+CommandControlDBusProxy::RemovedMainConnectionEvent& CommandControlDBusProxy::getRemovedMainConnectionEvent() {
+ return removedMainConnection_;
+}
+CommandControlDBusProxy::NewSinkEvent& CommandControlDBusProxy::getNewSinkEvent() {
+ return newSink_;
+}
+CommandControlDBusProxy::RemovedSinkEvent& CommandControlDBusProxy::getRemovedSinkEvent() {
+ return removedSink_;
+}
+CommandControlDBusProxy::NewSourceEvent& CommandControlDBusProxy::getNewSourceEvent() {
+ return newSource_;
+}
+CommandControlDBusProxy::RemovedSourceEvent& CommandControlDBusProxy::getRemovedSourceEvent() {
+ return removedSource_;
+}
+CommandControlDBusProxy::NumberOfSinkClassesChangedEvent& CommandControlDBusProxy::getNumberOfSinkClassesChangedEvent() {
+ return numberOfSinkClassesChanged_;
+}
+CommandControlDBusProxy::NumberOfSourceClassesChangedEvent& CommandControlDBusProxy::getNumberOfSourceClassesChangedEvent() {
+ return numberOfSourceClassesChanged_;
+}
+CommandControlDBusProxy::MainConnectionStateChangedEvent& CommandControlDBusProxy::getMainConnectionStateChangedEvent() {
+ return mainConnectionStateChanged_;
+}
+CommandControlDBusProxy::MainSinkSoundPropertyChangedEvent& CommandControlDBusProxy::getMainSinkSoundPropertyChangedEvent() {
+ return mainSinkSoundPropertyChanged_;
+}
+CommandControlDBusProxy::MainSourceSoundPropertyChangedEvent& CommandControlDBusProxy::getMainSourceSoundPropertyChangedEvent() {
+ return mainSourceSoundPropertyChanged_;
+}
+CommandControlDBusProxy::SinkAvailabilityChangedEvent& CommandControlDBusProxy::getSinkAvailabilityChangedEvent() {
+ return sinkAvailabilityChanged_;
+}
+CommandControlDBusProxy::SourceAvailabilityChangedEvent& CommandControlDBusProxy::getSourceAvailabilityChangedEvent() {
+ return sourceAvailabilityChanged_;
+}
+CommandControlDBusProxy::VolumeChangedEvent& CommandControlDBusProxy::getVolumeChangedEvent() {
+ return volumeChanged_;
+}
+CommandControlDBusProxy::SinkMuteStateChangedEvent& CommandControlDBusProxy::getSinkMuteStateChangedEvent() {
+ return sinkMuteStateChanged_;
+}
+CommandControlDBusProxy::SystemPropertyChangedEvent& CommandControlDBusProxy::getSystemPropertyChangedEvent() {
+ return systemPropertyChanged_;
+}
+CommandControlDBusProxy::TimingInformationChangedEvent& CommandControlDBusProxy::getTimingInformationChangedEvent() {
+ return timingInformationChanged_;
+}
+CommandControlDBusProxy::SinkUpdatedEvent& CommandControlDBusProxy::getSinkUpdatedEvent() {
+ return sinkUpdated_;
+}
+CommandControlDBusProxy::SourceUpdatedEvent& CommandControlDBusProxy::getSourceUpdatedEvent() {
+ return sourceUpdated_;
+}
+CommandControlDBusProxy::SinkNotificationEvent& CommandControlDBusProxy::getSinkNotificationEvent() {
+ return sinkNotification_;
+}
+CommandControlDBusProxy::SourceNotificationEvent& CommandControlDBusProxy::getSourceNotificationEvent() {
+ return sourceNotification_;
+}
+CommandControlDBusProxy::MainSinkNotificationConfigurationChangedEvent& CommandControlDBusProxy::getMainSinkNotificationConfigurationChangedEvent() {
+ return mainSinkNotificationConfigurationChanged_;
+}
+CommandControlDBusProxy::MainSourceNotificationConfigurationChangedEvent& CommandControlDBusProxy::getMainSourceNotificationConfigurationChangedEvent() {
+ return mainSourceNotificationConfigurationChanged_;
+}
+
+/**
+ * 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
+ */
+void CommandControlDBusProxy::connect(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_mainConnectionID_t& mainConnectionID, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_sinkID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t, am_Error_e> >::callMethodWithReply(
+ *this,
+ "connect",
+ "qq",
+ sourceID, sinkID,
+ callStatus
+ , mainConnectionID, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::connectAsync(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, ConnectAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_sinkID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t, am_Error_e> >::callMethodAsync(
+ *this,
+ "connect",
+ "qq",
+ sourceID, sinkID,
+ std::move(callback));
+}
+/**
+ * disconnects a mainConnection
+(at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+void CommandControlDBusProxy::disconnect(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "disconnect",
+ "q",
+ mainConnectionID,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::disconnectAsync(const am_mainConnectionID_t& mainConnectionID, DisconnectAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "disconnect",
+ "q",
+ mainConnectionID,
+ std::move(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
+ */
+void CommandControlDBusProxy::setVolume(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_mainVolume_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "setVolume",
+ "qn",
+ sinkID, volume,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::setVolumeAsync(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, SetVolumeAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_mainVolume_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "setVolume",
+ "qn",
+ sinkID, volume,
+ std::move(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.
+ */
+void CommandControlDBusProxy::volumeStep(const am_sinkID_t& sinkID, const int16_t& volStep, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, int16_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "volumeStep",
+ "qn",
+ sinkID, volStep,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::volumeStepAsync(const am_sinkID_t& sinkID, const int16_t& volStep, VolumeStepAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, int16_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "volumeStep",
+ "qn",
+ sinkID, volStep,
+ std::move(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.
+ */
+void CommandControlDBusProxy::setSinkMuteState(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_MuteState_e>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "setSinkMuteState",
+ "qi",
+ sinkID, muteState,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::setSinkMuteStateAsync(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, SetSinkMuteStateAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_MuteState_e>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "setSinkMuteState",
+ "qi",
+ sinkID, muteState,
+ std::move(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
+ */
+void CommandControlDBusProxy::setMainSinkSoundProperty(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_MainSoundProperty_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "setMainSinkSoundProperty",
+ "q(qn)",
+ sinkID, soundProperty,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::setMainSinkSoundPropertyAsync(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, SetMainSinkSoundPropertyAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_MainSoundProperty_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "setMainSinkSoundProperty",
+ "q(qn)",
+ sinkID, soundProperty,
+ std::move(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
+ */
+void CommandControlDBusProxy::setMainSourceSoundProperty(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_MainSoundProperty_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "setMainSourceSoundProperty",
+ "q(qn)",
+ sourceID, soundProperty,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::setMainSourceSoundPropertyAsync(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, SetMainSourceSoundPropertyAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_MainSoundProperty_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "setMainSourceSoundProperty",
+ "q(qn)",
+ sourceID, soundProperty,
+ std::move(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
+ */
+void CommandControlDBusProxy::setSystemProperty(const am_SystemProperty_s& property, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_SystemProperty_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "setSystemProperty",
+ "(qn)",
+ property,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::setSystemPropertyAsync(const am_SystemProperty_s& property, SetSystemPropertyAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_SystemProperty_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "setSystemProperty",
+ "(qn)",
+ property,
+ std::move(callback));
+}
+/**
+ * returns the actual list of MainConnections
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+void CommandControlDBusProxy::getListMainConnections(CommonAPI::CallStatus& callStatus, am_MainConnection_L& listConnections, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_MainConnection_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListMainConnections",
+ "",
+ callStatus
+ , listConnections, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListMainConnectionsAsync(GetListMainConnectionsAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_MainConnection_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListMainConnections",
+ "",
+ std::move(callback));
+}
+/**
+ * returns the actual list of Sinks
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+void CommandControlDBusProxy::getListMainSinks(CommonAPI::CallStatus& callStatus, am_SinkType_L& listMainSinks, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SinkType_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListMainSinks",
+ "",
+ callStatus
+ , listMainSinks, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListMainSinksAsync(GetListMainSinksAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SinkType_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListMainSinks",
+ "",
+ std::move(callback));
+}
+/**
+ * returns the actual list of Sources
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+void CommandControlDBusProxy::getListMainSources(CommonAPI::CallStatus& callStatus, am_SourceType_L& listMainSources, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SourceType_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListMainSources",
+ "",
+ callStatus
+ , listMainSources, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListMainSourcesAsync(GetListMainSourcesAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SourceType_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListMainSources",
+ "",
+ std::move(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
+ */
+void CommandControlDBusProxy::getListMainSinkSoundProperties(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_MainSoundProperty_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListMainSinkSoundProperties",
+ "q",
+ sinkID,
+ callStatus
+ , listSoundProperties, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListMainSinkSoundPropertiesAsync(const am_sinkID_t& sinkID, GetListMainSinkSoundPropertiesAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_MainSoundProperty_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListMainSinkSoundProperties",
+ "q",
+ sinkID,
+ std::move(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
+ */
+void CommandControlDBusProxy::getListMainSourceSoundProperties(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_MainSoundProperty_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListMainSourceSoundProperties",
+ "q",
+ sourceID,
+ callStatus
+ , listSourceProperties, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListMainSourceSoundPropertiesAsync(const am_sourceID_t& sourceID, GetListMainSourceSoundPropertiesAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_MainSoundProperty_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListMainSourceSoundProperties",
+ "q",
+ sourceID,
+ std::move(callback));
+}
+/**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+void CommandControlDBusProxy::getListSourceClasses(CommonAPI::CallStatus& callStatus, am_SourceClass_L& listSourceClasses, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SourceClass_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListSourceClasses",
+ "",
+ callStatus
+ , listSourceClasses, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListSourceClassesAsync(GetListSourceClassesAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SourceClass_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListSourceClasses",
+ "",
+ std::move(callback));
+}
+/**
+ * This is used to retrieve SinkClass Information of all sink classes
+(at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+void CommandControlDBusProxy::getListSinkClasses(CommonAPI::CallStatus& callStatus, am_SinkClass_L& listSinkClasses, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SinkClass_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListSinkClasses",
+ "",
+ callStatus
+ , listSinkClasses, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListSinkClassesAsync(GetListSinkClassesAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SinkClass_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListSinkClasses",
+ "",
+ std::move(callback));
+}
+/**
+ * Retrieves a complete list of all systemProperties.
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+void CommandControlDBusProxy::getListSystemProperties(CommonAPI::CallStatus& callStatus, am_SystemProperty_L& listSystemProperties, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SystemProperty_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListSystemProperties",
+ "",
+ callStatus
+ , listSystemProperties, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListSystemPropertiesAsync(GetListSystemPropertiesAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<>,
+ CommonAPI::DBus::DBusSerializableArguments<am_SystemProperty_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListSystemProperties",
+ "",
+ std::move(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
+ */
+void CommandControlDBusProxy::getTimingInformation(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_timeSync_t& delay, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_timeSync_t, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getTimingInformation",
+ "q",
+ mainConnectionID,
+ callStatus
+ , delay, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getTimingInformationAsync(const am_mainConnectionID_t& mainConnectionID, GetTimingInformationAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_timeSync_t, am_Error_e> >::callMethodAsync(
+ *this,
+ "getTimingInformation",
+ "q",
+ mainConnectionID,
+ std::move(callback));
+}
+/**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+void CommandControlDBusProxy::getListMainSinkNotificationConfigurations(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_NotificationConfiguration_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListMainSinkNotificationConfigurations",
+ "q",
+ sinkID,
+ callStatus
+ , listMainNotificationConfigurations, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListMainSinkNotificationConfigurationsAsync(const am_sinkID_t& sinkID, GetListMainSinkNotificationConfigurationsAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_NotificationConfiguration_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListMainSinkNotificationConfigurations",
+ "q",
+ sinkID,
+ std::move(callback));
+}
+/**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+void CommandControlDBusProxy::getListMainSourceNotificationConfigurations(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_NotificationConfiguration_L, am_Error_e> >::callMethodWithReply(
+ *this,
+ "getListMainSourceNotificationConfigurations",
+ "q",
+ sourceID,
+ callStatus
+ , listMainNotificationConfigurations, error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::getListMainSourceNotificationConfigurationsAsync(const am_sourceID_t& sourceID, GetListMainSourceNotificationConfigurationsAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t>,
+ CommonAPI::DBus::DBusSerializableArguments<am_NotificationConfiguration_L, am_Error_e> >::callMethodAsync(
+ *this,
+ "getListMainSourceNotificationConfigurations",
+ "q",
+ sourceID,
+ std::move(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
+ */
+void CommandControlDBusProxy::setMainSinkNotificationConfiguration(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_NotificationConfiguration_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "setMainSinkNotificationConfiguration",
+ "q(qin)",
+ sinkID, mainNotificationConfiguration,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::setMainSinkNotificationConfigurationAsync(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSinkNotificationConfigurationAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_NotificationConfiguration_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "setMainSinkNotificationConfiguration",
+ "q(qin)",
+ sinkID, mainNotificationConfiguration,
+ std::move(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
+ */
+void CommandControlDBusProxy::setMainSourceNotificationConfiguration(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_NotificationConfiguration_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodWithReply(
+ *this,
+ "setMainSourceNotificationConfiguration",
+ "q(qin)",
+ sourceID, mainNotificationConfiguration,
+ callStatus
+ , error);
+}
+std::future<CommonAPI::CallStatus> CommandControlDBusProxy::setMainSourceNotificationConfigurationAsync(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSourceNotificationConfigurationAsyncCallback callback) {
+ return CommonAPI::DBus::DBusProxyHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_NotificationConfiguration_s>,
+ CommonAPI::DBus::DBusSerializableArguments<am_Error_e> >::callMethodAsync(
+ *this,
+ "setMainSourceNotificationConfiguration",
+ "q(qin)",
+ sourceID, mainNotificationConfiguration,
+ std::move(callback));
+}
+
+
+
+void CommandControlDBusProxy::getOwnVersion(uint16_t& ownVersionMajor, uint16_t& ownVersionMinor) const {
+ ownVersionMajor = 2;
+ ownVersionMinor = 0;
+}
+
+} // namespace am
+} // namespace genivi
+} // namespace org
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.h b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.h
new file mode 100644
index 0000000..c2a53ca
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusProxy.h
@@ -0,0 +1,266 @@
+/*
+* 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 <org/genivi/am/CommandControlProxyBase.h>
+
+#if !defined (COMMONAPI_INTERNAL_COMPILATION)
+#define COMMONAPI_INTERNAL_COMPILATION
+#endif
+
+#include <CommonAPI/DBus/DBusFactory.h>
+#include <CommonAPI/DBus/DBusProxy.h>
+#include <CommonAPI/DBus/DBusEvent.h>
+
+#undef COMMONAPI_INTERNAL_COMPILATION
+
+#include <string>
+
+namespace org {
+namespace genivi {
+namespace am {
+
+class CommandControlDBusProxy: virtual public CommandControlProxyBase, virtual public CommonAPI::DBus::DBusProxy {
+ public:
+ CommandControlDBusProxy(
+ const std::shared_ptr<CommonAPI::DBus::DBusFactory>& factory,
+ const std::string& commonApiAddress,
+ const std::string& interfaceName,
+ const std::string& busName,
+ const std::string& objectPath,
+ const std::shared_ptr<CommonAPI::DBus::DBusProxyConnection>& 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<CommonAPI::CallStatus> 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<NewMainConnectionEvent> newMainConnection_;
+ CommonAPI::DBus::DBusEvent<RemovedMainConnectionEvent> removedMainConnection_;
+ CommonAPI::DBus::DBusEvent<NewSinkEvent> newSink_;
+ CommonAPI::DBus::DBusEvent<RemovedSinkEvent> removedSink_;
+ CommonAPI::DBus::DBusEvent<NewSourceEvent> newSource_;
+ CommonAPI::DBus::DBusEvent<RemovedSourceEvent> removedSource_;
+ CommonAPI::DBus::DBusEvent<NumberOfSinkClassesChangedEvent> numberOfSinkClassesChanged_;
+ CommonAPI::DBus::DBusEvent<NumberOfSourceClassesChangedEvent> numberOfSourceClassesChanged_;
+ CommonAPI::DBus::DBusEvent<MainConnectionStateChangedEvent> mainConnectionStateChanged_;
+ CommonAPI::DBus::DBusEvent<MainSinkSoundPropertyChangedEvent> mainSinkSoundPropertyChanged_;
+ CommonAPI::DBus::DBusEvent<MainSourceSoundPropertyChangedEvent> mainSourceSoundPropertyChanged_;
+ CommonAPI::DBus::DBusEvent<SinkAvailabilityChangedEvent> sinkAvailabilityChanged_;
+ CommonAPI::DBus::DBusEvent<SourceAvailabilityChangedEvent> sourceAvailabilityChanged_;
+ CommonAPI::DBus::DBusEvent<VolumeChangedEvent> volumeChanged_;
+ CommonAPI::DBus::DBusEvent<SinkMuteStateChangedEvent> sinkMuteStateChanged_;
+ CommonAPI::DBus::DBusEvent<SystemPropertyChangedEvent> systemPropertyChanged_;
+ CommonAPI::DBus::DBusEvent<TimingInformationChangedEvent> timingInformationChanged_;
+ CommonAPI::DBus::DBusEvent<SinkUpdatedEvent> sinkUpdated_;
+ CommonAPI::DBus::DBusEvent<SourceUpdatedEvent> sourceUpdated_;
+ CommonAPI::DBus::DBusEvent<SinkNotificationEvent> sinkNotification_;
+ CommonAPI::DBus::DBusEvent<SourceNotificationEvent> sourceNotification_;
+ CommonAPI::DBus::DBusEvent<MainSinkNotificationConfigurationChangedEvent> mainSinkNotificationConfigurationChanged_;
+ CommonAPI::DBus::DBusEvent<MainSourceNotificationConfigurationChangedEvent> mainSourceNotificationConfigurationChanged_;
+
+};
+
+
+
+} // namespace am
+} // namespace genivi
+} // namespace org
+
+#endif // ORG_GENIVI_AM_Command_Control_DBUS_PROXY_H_
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.cpp b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.cpp
new file mode 100644
index 0000000..6da5cfd
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.cpp
@@ -0,0 +1,1096 @@
+/*
+* 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.
+*
+*
+*/
+#include "CommandControlDBusStubAdapter.h"
+#include <org/genivi/am/CommandControl.h>
+
+namespace org {
+namespace genivi {
+namespace am {
+
+std::shared_ptr<CommonAPI::DBus::DBusStubAdapter> createCommandControlDBusStubAdapter(
+ const std::shared_ptr<CommonAPI::DBus::DBusFactory>& factory,
+ const std::string& commonApiAddress,
+ const std::string& interfaceName,
+ const std::string& busName,
+ const std::string& objectPath,
+ const std::shared_ptr<CommonAPI::DBus::DBusProxyConnection>& dbusProxyConnection,
+ const std::shared_ptr<CommonAPI::StubBase>& stubBase) {
+ return std::make_shared<CommandControlDBusStubAdapter>(factory, commonApiAddress, interfaceName, busName, objectPath, dbusProxyConnection, stubBase);
+}
+
+INITIALIZER(registerCommandControlDBusStubAdapter) {
+ CommonAPI::DBus::DBusFactory::registerAdapterFactoryMethod(CommandControl::getInterfaceId(),
+ &createCommandControlDBusStubAdapter);
+}
+
+
+
+CommandControlDBusStubAdapterInternal::~CommandControlDBusStubAdapterInternal() {
+ deactivateManagedInstances();
+ CommandControlDBusStubAdapterHelper::deinit();
+}
+
+void CommandControlDBusStubAdapterInternal::deactivateManagedInstances() {
+
+}
+
+const char* CommandControlDBusStubAdapterInternal::getMethodsDBusIntrospectionXmlData() const {
+ static const std::string introspectionData =
+ "<method name=\"getInterfaceVersion\">\n"
+ "<arg name=\"value\" type=\"uu\" direction=\"out\" />"
+ "</method>\n"
+ /**
+ * Callback that is called when the number of connections change
+ */
+ "<signal name=\"newMainConnection\">\n"
+ "<arg name=\"mainConnection\" type=\"(qqqni)\" />\n"
+ "</signal>\n"
+ /**
+ * Callback that is called when the number of connections change
+ */
+ "<signal name=\"removedMainConnection\">\n"
+ "<arg name=\"mainConnection\" type=\"q\" />\n"
+ "</signal>\n"
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ "<signal name=\"newSink\">\n"
+ "<arg name=\"sink\" type=\"(qs(iq)niq)\" />\n"
+ "</signal>\n"
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ "<signal name=\"removedSink\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "</signal>\n"
+ /**
+ * Callback that is called when the number of sources change
+ */
+ "<signal name=\"newSource\">\n"
+ "<arg name=\"source\" type=\"(qs(iq)q)\" />\n"
+ "</signal>\n"
+ /**
+ * Callback that is called when the number of sources change
+ */
+ "<signal name=\"removedSource\">\n"
+ "<arg name=\"source\" type=\"q\" />\n"
+ "</signal>\n"
+ /**
+ * this callback is fired if the number of sink classes changed
+ */
+ "<signal name=\"numberOfSinkClassesChanged\">\n"
+ "</signal>\n"
+ /**
+ * this callback is fired if the number of source classes changed
+ */
+ "<signal name=\"numberOfSourceClassesChanged\">\n"
+ "</signal>\n"
+ /**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+ "<signal name=\"mainConnectionStateChanged\">\n"
+ "<arg name=\"connectionID\" type=\"q\" />\n"
+ "<arg name=\"connectionState\" type=\"i\" />\n"
+ "</signal>\n"
+ /**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+ "<signal name=\"mainSinkSoundPropertyChanged\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "<arg name=\"soundProperty\" type=\"(qn)\" />\n"
+ "</signal>\n"
+ /**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+ "<signal name=\"mainSourceSoundPropertyChanged\">\n"
+ "<arg name=\"sourceID\" type=\"q\" />\n"
+ "<arg name=\"soundProperty\" type=\"(qn)\" />\n"
+ "</signal>\n"
+ /**
+ * this callback is called when the availability of a sink has changed
+ */
+ "<signal name=\"sinkAvailabilityChanged\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "<arg name=\"availability\" type=\"(iq)\" />\n"
+ "</signal>\n"
+ /**
+ * this callback is called when the availability of source has changed.
+ */
+ "<signal name=\"sourceAvailabilityChanged\">\n"
+ "<arg name=\"sourceID\" type=\"q\" />\n"
+ "<arg name=\"availability\" type=\"(iq)\" />\n"
+ "</signal>\n"
+ /**
+ * this callback indicates a volume change on the indicated sink
+ */
+ "<signal name=\"volumeChanged\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "<arg name=\"volume\" type=\"n\" />\n"
+ "</signal>\n"
+ /**
+ * this callback indicates a mute state change on a sink.
+ */
+ "<signal name=\"sinkMuteStateChanged\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "<arg name=\"muteState\" type=\"i\" />\n"
+ "</signal>\n"
+ /**
+ * is fired if a systemProperty changed
+ */
+ "<signal name=\"systemPropertyChanged\">\n"
+ "<arg name=\"systemProperty\" type=\"(qn)\" />\n"
+ "</signal>\n"
+ /**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+ "<signal name=\"timingInformationChanged\">\n"
+ "<arg name=\"mainConnectionID\" type=\"q\" />\n"
+ "<arg name=\"time\" type=\"n\" />\n"
+ "</signal>\n"
+ /**
+ * This callback is called when a sink is updated.
+ */
+ "<signal name=\"sinkUpdated\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "<arg name=\"sinkClassID\" type=\"q\" />\n"
+ "<arg name=\"listMainSoundProperties\" type=\"a(qn)\" />\n"
+ "</signal>\n"
+ /**
+ * This callback is called when a source is updated.
+ */
+ "<signal name=\"sourceUpdated\">\n"
+ "<arg name=\"sourceID\" type=\"q\" />\n"
+ "<arg name=\"sourceClassID\" type=\"q\" />\n"
+ "<arg name=\"listMainSoundProperties\" type=\"a(qn)\" />\n"
+ "</signal>\n"
+ /**
+ * This callback is called when a notificated value of a sink changes.
+ */
+ "<signal name=\"sinkNotification\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "<arg name=\"notification\" type=\"(qn)\" />\n"
+ "</signal>\n"
+ /**
+ * This callback is called when a notifcated value of a source changes.
+ */
+ "<signal name=\"sourceNotification\">\n"
+ "<arg name=\"sourceID\" type=\"q\" />\n"
+ "<arg name=\"notification\" type=\"(qn)\" />\n"
+ "</signal>\n"
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ "<signal name=\"mainSinkNotificationConfigurationChanged\">\n"
+ "<arg name=\"sinkID\" type=\"q\" />\n"
+ "<arg name=\"mainNotificationConfiguration\" type=\"(qin)\" />\n"
+ "</signal>\n"
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ "<signal name=\"mainSourceNotificationConfigurationChanged\">\n"
+ "<arg name=\"sourceID\" type=\"q\" />\n"
+ "<arg name=\"mainNotificationConfiguration\" type=\"(qin)\" />\n"
+ "</signal>\n"
+ /**
+ * 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
+ */
+ "<method name=\"connect\">\n"
+ "<arg name=\"sourceID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"mainConnectionID\" type=\"q\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * disconnects a mainConnection
+ (at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+ "<method name=\"disconnect\">\n"
+ "<arg name=\"mainConnectionID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"setVolume\">\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"volume\" type=\"n\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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.
+ */
+ "<method name=\"volumeStep\">\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"volStep\" type=\"n\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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.
+ */
+ "<method name=\"setSinkMuteState\">\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"muteState\" type=\"i\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"setMainSinkSoundProperty\">\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"soundProperty\" type=\"(qn)\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"setMainSourceSoundProperty\">\n"
+ "<arg name=\"sourceID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"soundProperty\" type=\"(qn)\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"setSystemProperty\">\n"
+ "<arg name=\"property\" type=\"(qn)\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * returns the actual list of MainConnections
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ "<method name=\"getListMainConnections\">\n"
+ "<arg name=\"listConnections\" type=\"a(qqqni)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * returns the actual list of Sinks
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ "<method name=\"getListMainSinks\">\n"
+ "<arg name=\"listMainSinks\" type=\"a(qs(iq)niq)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * returns the actual list of Sources
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ "<method name=\"getListMainSources\">\n"
+ "<arg name=\"listMainSources\" type=\"a(qs(iq)q)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"getListMainSinkSoundProperties\">\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"listSoundProperties\" type=\"a(qn)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * This is used to retrieve all source sound properties related to a
+ * source.
+ (at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+ "<method name=\"getListMainSourceSoundProperties\">\n"
+ "<arg name=\"sourceID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"listSourceProperties\" type=\"a(qn)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+ (at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+ "<method name=\"getListSourceClasses\">\n"
+ "<arg name=\"listSourceClasses\" type=\"a(qsa(qn))\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * This is used to retrieve SinkClass Information of all sink classes
+ (at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+ "<method name=\"getListSinkClasses\">\n"
+ "<arg name=\"listSinkClasses\" type=\"a(qsa(qn))\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * Retrieves a complete list of all systemProperties.
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ "<method name=\"getListSystemProperties\">\n"
+ "<arg name=\"listSystemProperties\" type=\"a(qn)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"getTimingInformation\">\n"
+ "<arg name=\"mainConnectionID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"delay\" type=\"n\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+ "<method name=\"getListMainSinkNotificationConfigurations\">\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"listMainNotificationConfigurations\" type=\"a(qin)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+ "<method name=\"getListMainSourceNotificationConfigurations\">\n"
+ "<arg name=\"sourceID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"listMainNotificationConfigurations\" type=\"a(qin)\" direction=\"out\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"setMainSinkNotificationConfiguration\">\n"
+ "<arg name=\"sinkID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"mainNotificationConfiguration\" type=\"(qin)\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+ /**
+ * 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
+ */
+ "<method name=\"setMainSourceNotificationConfiguration\">\n"
+ "<arg name=\"sourceID\" type=\"q\" direction=\"in\" />\n"
+ "<arg name=\"mainNotificationConfiguration\" type=\"(qin)\" direction=\"in\" />\n"
+ "<arg name=\"error\" type=\"i\" direction=\"out\" />\n"
+ "</method>\n"
+
+ ;
+ return introspectionData.c_str();
+}
+
+CommonAPI::DBus::DBusGetAttributeStubDispatcher<
+ CommandControlStub,
+ CommonAPI::Version
+ > CommandControlDBusStubAdapterInternal::getCommandControlInterfaceVersionStubDispatcher(&CommandControlStub::getInterfaceVersion, "uu");
+
+
+
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t, am_sinkID_t>,
+ std::tuple<am_mainConnectionID_t, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::connectStubDispatcher(&CommandControlStub::connect, "qi");
+/**
+ * disconnects a mainConnection
+(at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_mainConnectionID_t>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::disconnectStubDispatcher(&CommandControlStub::disconnect, "i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_mainVolume_t>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::setVolumeStubDispatcher(&CommandControlStub::setVolume, "i");
+/**
+ * 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.
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, int16_t>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::volumeStepStubDispatcher(&CommandControlStub::volumeStep, "i");
+/**
+ * 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.
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_MuteState_e>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::setSinkMuteStateStubDispatcher(&CommandControlStub::setSinkMuteState, "i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_MainSoundProperty_s>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::setMainSinkSoundPropertyStubDispatcher(&CommandControlStub::setMainSinkSoundProperty, "i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t, am_MainSoundProperty_s>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::setMainSourceSoundPropertyStubDispatcher(&CommandControlStub::setMainSourceSoundProperty, "i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_SystemProperty_s>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::setSystemPropertyStubDispatcher(&CommandControlStub::setSystemProperty, "i");
+/**
+ * returns the actual list of MainConnections
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_MainConnection_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListMainConnectionsStubDispatcher(&CommandControlStub::getListMainConnections, "a(qqqni)i");
+/**
+ * returns the actual list of Sinks
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SinkType_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListMainSinksStubDispatcher(&CommandControlStub::getListMainSinks, "a(qs(iq)niq)i");
+/**
+ * returns the actual list of Sources
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SourceType_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListMainSourcesStubDispatcher(&CommandControlStub::getListMainSources, "a(qs(iq)q)i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t>,
+ std::tuple<am_MainSoundProperty_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListMainSinkSoundPropertiesStubDispatcher(&CommandControlStub::getListMainSinkSoundProperties, "a(qn)i");
+/**
+ * This is used to retrieve all source sound properties related to a
+ * source.
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t>,
+ std::tuple<am_MainSoundProperty_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListMainSourceSoundPropertiesStubDispatcher(&CommandControlStub::getListMainSourceSoundProperties, "a(qn)i");
+/**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SourceClass_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListSourceClassesStubDispatcher(&CommandControlStub::getListSourceClasses, "a(qsa(qn))i");
+/**
+ * This is used to retrieve SinkClass Information of all sink classes
+(at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SinkClass_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListSinkClassesStubDispatcher(&CommandControlStub::getListSinkClasses, "a(qsa(qn))i");
+/**
+ * Retrieves a complete list of all systemProperties.
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SystemProperty_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListSystemPropertiesStubDispatcher(&CommandControlStub::getListSystemProperties, "a(qn)i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_mainConnectionID_t>,
+ std::tuple<am_timeSync_t, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getTimingInformationStubDispatcher(&CommandControlStub::getTimingInformation, "ni");
+/**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t>,
+ std::tuple<am_NotificationConfiguration_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListMainSinkNotificationConfigurationsStubDispatcher(&CommandControlStub::getListMainSinkNotificationConfigurations, "a(qin)i");
+/**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t>,
+ std::tuple<am_NotificationConfiguration_L, am_Error_e>
+ > CommandControlDBusStubAdapterInternal::getListMainSourceNotificationConfigurationsStubDispatcher(&CommandControlStub::getListMainSourceNotificationConfigurations, "a(qin)i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_NotificationConfiguration_s>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::setMainSinkNotificationConfigurationStubDispatcher(&CommandControlStub::setMainSinkNotificationConfiguration, "i");
+/**
+ * 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
+ */
+CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t, am_NotificationConfiguration_s>,
+ std::tuple<am_Error_e>
+ > CommandControlDBusStubAdapterInternal::setMainSourceNotificationConfigurationStubDispatcher(&CommandControlStub::setMainSourceNotificationConfiguration, "i");
+
+
+
+/**
+ * Callback that is called when the number of connections change
+ */
+void CommandControlDBusStubAdapterInternal::fireNewMainConnectionEvent(const am_MainConnectionType_s& mainConnection) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_MainConnectionType_s>>
+ ::sendSignal(
+ *this,
+ "newMainConnection",
+ "(qqqni)",
+ mainConnection
+ );
+}
+/**
+ * Callback that is called when the number of connections change
+ */
+void CommandControlDBusStubAdapterInternal::fireRemovedMainConnectionEvent(const am_mainConnectionID_t& mainConnection) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t>>
+ ::sendSignal(
+ *this,
+ "removedMainConnection",
+ "q",
+ mainConnection
+ );
+}
+/**
+ * Callback that is called when the number of sinks change
+ */
+void CommandControlDBusStubAdapterInternal::fireNewSinkEvent(const am_SinkType_s& sink) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_SinkType_s>>
+ ::sendSignal(
+ *this,
+ "newSink",
+ "(qs(iq)niq)",
+ sink
+ );
+}
+/**
+ * Callback that is called when the number of sinks change
+ */
+void CommandControlDBusStubAdapterInternal::fireRemovedSinkEvent(const am_sinkID_t& sinkID) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t>>
+ ::sendSignal(
+ *this,
+ "removedSink",
+ "q",
+ sinkID
+ );
+}
+/**
+ * Callback that is called when the number of sources change
+ */
+void CommandControlDBusStubAdapterInternal::fireNewSourceEvent(const am_SourceType_s& source) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_SourceType_s>>
+ ::sendSignal(
+ *this,
+ "newSource",
+ "(qs(iq)q)",
+ source
+ );
+}
+/**
+ * Callback that is called when the number of sources change
+ */
+void CommandControlDBusStubAdapterInternal::fireRemovedSourceEvent(const am_sourceID_t& source) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t>>
+ ::sendSignal(
+ *this,
+ "removedSource",
+ "q",
+ source
+ );
+}
+/**
+ * this callback is fired if the number of sink classes changed
+ */
+void CommandControlDBusStubAdapterInternal::fireNumberOfSinkClassesChangedEvent() {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<>>
+ ::sendSignal(
+ *this,
+ "numberOfSinkClassesChanged",
+ ""
+ );
+}
+/**
+ * this callback is fired if the number of source classes changed
+ */
+void CommandControlDBusStubAdapterInternal::fireNumberOfSourceClassesChangedEvent() {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<>>
+ ::sendSignal(
+ *this,
+ "numberOfSourceClassesChanged",
+ ""
+ );
+}
+/**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+void CommandControlDBusStubAdapterInternal::fireMainConnectionStateChangedEvent(const am_mainConnectionID_t& connectionID, const am_ConnectionState_e& connectionState) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t, am_ConnectionState_e>>
+ ::sendSignal(
+ *this,
+ "mainConnectionStateChanged",
+ "qi",
+ connectionID, connectionState
+ );
+}
+/**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+void CommandControlDBusStubAdapterInternal::fireMainSinkSoundPropertyChangedEvent(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_MainSoundProperty_s>>
+ ::sendSignal(
+ *this,
+ "mainSinkSoundPropertyChanged",
+ "q(qn)",
+ sinkID, soundProperty
+ );
+}
+/**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+void CommandControlDBusStubAdapterInternal::fireMainSourceSoundPropertyChangedEvent(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_MainSoundProperty_s>>
+ ::sendSignal(
+ *this,
+ "mainSourceSoundPropertyChanged",
+ "q(qn)",
+ sourceID, soundProperty
+ );
+}
+/**
+ * this callback is called when the availability of a sink has changed
+ */
+void CommandControlDBusStubAdapterInternal::fireSinkAvailabilityChangedEvent(const am_sinkID_t& sinkID, const am_Availability_s& availability) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_Availability_s>>
+ ::sendSignal(
+ *this,
+ "sinkAvailabilityChanged",
+ "q(iq)",
+ sinkID, availability
+ );
+}
+/**
+ * this callback is called when the availability of source has changed.
+ */
+void CommandControlDBusStubAdapterInternal::fireSourceAvailabilityChangedEvent(const am_sourceID_t& sourceID, const am_Availability_s& availability) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_Availability_s>>
+ ::sendSignal(
+ *this,
+ "sourceAvailabilityChanged",
+ "q(iq)",
+ sourceID, availability
+ );
+}
+/**
+ * this callback indicates a volume change on the indicated sink
+ */
+void CommandControlDBusStubAdapterInternal::fireVolumeChangedEvent(const am_sinkID_t& sinkID, const am_mainVolume_t& volume) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_mainVolume_t>>
+ ::sendSignal(
+ *this,
+ "volumeChanged",
+ "qn",
+ sinkID, volume
+ );
+}
+/**
+ * this callback indicates a mute state change on a sink.
+ */
+void CommandControlDBusStubAdapterInternal::fireSinkMuteStateChangedEvent(const am_sinkID_t& sinkID, const am_MuteState_e& muteState) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_MuteState_e>>
+ ::sendSignal(
+ *this,
+ "sinkMuteStateChanged",
+ "qi",
+ sinkID, muteState
+ );
+}
+/**
+ * is fired if a systemProperty changed
+ */
+void CommandControlDBusStubAdapterInternal::fireSystemPropertyChangedEvent(const am_SystemProperty_s& systemProperty) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_SystemProperty_s>>
+ ::sendSignal(
+ *this,
+ "systemPropertyChanged",
+ "(qn)",
+ systemProperty
+ );
+}
+/**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+void CommandControlDBusStubAdapterInternal::fireTimingInformationChangedEvent(const am_mainConnectionID_t& mainConnectionID, const am_timeSync_t& time) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_mainConnectionID_t, am_timeSync_t>>
+ ::sendSignal(
+ *this,
+ "timingInformationChanged",
+ "qn",
+ mainConnectionID, time
+ );
+}
+/**
+ * This callback is called when a sink is updated.
+ */
+void CommandControlDBusStubAdapterInternal::fireSinkUpdatedEvent(const am_sinkID_t& sinkID, const am_sinkClass_t& sinkClassID, const am_MainSoundProperty_L& listMainSoundProperties) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_sinkClass_t, am_MainSoundProperty_L>>
+ ::sendSignal(
+ *this,
+ "sinkUpdated",
+ "qqa(qn)",
+ sinkID, sinkClassID, listMainSoundProperties
+ );
+}
+/**
+ * This callback is called when a source is updated.
+ */
+void CommandControlDBusStubAdapterInternal::fireSourceUpdatedEvent(const am_sourceID_t& sourceID, const am_sourceClass_t& sourceClassID, const am_MainSoundProperty_L& listMainSoundProperties) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_sourceClass_t, am_MainSoundProperty_L>>
+ ::sendSignal(
+ *this,
+ "sourceUpdated",
+ "qqa(qn)",
+ sourceID, sourceClassID, listMainSoundProperties
+ );
+}
+/**
+ * This callback is called when a notificated value of a sink changes.
+ */
+void CommandControlDBusStubAdapterInternal::fireSinkNotificationEvent(const am_sinkID_t& sinkID, const am_NotificationPayload_s& notification) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_NotificationPayload_s>>
+ ::sendSignal(
+ *this,
+ "sinkNotification",
+ "q(qn)",
+ sinkID, notification
+ );
+}
+/**
+ * This callback is called when a notifcated value of a source changes.
+ */
+void CommandControlDBusStubAdapterInternal::fireSourceNotificationEvent(const am_sourceID_t& sourceID, const am_NotificationPayload_s& notification) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_NotificationPayload_s>>
+ ::sendSignal(
+ *this,
+ "sourceNotification",
+ "q(qn)",
+ sourceID, notification
+ );
+}
+/**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+void CommandControlDBusStubAdapterInternal::fireMainSinkNotificationConfigurationChangedEvent(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sinkID_t, am_NotificationConfiguration_s>>
+ ::sendSignal(
+ *this,
+ "mainSinkNotificationConfigurationChanged",
+ "q(qin)",
+ sinkID, mainNotificationConfiguration
+ );
+}
+/**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+void CommandControlDBusStubAdapterInternal::fireMainSourceNotificationConfigurationChangedEvent(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration) {
+ CommonAPI::DBus::DBusStubSignalHelper<CommonAPI::DBus::DBusSerializableArguments<am_sourceID_t, am_NotificationConfiguration_s>>
+ ::sendSignal(
+ *this,
+ "mainSourceNotificationConfigurationChanged",
+ "q(qin)",
+ sourceID, mainNotificationConfiguration
+ );
+}
+
+
+const CommandControlDBusStubAdapterHelper::StubDispatcherTable& CommandControlDBusStubAdapterInternal::getStubDispatcherTable() {
+ return stubDispatcherTable_;
+}
+
+const CommonAPI::DBus::StubAttributeTable& CommandControlDBusStubAdapterInternal::getStubAttributeTable() {
+ return stubAttributeTable_;
+}
+
+CommandControlDBusStubAdapterInternal::CommandControlDBusStubAdapterInternal(
+ const std::shared_ptr<CommonAPI::DBus::DBusFactory>& factory,
+ const std::string& commonApiAddress,
+ const std::string& dbusInterfaceName,
+ const std::string& dbusBusName,
+ const std::string& dbusObjectPath,
+ const std::shared_ptr<CommonAPI::DBus::DBusProxyConnection>& dbusConnection,
+ const std::shared_ptr<CommonAPI::StubBase>& stub):
+ CommonAPI::DBus::DBusStubAdapter(
+ factory,
+ commonApiAddress,
+ dbusInterfaceName,
+ dbusBusName,
+ dbusObjectPath,
+ dbusConnection,
+ false),
+ CommandControlDBusStubAdapterHelper(
+ factory,
+ commonApiAddress,
+ dbusInterfaceName,
+ dbusBusName,
+ dbusObjectPath,
+ dbusConnection,
+ std::dynamic_pointer_cast<CommandControlStub>(stub),
+ false),
+ stubDispatcherTable_({
+ /**
+ * 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
+ */
+ { { "connect", "qq" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::connectStubDispatcher },
+ /**
+ * disconnects a mainConnection
+ (at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+ { { "disconnect", "q" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::disconnectStubDispatcher },
+ /**
+ * 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
+ */
+ { { "setVolume", "qn" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::setVolumeStubDispatcher },
+ /**
+ * 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.
+ */
+ { { "volumeStep", "qn" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::volumeStepStubDispatcher },
+ /**
+ * 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.
+ */
+ { { "setSinkMuteState", "qi" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::setSinkMuteStateStubDispatcher },
+ /**
+ * 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
+ */
+ { { "setMainSinkSoundProperty", "q(qn)" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::setMainSinkSoundPropertyStubDispatcher },
+ /**
+ * 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
+ */
+ { { "setMainSourceSoundProperty", "q(qn)" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::setMainSourceSoundPropertyStubDispatcher },
+ /**
+ * 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
+ */
+ { { "setSystemProperty", "(qn)" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::setSystemPropertyStubDispatcher },
+ /**
+ * returns the actual list of MainConnections
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ { { "getListMainConnections", "" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListMainConnectionsStubDispatcher },
+ /**
+ * returns the actual list of Sinks
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ { { "getListMainSinks", "" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListMainSinksStubDispatcher },
+ /**
+ * returns the actual list of Sources
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ { { "getListMainSources", "" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListMainSourcesStubDispatcher },
+ /**
+ * 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
+ */
+ { { "getListMainSinkSoundProperties", "q" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListMainSinkSoundPropertiesStubDispatcher },
+ /**
+ * This is used to retrieve all source sound properties related to a
+ * source.
+ (at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+ { { "getListMainSourceSoundProperties", "q" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListMainSourceSoundPropertiesStubDispatcher },
+ /**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+ (at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+ { { "getListSourceClasses", "" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListSourceClassesStubDispatcher },
+ /**
+ * This is used to retrieve SinkClass Information of all sink classes
+ (at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+ { { "getListSinkClasses", "" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListSinkClassesStubDispatcher },
+ /**
+ * Retrieves a complete list of all systemProperties.
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ { { "getListSystemProperties", "" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListSystemPropertiesStubDispatcher },
+ /**
+ * 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
+ */
+ { { "getTimingInformation", "q" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getTimingInformationStubDispatcher },
+ /**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+ { { "getListMainSinkNotificationConfigurations", "q" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListMainSinkNotificationConfigurationsStubDispatcher },
+ /**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+ { { "getListMainSourceNotificationConfigurations", "q" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getListMainSourceNotificationConfigurationsStubDispatcher },
+ /**
+ * 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
+ */
+ { { "setMainSinkNotificationConfiguration", "q(qin)" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::setMainSinkNotificationConfigurationStubDispatcher },
+ /**
+ * 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
+ */
+ { { "setMainSourceNotificationConfiguration", "q(qin)" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::setMainSourceNotificationConfigurationStubDispatcher }
+ }),
+ stubAttributeTable_() {
+
+ stubDispatcherTable_.insert({ { "getInterfaceVersion", "" }, &org::genivi::am::CommandControlDBusStubAdapterInternal::getCommandControlInterfaceVersionStubDispatcher });
+}
+
+const bool CommandControlDBusStubAdapterInternal::hasFreedesktopProperties() {
+ return false;
+}
+
+} // namespace am
+} // namespace genivi
+} // namespace org
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.h b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.h
new file mode 100644
index 0000000..0909211
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlDBusStubAdapter.h
@@ -0,0 +1,422 @@
+/*
+* 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_STUB_ADAPTER_H_
+#define ORG_GENIVI_AM_Command_Control_DBUS_STUB_ADAPTER_H_
+
+#include <org/genivi/am/CommandControlStub.h>
+
+#if !defined (COMMONAPI_INTERNAL_COMPILATION)
+#define COMMONAPI_INTERNAL_COMPILATION
+#endif
+
+#include <CommonAPI/DBus/DBusStubAdapterHelper.h>
+#include <CommonAPI/DBus/DBusStubAdapter.h>
+#include <CommonAPI/DBus/DBusFactory.h>
+#include <CommonAPI/DBus/DBusServicePublisher.h>
+
+#undef COMMONAPI_INTERNAL_COMPILATION
+
+namespace org {
+namespace genivi {
+namespace am {
+
+typedef CommonAPI::DBus::DBusStubAdapterHelper<CommandControlStub> CommandControlDBusStubAdapterHelper;
+
+class CommandControlDBusStubAdapterInternal: public virtual CommandControlStubAdapter, public CommandControlDBusStubAdapterHelper {
+ public:
+ CommandControlDBusStubAdapterInternal(
+ const std::shared_ptr<CommonAPI::DBus::DBusFactory>& factory,
+ const std::string& commonApiAddress,
+ const std::string& dbusInterfaceName,
+ const std::string& dbusBusName,
+ const std::string& dbusObjectPath,
+ const std::shared_ptr<CommonAPI::DBus::DBusProxyConnection>& dbusConnection,
+ const std::shared_ptr<CommonAPI::StubBase>& stub);
+
+ ~CommandControlDBusStubAdapterInternal();
+
+ virtual const bool hasFreedesktopProperties();
+
+
+ /**
+ * Callback that is called when the number of connections change
+ */
+ void fireNewMainConnectionEvent(const am_MainConnectionType_s& mainConnection);
+ /**
+ * Callback that is called when the number of connections change
+ */
+ void fireRemovedMainConnectionEvent(const am_mainConnectionID_t& mainConnection);
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ void fireNewSinkEvent(const am_SinkType_s& sink);
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ void fireRemovedSinkEvent(const am_sinkID_t& sinkID);
+ /**
+ * Callback that is called when the number of sources change
+ */
+ void fireNewSourceEvent(const am_SourceType_s& source);
+ /**
+ * Callback that is called when the number of sources change
+ */
+ void fireRemovedSourceEvent(const am_sourceID_t& source);
+ /**
+ * this callback is fired if the number of sink classes changed
+ */
+ void fireNumberOfSinkClassesChangedEvent();
+ /**
+ * this callback is fired if the number of source classes changed
+ */
+ void fireNumberOfSourceClassesChangedEvent();
+ /**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+ void fireMainConnectionStateChangedEvent(const am_mainConnectionID_t& connectionID, const am_ConnectionState_e& connectionState);
+ /**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+ void fireMainSinkSoundPropertyChangedEvent(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty);
+ /**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+ void fireMainSourceSoundPropertyChangedEvent(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty);
+ /**
+ * this callback is called when the availability of a sink has changed
+ */
+ void fireSinkAvailabilityChangedEvent(const am_sinkID_t& sinkID, const am_Availability_s& availability);
+ /**
+ * this callback is called when the availability of source has changed.
+ */
+ void fireSourceAvailabilityChangedEvent(const am_sourceID_t& sourceID, const am_Availability_s& availability);
+ /**
+ * this callback indicates a volume change on the indicated sink
+ */
+ void fireVolumeChangedEvent(const am_sinkID_t& sinkID, const am_mainVolume_t& volume);
+ /**
+ * this callback indicates a mute state change on a sink.
+ */
+ void fireSinkMuteStateChangedEvent(const am_sinkID_t& sinkID, const am_MuteState_e& muteState);
+ /**
+ * is fired if a systemProperty changed
+ */
+ void fireSystemPropertyChangedEvent(const am_SystemProperty_s& systemProperty);
+ /**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+ void fireTimingInformationChangedEvent(const am_mainConnectionID_t& mainConnectionID, const am_timeSync_t& time);
+ /**
+ * This callback is called when a sink is updated.
+ */
+ void fireSinkUpdatedEvent(const am_sinkID_t& sinkID, const am_sinkClass_t& sinkClassID, const am_MainSoundProperty_L& listMainSoundProperties);
+ /**
+ * This callback is called when a source is updated.
+ */
+ void fireSourceUpdatedEvent(const am_sourceID_t& sourceID, const am_sourceClass_t& sourceClassID, const am_MainSoundProperty_L& listMainSoundProperties);
+ /**
+ * This callback is called when a notificated value of a sink changes.
+ */
+ void fireSinkNotificationEvent(const am_sinkID_t& sinkID, const am_NotificationPayload_s& notification);
+ /**
+ * This callback is called when a notifcated value of a source changes.
+ */
+ void fireSourceNotificationEvent(const am_sourceID_t& sourceID, const am_NotificationPayload_s& notification);
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ void fireMainSinkNotificationConfigurationChangedEvent(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration);
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ void fireMainSourceNotificationConfigurationChangedEvent(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration);
+
+
+ const CommandControlDBusStubAdapterHelper::StubDispatcherTable& getStubDispatcherTable();
+ const CommonAPI::DBus::StubAttributeTable& getStubAttributeTable();
+
+ void deactivateManagedInstances();
+
+
+static CommonAPI::DBus::DBusGetAttributeStubDispatcher<
+ CommandControlStub,
+ CommonAPI::Version
+ > getCommandControlInterfaceVersionStubDispatcher;
+
+
+
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t, am_sinkID_t>,
+ std::tuple<am_mainConnectionID_t, am_Error_e>
+ > connectStubDispatcher;
+/**
+ * disconnects a mainConnection
+(at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_mainConnectionID_t>,
+ std::tuple<am_Error_e>
+ > disconnectStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_mainVolume_t>,
+ std::tuple<am_Error_e>
+ > setVolumeStubDispatcher;
+/**
+ * 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.
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, int16_t>,
+ std::tuple<am_Error_e>
+ > volumeStepStubDispatcher;
+/**
+ * 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.
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_MuteState_e>,
+ std::tuple<am_Error_e>
+ > setSinkMuteStateStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_MainSoundProperty_s>,
+ std::tuple<am_Error_e>
+ > setMainSinkSoundPropertyStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t, am_MainSoundProperty_s>,
+ std::tuple<am_Error_e>
+ > setMainSourceSoundPropertyStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_SystemProperty_s>,
+ std::tuple<am_Error_e>
+ > setSystemPropertyStubDispatcher;
+/**
+ * returns the actual list of MainConnections
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_MainConnection_L, am_Error_e>
+ > getListMainConnectionsStubDispatcher;
+/**
+ * returns the actual list of Sinks
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SinkType_L, am_Error_e>
+ > getListMainSinksStubDispatcher;
+/**
+ * returns the actual list of Sources
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SourceType_L, am_Error_e>
+ > getListMainSourcesStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t>,
+ std::tuple<am_MainSoundProperty_L, am_Error_e>
+ > getListMainSinkSoundPropertiesStubDispatcher;
+/**
+ * This is used to retrieve all source sound properties related to a
+ * source.
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t>,
+ std::tuple<am_MainSoundProperty_L, am_Error_e>
+ > getListMainSourceSoundPropertiesStubDispatcher;
+/**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SourceClass_L, am_Error_e>
+ > getListSourceClassesStubDispatcher;
+/**
+ * This is used to retrieve SinkClass Information of all sink classes
+(at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SinkClass_L, am_Error_e>
+ > getListSinkClassesStubDispatcher;
+/**
+ * Retrieves a complete list of all systemProperties.
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<>,
+ std::tuple<am_SystemProperty_L, am_Error_e>
+ > getListSystemPropertiesStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_mainConnectionID_t>,
+ std::tuple<am_timeSync_t, am_Error_e>
+ > getTimingInformationStubDispatcher;
+/**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t>,
+ std::tuple<am_NotificationConfiguration_L, am_Error_e>
+ > getListMainSinkNotificationConfigurationsStubDispatcher;
+/**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t>,
+ std::tuple<am_NotificationConfiguration_L, am_Error_e>
+ > getListMainSourceNotificationConfigurationsStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sinkID_t, am_NotificationConfiguration_s>,
+ std::tuple<am_Error_e>
+ > setMainSinkNotificationConfigurationStubDispatcher;
+/**
+ * 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
+ */
+static CommonAPI::DBus::DBusMethodWithReplyStubDispatcher<
+ CommandControlStub,
+ std::tuple<am_sourceID_t, am_NotificationConfiguration_s>,
+ std::tuple<am_Error_e>
+ > setMainSourceNotificationConfigurationStubDispatcher;
+
+
+
+
+ protected:
+ virtual const char* getMethodsDBusIntrospectionXmlData() const;
+
+ private:
+ CommandControlDBusStubAdapterHelper::StubDispatcherTable stubDispatcherTable_;
+ CommonAPI::DBus::StubAttributeTable stubAttributeTable_;
+};
+
+class CommandControlDBusStubAdapter: public CommandControlDBusStubAdapterInternal, public std::enable_shared_from_this<CommandControlDBusStubAdapter> {
+public:
+ CommandControlDBusStubAdapter(
+ const std::shared_ptr<CommonAPI::DBus::DBusFactory>& factory,
+ const std::string& commonApiAddress,
+ const std::string& dbusInterfaceName,
+ const std::string& dbusBusName,
+ const std::string& dbusObjectPath,
+ const std::shared_ptr<CommonAPI::DBus::DBusProxyConnection>& dbusConnection,
+ const std::shared_ptr<CommonAPI::StubBase>& stub) :
+ CommonAPI::DBus::DBusStubAdapter(
+ factory,
+ commonApiAddress,
+ dbusInterfaceName,
+ dbusBusName,
+ dbusObjectPath,
+ dbusConnection,
+ false),
+ CommandControlDBusStubAdapterInternal(
+ factory,
+ commonApiAddress,
+ dbusInterfaceName,
+ dbusBusName,
+ dbusObjectPath,
+ dbusConnection,
+ stub) { }
+};
+
+} // namespace am
+} // namespace genivi
+} // namespace org
+
+#endif // ORG_GENIVI_AM_Command_Control_DBUS_STUB_ADAPTER_H_
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxy.h b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxy.h
new file mode 100644
index 0000000..03e6a62
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxy.h
@@ -0,0 +1,1194 @@
+/*
+* 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_PROXY_H_
+#define ORG_GENIVI_AM_Command_Control_PROXY_H_
+
+#include "CommandControlProxyBase.h"
+
+
+#if !defined (COMMONAPI_INTERNAL_COMPILATION)
+#define COMMONAPI_INTERNAL_COMPILATION
+#endif
+
+
+#undef COMMONAPI_INTERNAL_COMPILATION
+
+namespace org {
+namespace genivi {
+namespace am {
+
+template <typename ... _AttributeExtensions>
+class CommandControlProxy: virtual public CommandControl, virtual public CommandControlProxyBase
+, public _AttributeExtensions... {
+public:
+ CommandControlProxy(std::shared_ptr<CommonAPI::Proxy> delegate);
+ ~CommandControlProxy();
+
+ typedef CommandControl InterfaceType;
+
+
+
+ /**
+ * Callback that is called when the number of connections change
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast newMainConnection.
+ */
+ virtual NewMainConnectionEvent& getNewMainConnectionEvent() {
+ return delegate_->getNewMainConnectionEvent();
+ }
+ /**
+ * Callback that is called when the number of connections change
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast removedMainConnection.
+ */
+ virtual RemovedMainConnectionEvent& getRemovedMainConnectionEvent() {
+ return delegate_->getRemovedMainConnectionEvent();
+ }
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast newSink.
+ */
+ virtual NewSinkEvent& getNewSinkEvent() {
+ return delegate_->getNewSinkEvent();
+ }
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast removedSink.
+ */
+ virtual RemovedSinkEvent& getRemovedSinkEvent() {
+ return delegate_->getRemovedSinkEvent();
+ }
+ /**
+ * Callback that is called when the number of sources change
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast newSource.
+ */
+ virtual NewSourceEvent& getNewSourceEvent() {
+ return delegate_->getNewSourceEvent();
+ }
+ /**
+ * Callback that is called when the number of sources change
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast removedSource.
+ */
+ virtual RemovedSourceEvent& getRemovedSourceEvent() {
+ return delegate_->getRemovedSourceEvent();
+ }
+ /**
+ * this callback is fired if the number of sink classes changed
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast numberOfSinkClassesChanged.
+ */
+ virtual NumberOfSinkClassesChangedEvent& getNumberOfSinkClassesChangedEvent() {
+ return delegate_->getNumberOfSinkClassesChangedEvent();
+ }
+ /**
+ * this callback is fired if the number of source classes changed
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast numberOfSourceClassesChanged.
+ */
+ virtual NumberOfSourceClassesChangedEvent& getNumberOfSourceClassesChangedEvent() {
+ return delegate_->getNumberOfSourceClassesChangedEvent();
+ }
+ /**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast mainConnectionStateChanged.
+ */
+ virtual MainConnectionStateChangedEvent& getMainConnectionStateChangedEvent() {
+ return delegate_->getMainConnectionStateChangedEvent();
+ }
+ /**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast mainSinkSoundPropertyChanged.
+ */
+ virtual MainSinkSoundPropertyChangedEvent& getMainSinkSoundPropertyChangedEvent() {
+ return delegate_->getMainSinkSoundPropertyChangedEvent();
+ }
+ /**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast mainSourceSoundPropertyChanged.
+ */
+ virtual MainSourceSoundPropertyChangedEvent& getMainSourceSoundPropertyChangedEvent() {
+ return delegate_->getMainSourceSoundPropertyChangedEvent();
+ }
+ /**
+ * this callback is called when the availability of a sink has changed
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast sinkAvailabilityChanged.
+ */
+ virtual SinkAvailabilityChangedEvent& getSinkAvailabilityChangedEvent() {
+ return delegate_->getSinkAvailabilityChangedEvent();
+ }
+ /**
+ * this callback is called when the availability of source has changed.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast sourceAvailabilityChanged.
+ */
+ virtual SourceAvailabilityChangedEvent& getSourceAvailabilityChangedEvent() {
+ return delegate_->getSourceAvailabilityChangedEvent();
+ }
+ /**
+ * this callback indicates a volume change on the indicated sink
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast volumeChanged.
+ */
+ virtual VolumeChangedEvent& getVolumeChangedEvent() {
+ return delegate_->getVolumeChangedEvent();
+ }
+ /**
+ * this callback indicates a mute state change on a sink.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast sinkMuteStateChanged.
+ */
+ virtual SinkMuteStateChangedEvent& getSinkMuteStateChangedEvent() {
+ return delegate_->getSinkMuteStateChangedEvent();
+ }
+ /**
+ * is fired if a systemProperty changed
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast systemPropertyChanged.
+ */
+ virtual SystemPropertyChangedEvent& getSystemPropertyChangedEvent() {
+ return delegate_->getSystemPropertyChangedEvent();
+ }
+ /**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast timingInformationChanged.
+ */
+ virtual TimingInformationChangedEvent& getTimingInformationChangedEvent() {
+ return delegate_->getTimingInformationChangedEvent();
+ }
+ /**
+ * This callback is called when a sink is updated.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast sinkUpdated.
+ */
+ virtual SinkUpdatedEvent& getSinkUpdatedEvent() {
+ return delegate_->getSinkUpdatedEvent();
+ }
+ /**
+ * This callback is called when a source is updated.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast sourceUpdated.
+ */
+ virtual SourceUpdatedEvent& getSourceUpdatedEvent() {
+ return delegate_->getSourceUpdatedEvent();
+ }
+ /**
+ * This callback is called when a notificated value of a sink changes.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast sinkNotification.
+ */
+ virtual SinkNotificationEvent& getSinkNotificationEvent() {
+ return delegate_->getSinkNotificationEvent();
+ }
+ /**
+ * This callback is called when a notifcated value of a source changes.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast sourceNotification.
+ */
+ virtual SourceNotificationEvent& getSourceNotificationEvent() {
+ return delegate_->getSourceNotificationEvent();
+ }
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast mainSinkNotificationConfigurationChanged.
+ */
+ virtual MainSinkNotificationConfigurationChangedEvent& getMainSinkNotificationConfigurationChangedEvent() {
+ return delegate_->getMainSinkNotificationConfigurationChangedEvent();
+ }
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ /**
+ * Returns the wrapper class that provides access to the broadcast mainSourceNotificationConfigurationChanged.
+ */
+ virtual MainSourceNotificationConfigurationChangedEvent& getMainSourceNotificationConfigurationChangedEvent() {
+ return delegate_->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
+ *
+ * Calls connect with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void connect(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_mainConnectionID_t& mainConnectionID, am_Error_e& error);
+ /**
+ * Calls connect with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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.
+ *
+ * Calls disconnect with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void disconnect(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls disconnect with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls setVolume with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void setVolume(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls setVolume with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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.
+ *
+ * Calls volumeStep with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void volumeStep(const am_sinkID_t& sinkID, const int16_t& volStep, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls volumeStep with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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.
+ *
+ * Calls setSinkMuteState with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void setSinkMuteState(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls setSinkMuteState with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls setMainSinkSoundProperty with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void setMainSinkSoundProperty(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls setMainSinkSoundProperty with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls setMainSourceSoundProperty with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void setMainSourceSoundProperty(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls setMainSourceSoundProperty with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls setSystemProperty with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void setSystemProperty(const am_SystemProperty_s& property, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls setSystemProperty with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls getListMainConnections with synchronous semantics.
+ *
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListMainConnections(CommonAPI::CallStatus& callStatus, am_MainConnection_L& listConnections, am_Error_e& error);
+ /**
+ * Calls getListMainConnections with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> getListMainConnectionsAsync(GetListMainConnectionsAsyncCallback callback);
+ /**
+ * returns the actual list of Sinks
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ *
+ * Calls getListMainSinks with synchronous semantics.
+ *
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListMainSinks(CommonAPI::CallStatus& callStatus, am_SinkType_L& listMainSinks, am_Error_e& error);
+ /**
+ * Calls getListMainSinks with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> getListMainSinksAsync(GetListMainSinksAsyncCallback callback);
+ /**
+ * returns the actual list of Sources
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ *
+ * Calls getListMainSources with synchronous semantics.
+ *
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListMainSources(CommonAPI::CallStatus& callStatus, am_SourceType_L& listMainSources, am_Error_e& error);
+ /**
+ * Calls getListMainSources with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls getListMainSinkSoundProperties with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListMainSinkSoundProperties(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error);
+ /**
+ * Calls getListMainSinkSoundProperties with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls getListMainSourceSoundProperties with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListMainSourceSoundProperties(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error);
+ /**
+ * Calls getListMainSourceSoundProperties with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls getListSourceClasses with synchronous semantics.
+ *
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListSourceClasses(CommonAPI::CallStatus& callStatus, am_SourceClass_L& listSourceClasses, am_Error_e& error);
+ /**
+ * Calls getListSourceClasses with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls getListSinkClasses with synchronous semantics.
+ *
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListSinkClasses(CommonAPI::CallStatus& callStatus, am_SinkClass_L& listSinkClasses, am_Error_e& error);
+ /**
+ * Calls getListSinkClasses with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> getListSinkClassesAsync(GetListSinkClassesAsyncCallback callback);
+ /**
+ * Retrieves a complete list of all systemProperties.
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ *
+ * Calls getListSystemProperties with synchronous semantics.
+ *
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListSystemProperties(CommonAPI::CallStatus& callStatus, am_SystemProperty_L& listSystemProperties, am_Error_e& error);
+ /**
+ * Calls getListSystemProperties with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls getTimingInformation with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getTimingInformation(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_timeSync_t& delay, am_Error_e& error);
+ /**
+ * Calls getTimingInformation with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> getTimingInformationAsync(const am_mainConnectionID_t& mainConnectionID, GetTimingInformationAsyncCallback callback);
+ /**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ *
+ * Calls getListMainSinkNotificationConfigurations with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListMainSinkNotificationConfigurations(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);
+ /**
+ * Calls getListMainSinkNotificationConfigurations with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> getListMainSinkNotificationConfigurationsAsync(const am_sinkID_t& sinkID, GetListMainSinkNotificationConfigurationsAsyncCallback callback);
+ /**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ *
+ * Calls getListMainSourceNotificationConfigurations with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void getListMainSourceNotificationConfigurations(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);
+ /**
+ * Calls getListMainSourceNotificationConfigurations with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls setMainSinkNotificationConfiguration with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void setMainSinkNotificationConfiguration(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls setMainSinkNotificationConfiguration with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> 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
+ *
+ * Calls setMainSourceNotificationConfiguration with synchronous semantics.
+ *
+ * All const parameters are input parameters to this method.
+ * All non-const parameters will be filled with the returned values.
+ * The CallStatus will be filled when the method returns and indicate either
+ * "SUCCESS" or which type of error has occurred. In case of an error, ONLY the CallStatus
+ * will be set.
+ */
+ virtual void setMainSourceNotificationConfiguration(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error);
+ /**
+ * Calls setMainSourceNotificationConfiguration with asynchronous semantics.
+ *
+ * The provided callback will be called when the reply to this call arrives or
+ * an error occurs during the call. The CallStatus will indicate either "SUCCESS"
+ * or which type of error has occurred. In case of any error, ONLY the CallStatus
+ * will have a defined value.
+ * The std::future returned by this method will be fulfilled at arrival of the reply.
+ * It will provide the same value for CallStatus as will be handed to the callback.
+ */
+ virtual std::future<CommonAPI::CallStatus> setMainSourceNotificationConfigurationAsync(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSourceNotificationConfigurationAsyncCallback callback);
+
+
+ /**
+ * Returns the CommonAPI address of the remote partner this proxy communicates with.
+ */
+ virtual std::string getAddress() const;
+
+ /**
+ * Returns the domain of the remote partner this proxy communicates with.
+ */
+ virtual const std::string& getDomain() const;
+
+ /**
+ * Returns the service ID of the remote partner this proxy communicates with.
+ */
+ virtual const std::string& getServiceId() const;
+
+ /**
+ * Returns the instance ID of the remote partner this proxy communicates with.
+ */
+ virtual const std::string& getInstanceId() const;
+
+ /**
+ * Returns true if the remote partner for this proxy is currently known to be available.
+ */
+ virtual bool isAvailable() const;
+
+ /**
+ * Returns true if the remote partner for this proxy is available.
+ */
+ virtual bool isAvailableBlocking() const;
+
+ /**
+ * Returns the wrapper class that is used to (de-)register for notifications about
+ * the availability of the remote partner of this proxy.
+ */
+ virtual CommonAPI::ProxyStatusEvent& getProxyStatusEvent();
+
+ /**
+ * Returns the wrapper class that is used to access version information of the remote
+ * partner of this proxy.
+ */
+ virtual CommonAPI::InterfaceVersionAttribute& getInterfaceVersionAttribute();
+
+ private:
+ std::shared_ptr<CommandControlProxyBase> delegate_;
+};
+
+#ifdef WIN32
+ typedef CommandControlProxy<CommonAPI::WINDummyAttributeExtension<CommonAPI::WINDummyAttribute>> CommandControlProxyDefault;
+#else
+ typedef CommandControlProxy<> CommandControlProxyDefault;
+#endif
+
+
+//
+// CommandControlProxy Implementation
+//
+template <typename ... _AttributeExtensions>
+CommandControlProxy<_AttributeExtensions...>::CommandControlProxy(std::shared_ptr<CommonAPI::Proxy> delegate):
+ _AttributeExtensions(*(std::dynamic_pointer_cast<CommandControlProxyBase>(delegate)))...,
+ delegate_(std::dynamic_pointer_cast<CommandControlProxyBase>(delegate)) {
+}
+
+template <typename ... _AttributeExtensions>
+CommandControlProxy<_AttributeExtensions...>::~CommandControlProxy() {
+}
+
+/**
+ * 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::connect(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_mainConnectionID_t& mainConnectionID, am_Error_e& error) {
+ delegate_->connect(sourceID, sinkID, callStatus, mainConnectionID, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::connectAsync(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, ConnectAsyncCallback callback) {
+ return delegate_->connectAsync(sourceID, sinkID, callback);
+}
+/**
+ * disconnects a mainConnection
+(at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::disconnect(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->disconnect(mainConnectionID, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::disconnectAsync(const am_mainConnectionID_t& mainConnectionID, DisconnectAsyncCallback callback) {
+ return delegate_->disconnectAsync(mainConnectionID, 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::setVolume(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->setVolume(sinkID, volume, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::setVolumeAsync(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, SetVolumeAsyncCallback callback) {
+ return delegate_->setVolumeAsync(sinkID, volume, 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.
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::volumeStep(const am_sinkID_t& sinkID, const int16_t& volStep, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->volumeStep(sinkID, volStep, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::volumeStepAsync(const am_sinkID_t& sinkID, const int16_t& volStep, VolumeStepAsyncCallback callback) {
+ return delegate_->volumeStepAsync(sinkID, volStep, 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.
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::setSinkMuteState(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->setSinkMuteState(sinkID, muteState, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::setSinkMuteStateAsync(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, SetSinkMuteStateAsyncCallback callback) {
+ return delegate_->setSinkMuteStateAsync(sinkID, muteState, 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::setMainSinkSoundProperty(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->setMainSinkSoundProperty(sinkID, soundProperty, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::setMainSinkSoundPropertyAsync(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, SetMainSinkSoundPropertyAsyncCallback callback) {
+ return delegate_->setMainSinkSoundPropertyAsync(sinkID, soundProperty, 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::setMainSourceSoundProperty(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->setMainSourceSoundProperty(sourceID, soundProperty, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::setMainSourceSoundPropertyAsync(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, SetMainSourceSoundPropertyAsyncCallback callback) {
+ return delegate_->setMainSourceSoundPropertyAsync(sourceID, soundProperty, 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::setSystemProperty(const am_SystemProperty_s& property, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->setSystemProperty(property, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::setSystemPropertyAsync(const am_SystemProperty_s& property, SetSystemPropertyAsyncCallback callback) {
+ return delegate_->setSystemPropertyAsync(property, callback);
+}
+/**
+ * returns the actual list of MainConnections
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListMainConnections(CommonAPI::CallStatus& callStatus, am_MainConnection_L& listConnections, am_Error_e& error) {
+ delegate_->getListMainConnections(callStatus, listConnections, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListMainConnectionsAsync(GetListMainConnectionsAsyncCallback callback) {
+ return delegate_->getListMainConnectionsAsync(callback);
+}
+/**
+ * returns the actual list of Sinks
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListMainSinks(CommonAPI::CallStatus& callStatus, am_SinkType_L& listMainSinks, am_Error_e& error) {
+ delegate_->getListMainSinks(callStatus, listMainSinks, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListMainSinksAsync(GetListMainSinksAsyncCallback callback) {
+ return delegate_->getListMainSinksAsync(callback);
+}
+/**
+ * returns the actual list of Sources
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListMainSources(CommonAPI::CallStatus& callStatus, am_SourceType_L& listMainSources, am_Error_e& error) {
+ delegate_->getListMainSources(callStatus, listMainSources, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListMainSourcesAsync(GetListMainSourcesAsyncCallback callback) {
+ return delegate_->getListMainSourcesAsync(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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListMainSinkSoundProperties(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error) {
+ delegate_->getListMainSinkSoundProperties(sinkID, callStatus, listSoundProperties, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListMainSinkSoundPropertiesAsync(const am_sinkID_t& sinkID, GetListMainSinkSoundPropertiesAsyncCallback callback) {
+ return delegate_->getListMainSinkSoundPropertiesAsync(sinkID, 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListMainSourceSoundProperties(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error) {
+ delegate_->getListMainSourceSoundProperties(sourceID, callStatus, listSourceProperties, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListMainSourceSoundPropertiesAsync(const am_sourceID_t& sourceID, GetListMainSourceSoundPropertiesAsyncCallback callback) {
+ return delegate_->getListMainSourceSoundPropertiesAsync(sourceID, callback);
+}
+/**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListSourceClasses(CommonAPI::CallStatus& callStatus, am_SourceClass_L& listSourceClasses, am_Error_e& error) {
+ delegate_->getListSourceClasses(callStatus, listSourceClasses, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListSourceClassesAsync(GetListSourceClassesAsyncCallback callback) {
+ return delegate_->getListSourceClassesAsync(callback);
+}
+/**
+ * This is used to retrieve SinkClass Information of all sink classes
+(at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListSinkClasses(CommonAPI::CallStatus& callStatus, am_SinkClass_L& listSinkClasses, am_Error_e& error) {
+ delegate_->getListSinkClasses(callStatus, listSinkClasses, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListSinkClassesAsync(GetListSinkClassesAsyncCallback callback) {
+ return delegate_->getListSinkClassesAsync(callback);
+}
+/**
+ * Retrieves a complete list of all systemProperties.
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListSystemProperties(CommonAPI::CallStatus& callStatus, am_SystemProperty_L& listSystemProperties, am_Error_e& error) {
+ delegate_->getListSystemProperties(callStatus, listSystemProperties, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListSystemPropertiesAsync(GetListSystemPropertiesAsyncCallback callback) {
+ return delegate_->getListSystemPropertiesAsync(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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getTimingInformation(const am_mainConnectionID_t& mainConnectionID, CommonAPI::CallStatus& callStatus, am_timeSync_t& delay, am_Error_e& error) {
+ delegate_->getTimingInformation(mainConnectionID, callStatus, delay, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getTimingInformationAsync(const am_mainConnectionID_t& mainConnectionID, GetTimingInformationAsyncCallback callback) {
+ return delegate_->getTimingInformationAsync(mainConnectionID, callback);
+}
+/**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListMainSinkNotificationConfigurations(const am_sinkID_t& sinkID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ delegate_->getListMainSinkNotificationConfigurations(sinkID, callStatus, listMainNotificationConfigurations, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListMainSinkNotificationConfigurationsAsync(const am_sinkID_t& sinkID, GetListMainSinkNotificationConfigurationsAsyncCallback callback) {
+ return delegate_->getListMainSinkNotificationConfigurationsAsync(sinkID, callback);
+}
+/**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::getListMainSourceNotificationConfigurations(const am_sourceID_t& sourceID, CommonAPI::CallStatus& callStatus, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ delegate_->getListMainSourceNotificationConfigurations(sourceID, callStatus, listMainNotificationConfigurations, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::getListMainSourceNotificationConfigurationsAsync(const am_sourceID_t& sourceID, GetListMainSourceNotificationConfigurationsAsyncCallback callback) {
+ return delegate_->getListMainSourceNotificationConfigurationsAsync(sourceID, 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::setMainSinkNotificationConfiguration(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->setMainSinkNotificationConfiguration(sinkID, mainNotificationConfiguration, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::setMainSinkNotificationConfigurationAsync(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSinkNotificationConfigurationAsyncCallback callback) {
+ return delegate_->setMainSinkNotificationConfigurationAsync(sinkID, mainNotificationConfiguration, 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
+ */
+template <typename ... _AttributeExtensions>
+void CommandControlProxy<_AttributeExtensions...>::setMainSourceNotificationConfiguration(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, CommonAPI::CallStatus& callStatus, am_Error_e& error) {
+ delegate_->setMainSourceNotificationConfiguration(sourceID, mainNotificationConfiguration, callStatus, error);
+}
+
+template <typename ... _AttributeExtensions>
+std::future<CommonAPI::CallStatus> CommandControlProxy<_AttributeExtensions...>::setMainSourceNotificationConfigurationAsync(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSourceNotificationConfigurationAsyncCallback callback) {
+ return delegate_->setMainSourceNotificationConfigurationAsync(sourceID, mainNotificationConfiguration, callback);
+}
+
+template <typename ... _AttributeExtensions>
+std::string CommandControlProxy<_AttributeExtensions...>::getAddress() const {
+ return delegate_->getAddress();
+}
+
+template <typename ... _AttributeExtensions>
+const std::string& CommandControlProxy<_AttributeExtensions...>::getDomain() const {
+ return delegate_->getDomain();
+}
+
+template <typename ... _AttributeExtensions>
+const std::string& CommandControlProxy<_AttributeExtensions...>::getServiceId() const {
+ return delegate_->getServiceId();
+}
+
+template <typename ... _AttributeExtensions>
+const std::string& CommandControlProxy<_AttributeExtensions...>::getInstanceId() const {
+ return delegate_->getInstanceId();
+}
+
+template <typename ... _AttributeExtensions>
+bool CommandControlProxy<_AttributeExtensions...>::isAvailable() const {
+ return delegate_->isAvailable();
+}
+
+template <typename ... _AttributeExtensions>
+bool CommandControlProxy<_AttributeExtensions...>::isAvailableBlocking() const {
+ return delegate_->isAvailableBlocking();
+}
+
+template <typename ... _AttributeExtensions>
+CommonAPI::ProxyStatusEvent& CommandControlProxy<_AttributeExtensions...>::getProxyStatusEvent() {
+ return delegate_->getProxyStatusEvent();
+}
+
+template <typename ... _AttributeExtensions>
+CommonAPI::InterfaceVersionAttribute& CommandControlProxy<_AttributeExtensions...>::getInterfaceVersionAttribute() {
+ return delegate_->getInterfaceVersionAttribute();
+}
+
+
+} // namespace am
+} // namespace genivi
+} // namespace org
+
+
+#endif // ORG_GENIVI_AM_Command_Control_PROXY_H_
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxyBase.h b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxyBase.h
new file mode 100644
index 0000000..767b9e1
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlProxyBase.h
@@ -0,0 +1,348 @@
+/*
+* 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_PROXY_BASE_H_
+#define ORG_GENIVI_AM_Command_Control_PROXY_BASE_H_
+
+#include "CommandControl.h"
+
+
+#include <org/genivi/am.h>
+
+#if !defined (COMMONAPI_INTERNAL_COMPILATION)
+#define COMMONAPI_INTERNAL_COMPILATION
+#endif
+
+#include <CommonAPI/InputStream.h>
+#include <CommonAPI/OutputStream.h>
+#include <CommonAPI/SerializableStruct.h>
+#include <cstdint>
+#include <string>
+#include <vector>
+
+#include <CommonAPI/Event.h>
+#include <CommonAPI/Proxy.h>
+#include <functional>
+#include <future>
+
+#undef COMMONAPI_INTERNAL_COMPILATION
+
+namespace org {
+namespace genivi {
+namespace am {
+
+class CommandControlProxyBase: virtual public CommonAPI::Proxy {
+ public:
+ typedef CommonAPI::Event<am_MainConnectionType_s> NewMainConnectionEvent;
+ typedef CommonAPI::Event<am_mainConnectionID_t> RemovedMainConnectionEvent;
+ typedef CommonAPI::Event<am_SinkType_s> NewSinkEvent;
+ typedef CommonAPI::Event<am_sinkID_t> RemovedSinkEvent;
+ typedef CommonAPI::Event<am_SourceType_s> NewSourceEvent;
+ typedef CommonAPI::Event<am_sourceID_t> RemovedSourceEvent;
+ typedef CommonAPI::Event<> NumberOfSinkClassesChangedEvent;
+ typedef CommonAPI::Event<> NumberOfSourceClassesChangedEvent;
+ typedef CommonAPI::Event<am_mainConnectionID_t, am_ConnectionState_e> MainConnectionStateChangedEvent;
+ typedef CommonAPI::Event<am_sinkID_t, am_MainSoundProperty_s> MainSinkSoundPropertyChangedEvent;
+ typedef CommonAPI::Event<am_sourceID_t, am_MainSoundProperty_s> MainSourceSoundPropertyChangedEvent;
+ typedef CommonAPI::Event<am_sinkID_t, am_Availability_s> SinkAvailabilityChangedEvent;
+ typedef CommonAPI::Event<am_sourceID_t, am_Availability_s> SourceAvailabilityChangedEvent;
+ typedef CommonAPI::Event<am_sinkID_t, am_mainVolume_t> VolumeChangedEvent;
+ typedef CommonAPI::Event<am_sinkID_t, am_MuteState_e> SinkMuteStateChangedEvent;
+ typedef CommonAPI::Event<am_SystemProperty_s> SystemPropertyChangedEvent;
+ typedef CommonAPI::Event<am_mainConnectionID_t, am_timeSync_t> TimingInformationChangedEvent;
+ typedef CommonAPI::Event<am_sinkID_t, am_sinkClass_t, am_MainSoundProperty_L> SinkUpdatedEvent;
+ typedef CommonAPI::Event<am_sourceID_t, am_sourceClass_t, am_MainSoundProperty_L> SourceUpdatedEvent;
+ typedef CommonAPI::Event<am_sinkID_t, am_NotificationPayload_s> SinkNotificationEvent;
+ typedef CommonAPI::Event<am_sourceID_t, am_NotificationPayload_s> SourceNotificationEvent;
+ typedef CommonAPI::Event<am_sinkID_t, am_NotificationConfiguration_s> MainSinkNotificationConfigurationChangedEvent;
+ typedef CommonAPI::Event<am_sourceID_t, am_NotificationConfiguration_s> MainSourceNotificationConfigurationChangedEvent;
+
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_mainConnectionID_t&, const am_Error_e&)> ConnectAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> DisconnectAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> SetVolumeAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> VolumeStepAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> SetSinkMuteStateAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> SetMainSinkSoundPropertyAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> SetMainSourceSoundPropertyAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> SetSystemPropertyAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_MainConnection_L&, const am_Error_e&)> GetListMainConnectionsAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_SinkType_L&, const am_Error_e&)> GetListMainSinksAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_SourceType_L&, const am_Error_e&)> GetListMainSourcesAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_MainSoundProperty_L&, const am_Error_e&)> GetListMainSinkSoundPropertiesAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_MainSoundProperty_L&, const am_Error_e&)> GetListMainSourceSoundPropertiesAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_SourceClass_L&, const am_Error_e&)> GetListSourceClassesAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_SinkClass_L&, const am_Error_e&)> GetListSinkClassesAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_SystemProperty_L&, const am_Error_e&)> GetListSystemPropertiesAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_timeSync_t&, const am_Error_e&)> GetTimingInformationAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_NotificationConfiguration_L&, const am_Error_e&)> GetListMainSinkNotificationConfigurationsAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_NotificationConfiguration_L&, const am_Error_e&)> GetListMainSourceNotificationConfigurationsAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> SetMainSinkNotificationConfigurationAsyncCallback;
+ typedef std::function<void(const CommonAPI::CallStatus&, const am_Error_e&)> SetMainSourceNotificationConfigurationAsyncCallback;
+
+
+ /**
+ * Callback that is called when the number of connections change
+ */
+ virtual NewMainConnectionEvent& getNewMainConnectionEvent() = 0;
+ /**
+ * Callback that is called when the number of connections change
+ */
+ virtual RemovedMainConnectionEvent& getRemovedMainConnectionEvent() = 0;
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ virtual NewSinkEvent& getNewSinkEvent() = 0;
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ virtual RemovedSinkEvent& getRemovedSinkEvent() = 0;
+ /**
+ * Callback that is called when the number of sources change
+ */
+ virtual NewSourceEvent& getNewSourceEvent() = 0;
+ /**
+ * Callback that is called when the number of sources change
+ */
+ virtual RemovedSourceEvent& getRemovedSourceEvent() = 0;
+ /**
+ * this callback is fired if the number of sink classes changed
+ */
+ virtual NumberOfSinkClassesChangedEvent& getNumberOfSinkClassesChangedEvent() = 0;
+ /**
+ * this callback is fired if the number of source classes changed
+ */
+ virtual NumberOfSourceClassesChangedEvent& getNumberOfSourceClassesChangedEvent() = 0;
+ /**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+ virtual MainConnectionStateChangedEvent& getMainConnectionStateChangedEvent() = 0;
+ /**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+ virtual MainSinkSoundPropertyChangedEvent& getMainSinkSoundPropertyChangedEvent() = 0;
+ /**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+ virtual MainSourceSoundPropertyChangedEvent& getMainSourceSoundPropertyChangedEvent() = 0;
+ /**
+ * this callback is called when the availability of a sink has changed
+ */
+ virtual SinkAvailabilityChangedEvent& getSinkAvailabilityChangedEvent() = 0;
+ /**
+ * this callback is called when the availability of source has changed.
+ */
+ virtual SourceAvailabilityChangedEvent& getSourceAvailabilityChangedEvent() = 0;
+ /**
+ * this callback indicates a volume change on the indicated sink
+ */
+ virtual VolumeChangedEvent& getVolumeChangedEvent() = 0;
+ /**
+ * this callback indicates a mute state change on a sink.
+ */
+ virtual SinkMuteStateChangedEvent& getSinkMuteStateChangedEvent() = 0;
+ /**
+ * is fired if a systemProperty changed
+ */
+ virtual SystemPropertyChangedEvent& getSystemPropertyChangedEvent() = 0;
+ /**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+ virtual TimingInformationChangedEvent& getTimingInformationChangedEvent() = 0;
+ /**
+ * This callback is called when a sink is updated.
+ */
+ virtual SinkUpdatedEvent& getSinkUpdatedEvent() = 0;
+ /**
+ * This callback is called when a source is updated.
+ */
+ virtual SourceUpdatedEvent& getSourceUpdatedEvent() = 0;
+ /**
+ * This callback is called when a notificated value of a sink changes.
+ */
+ virtual SinkNotificationEvent& getSinkNotificationEvent() = 0;
+ /**
+ * This callback is called when a notifcated value of a source changes.
+ */
+ virtual SourceNotificationEvent& getSourceNotificationEvent() = 0;
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ virtual MainSinkNotificationConfigurationChangedEvent& getMainSinkNotificationConfigurationChangedEvent() = 0;
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ virtual MainSourceNotificationConfigurationChangedEvent& getMainSourceNotificationConfigurationChangedEvent() = 0;
+
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> connectAsync(const am_sourceID_t& sourceID, const am_sinkID_t& sinkID, ConnectAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> disconnectAsync(const am_mainConnectionID_t& mainConnectionID, DisconnectAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> setVolumeAsync(const am_sinkID_t& sinkID, const am_mainVolume_t& volume, SetVolumeAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> volumeStepAsync(const am_sinkID_t& sinkID, const int16_t& volStep, VolumeStepAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> setSinkMuteStateAsync(const am_sinkID_t& sinkID, const am_MuteState_e& muteState, SetSinkMuteStateAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> setMainSinkSoundPropertyAsync(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty, SetMainSinkSoundPropertyAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> setMainSourceSoundPropertyAsync(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty, SetMainSourceSoundPropertyAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> setSystemPropertyAsync(const am_SystemProperty_s& property, SetSystemPropertyAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListMainConnectionsAsync(GetListMainConnectionsAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListMainSinksAsync(GetListMainSinksAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListMainSourcesAsync(GetListMainSourcesAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListMainSinkSoundPropertiesAsync(const am_sinkID_t& sinkID, GetListMainSinkSoundPropertiesAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListMainSourceSoundPropertiesAsync(const am_sourceID_t& sourceID, GetListMainSourceSoundPropertiesAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListSourceClassesAsync(GetListSourceClassesAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListSinkClassesAsync(GetListSinkClassesAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListSystemPropertiesAsync(GetListSystemPropertiesAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getTimingInformationAsync(const am_mainConnectionID_t& mainConnectionID, GetTimingInformationAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListMainSinkNotificationConfigurationsAsync(const am_sinkID_t& sinkID, GetListMainSinkNotificationConfigurationsAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> getListMainSourceNotificationConfigurationsAsync(const am_sourceID_t& sourceID, GetListMainSourceNotificationConfigurationsAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> setMainSinkNotificationConfigurationAsync(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSinkNotificationConfigurationAsyncCallback callback) = 0;
+ /**
+ * 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) = 0;
+ virtual std::future<CommonAPI::CallStatus> setMainSourceNotificationConfigurationAsync(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration, SetMainSourceNotificationConfigurationAsyncCallback callback) = 0;
+};
+
+} // namespace am
+} // namespace genivi
+} // namespace org
+
+#endif // ORG_GENIVI_AM_Command_Control_PROXY_BASE_H_
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStub.h b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStub.h
new file mode 100644
index 0000000..4e15ce0
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStub.h
@@ -0,0 +1,492 @@
+/*
+* 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_STUB_H_
+#define ORG_GENIVI_AM_Command_Control_STUB_H_
+
+
+
+#include <org/genivi/am.h>
+
+#include "CommandControl.h"
+
+#if !defined (COMMONAPI_INTERNAL_COMPILATION)
+#define COMMONAPI_INTERNAL_COMPILATION
+#endif
+
+#include <CommonAPI/InputStream.h>
+#include <CommonAPI/OutputStream.h>
+#include <CommonAPI/SerializableStruct.h>
+#include <cstdint>
+#include <string>
+#include <unordered_set>
+#include <vector>
+
+#include <CommonAPI/Stub.h>
+
+#undef COMMONAPI_INTERNAL_COMPILATION
+
+namespace org {
+namespace genivi {
+namespace am {
+
+/**
+ * Receives messages from remote and handles all dispatching of deserialized calls
+ * to a stub for the service CommandControl. Also provides means to send broadcasts
+ * and attribute-changed-notifications of observable attributes as defined by this service.
+ * An application developer should not need to bother with this class.
+ */
+class CommandControlStubAdapter: virtual public CommonAPI::StubAdapter, public CommandControl {
+ public:
+
+ /**
+ * Sends a broadcast event for newMainConnection. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireNewMainConnectionEvent(const am_MainConnectionType_s& mainConnection) = 0;
+ /**
+ * Sends a broadcast event for removedMainConnection. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireRemovedMainConnectionEvent(const am_mainConnectionID_t& mainConnection) = 0;
+ /**
+ * Sends a broadcast event for newSink. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireNewSinkEvent(const am_SinkType_s& sink) = 0;
+ /**
+ * Sends a broadcast event for removedSink. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireRemovedSinkEvent(const am_sinkID_t& sinkID) = 0;
+ /**
+ * Sends a broadcast event for newSource. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireNewSourceEvent(const am_SourceType_s& source) = 0;
+ /**
+ * Sends a broadcast event for removedSource. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireRemovedSourceEvent(const am_sourceID_t& source) = 0;
+ /**
+ * Sends a broadcast event for numberOfSinkClassesChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireNumberOfSinkClassesChangedEvent() = 0;
+ /**
+ * Sends a broadcast event for numberOfSourceClassesChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireNumberOfSourceClassesChangedEvent() = 0;
+ /**
+ * Sends a broadcast event for mainConnectionStateChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireMainConnectionStateChangedEvent(const am_mainConnectionID_t& connectionID, const am_ConnectionState_e& connectionState) = 0;
+ /**
+ * Sends a broadcast event for mainSinkSoundPropertyChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireMainSinkSoundPropertyChangedEvent(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty) = 0;
+ /**
+ * Sends a broadcast event for mainSourceSoundPropertyChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireMainSourceSoundPropertyChangedEvent(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty) = 0;
+ /**
+ * Sends a broadcast event for sinkAvailabilityChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSinkAvailabilityChangedEvent(const am_sinkID_t& sinkID, const am_Availability_s& availability) = 0;
+ /**
+ * Sends a broadcast event for sourceAvailabilityChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSourceAvailabilityChangedEvent(const am_sourceID_t& sourceID, const am_Availability_s& availability) = 0;
+ /**
+ * Sends a broadcast event for volumeChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireVolumeChangedEvent(const am_sinkID_t& sinkID, const am_mainVolume_t& volume) = 0;
+ /**
+ * Sends a broadcast event for sinkMuteStateChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSinkMuteStateChangedEvent(const am_sinkID_t& sinkID, const am_MuteState_e& muteState) = 0;
+ /**
+ * Sends a broadcast event for systemPropertyChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSystemPropertyChangedEvent(const am_SystemProperty_s& systemProperty) = 0;
+ /**
+ * Sends a broadcast event for timingInformationChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireTimingInformationChangedEvent(const am_mainConnectionID_t& mainConnectionID, const am_timeSync_t& time) = 0;
+ /**
+ * Sends a broadcast event for sinkUpdated. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSinkUpdatedEvent(const am_sinkID_t& sinkID, const am_sinkClass_t& sinkClassID, const am_MainSoundProperty_L& listMainSoundProperties) = 0;
+ /**
+ * Sends a broadcast event for sourceUpdated. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSourceUpdatedEvent(const am_sourceID_t& sourceID, const am_sourceClass_t& sourceClassID, const am_MainSoundProperty_L& listMainSoundProperties) = 0;
+ /**
+ * Sends a broadcast event for sinkNotification. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSinkNotificationEvent(const am_sinkID_t& sinkID, const am_NotificationPayload_s& notification) = 0;
+ /**
+ * Sends a broadcast event for sourceNotification. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireSourceNotificationEvent(const am_sourceID_t& sourceID, const am_NotificationPayload_s& notification) = 0;
+ /**
+ * Sends a broadcast event for mainSinkNotificationConfigurationChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireMainSinkNotificationConfigurationChangedEvent(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration) = 0;
+ /**
+ * Sends a broadcast event for mainSourceNotificationConfigurationChanged. Should not be called directly.
+ * Instead, the "fire<broadcastName>Event" methods of the stub should be used.
+ */
+ virtual void fireMainSourceNotificationConfigurationChangedEvent(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration) = 0;
+
+
+ virtual void deactivateManagedInstances() = 0;
+protected:
+ /**
+ * Defines properties for storing the ClientIds of clients / proxies that have
+ * subscribed to the selective broadcasts
+ */
+};
+
+
+/**
+ * Defines the necessary callbacks to handle remote set events related to the attributes
+ * defined in the IDL description for CommandControl.
+ * For each attribute two callbacks are defined:
+ * - a verification callback that allows to verify the requested value and to prevent setting
+ * e.g. an invalid value ("onRemoteSet<AttributeName>").
+ * - an action callback to do local work after the attribute value has been changed
+ * ("onRemote<AttributeName>Changed").
+ *
+ * This class and the one below are the ones an application developer needs to have
+ * a look at if he wants to implement a service.
+ */
+class CommandControlStubRemoteEvent {
+ public:
+ virtual ~CommandControlStubRemoteEvent() { }
+
+};
+
+
+/**
+ * Defines the interface that must be implemented by any class that should provide
+ * the service CommandControl to remote clients.
+ * This class and the one above are the ones an application developer needs to have
+ * a look at if he wants to implement a service.
+ */
+class CommandControlStub: public virtual CommonAPI::Stub<CommandControlStubAdapter, CommandControlStubRemoteEvent> {
+public:
+ virtual ~CommandControlStub() { }
+ virtual const CommonAPI::Version& getInterfaceVersion(std::shared_ptr<CommonAPI::ClientId> clientId) = 0;
+
+
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method connect.
+ virtual void connect(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_sinkID_t sinkID, am_mainConnectionID_t& mainConnectionID, am_Error_e& error) = 0;
+ /**
+ * disconnects a mainConnection
+ (at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+ /// This is the method that will be called on remote calls on the method disconnect.
+ virtual void disconnect(const std::shared_ptr<CommonAPI::ClientId> clientId, am_mainConnectionID_t mainConnectionID, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method setVolume.
+ virtual void setVolume(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_mainVolume_t volume, am_Error_e& error) = 0;
+ /**
+ * 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.
+ */
+ /// This is the method that will be called on remote calls on the method volumeStep.
+ virtual void volumeStep(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, int16_t volStep, am_Error_e& error) = 0;
+ /**
+ * 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.
+ */
+ /// This is the method that will be called on remote calls on the method setSinkMuteState.
+ virtual void setSinkMuteState(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MuteState_e muteState, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method setMainSinkSoundProperty.
+ virtual void setMainSinkSoundProperty(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MainSoundProperty_s soundProperty, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method setMainSourceSoundProperty.
+ virtual void setMainSourceSoundProperty(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_MainSoundProperty_s soundProperty, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method setSystemProperty.
+ virtual void setSystemProperty(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SystemProperty_s property, am_Error_e& error) = 0;
+ /**
+ * returns the actual list of MainConnections
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ /// This is the method that will be called on remote calls on the method getListMainConnections.
+ virtual void getListMainConnections(const std::shared_ptr<CommonAPI::ClientId> clientId, am_MainConnection_L& listConnections, am_Error_e& error) = 0;
+ /**
+ * returns the actual list of Sinks
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ /// This is the method that will be called on remote calls on the method getListMainSinks.
+ virtual void getListMainSinks(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SinkType_L& listMainSinks, am_Error_e& error) = 0;
+ /**
+ * returns the actual list of Sources
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ /// This is the method that will be called on remote calls on the method getListMainSources.
+ virtual void getListMainSources(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SourceType_L& listMainSources, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method getListMainSinkSoundProperties.
+ virtual void getListMainSinkSoundProperties(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error) = 0;
+ /**
+ * This is used to retrieve all source sound properties related to a
+ * source.
+ (at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+ /// This is the method that will be called on remote calls on the method getListMainSourceSoundProperties.
+ virtual void getListMainSourceSoundProperties(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error) = 0;
+ /**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+ (at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+ /// This is the method that will be called on remote calls on the method getListSourceClasses.
+ virtual void getListSourceClasses(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SourceClass_L& listSourceClasses, am_Error_e& error) = 0;
+ /**
+ * This is used to retrieve SinkClass Information of all sink classes
+ (at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+ /// This is the method that will be called on remote calls on the method getListSinkClasses.
+ virtual void getListSinkClasses(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SinkClass_L& listSinkClasses, am_Error_e& error) = 0;
+ /**
+ * Retrieves a complete list of all systemProperties.
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ /// This is the method that will be called on remote calls on the method getListSystemProperties.
+ virtual void getListSystemProperties(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SystemProperty_L& listSystemProperties, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method getTimingInformation.
+ virtual void getTimingInformation(const std::shared_ptr<CommonAPI::ClientId> clientId, am_mainConnectionID_t mainConnectionID, am_timeSync_t& delay, am_Error_e& error) = 0;
+ /**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+ /// This is the method that will be called on remote calls on the method getListMainSinkNotificationConfigurations.
+ virtual void getListMainSinkNotificationConfigurations(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) = 0;
+ /**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+ /// This is the method that will be called on remote calls on the method getListMainSourceNotificationConfigurations.
+ virtual void getListMainSourceNotificationConfigurations(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method setMainSinkNotificationConfiguration.
+ virtual void setMainSinkNotificationConfiguration(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error) = 0;
+ /**
+ * 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
+ */
+ /// This is the method that will be called on remote calls on the method setMainSourceNotificationConfiguration.
+ virtual void setMainSourceNotificationConfiguration(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error) = 0;
+ /**
+ * Callback that is called when the number of connections change
+ */
+ /// Sends a broadcast event for newMainConnection.
+ virtual void fireNewMainConnectionEvent(const am_MainConnectionType_s& mainConnection) = 0;
+ /**
+ * Callback that is called when the number of connections change
+ */
+ /// Sends a broadcast event for removedMainConnection.
+ virtual void fireRemovedMainConnectionEvent(const am_mainConnectionID_t& mainConnection) = 0;
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ /// Sends a broadcast event for newSink.
+ virtual void fireNewSinkEvent(const am_SinkType_s& sink) = 0;
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ /// Sends a broadcast event for removedSink.
+ virtual void fireRemovedSinkEvent(const am_sinkID_t& sinkID) = 0;
+ /**
+ * Callback that is called when the number of sources change
+ */
+ /// Sends a broadcast event for newSource.
+ virtual void fireNewSourceEvent(const am_SourceType_s& source) = 0;
+ /**
+ * Callback that is called when the number of sources change
+ */
+ /// Sends a broadcast event for removedSource.
+ virtual void fireRemovedSourceEvent(const am_sourceID_t& source) = 0;
+ /**
+ * this callback is fired if the number of sink classes changed
+ */
+ /// Sends a broadcast event for numberOfSinkClassesChanged.
+ virtual void fireNumberOfSinkClassesChangedEvent() = 0;
+ /**
+ * this callback is fired if the number of source classes changed
+ */
+ /// Sends a broadcast event for numberOfSourceClassesChanged.
+ virtual void fireNumberOfSourceClassesChangedEvent() = 0;
+ /**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+ /// Sends a broadcast event for mainConnectionStateChanged.
+ virtual void fireMainConnectionStateChangedEvent(const am_mainConnectionID_t& connectionID, const am_ConnectionState_e& connectionState) = 0;
+ /**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+ /// Sends a broadcast event for mainSinkSoundPropertyChanged.
+ virtual void fireMainSinkSoundPropertyChangedEvent(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty) = 0;
+ /**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+ /// Sends a broadcast event for mainSourceSoundPropertyChanged.
+ virtual void fireMainSourceSoundPropertyChangedEvent(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty) = 0;
+ /**
+ * this callback is called when the availability of a sink has changed
+ */
+ /// Sends a broadcast event for sinkAvailabilityChanged.
+ virtual void fireSinkAvailabilityChangedEvent(const am_sinkID_t& sinkID, const am_Availability_s& availability) = 0;
+ /**
+ * this callback is called when the availability of source has changed.
+ */
+ /// Sends a broadcast event for sourceAvailabilityChanged.
+ virtual void fireSourceAvailabilityChangedEvent(const am_sourceID_t& sourceID, const am_Availability_s& availability) = 0;
+ /**
+ * this callback indicates a volume change on the indicated sink
+ */
+ /// Sends a broadcast event for volumeChanged.
+ virtual void fireVolumeChangedEvent(const am_sinkID_t& sinkID, const am_mainVolume_t& volume) = 0;
+ /**
+ * this callback indicates a mute state change on a sink.
+ */
+ /// Sends a broadcast event for sinkMuteStateChanged.
+ virtual void fireSinkMuteStateChangedEvent(const am_sinkID_t& sinkID, const am_MuteState_e& muteState) = 0;
+ /**
+ * is fired if a systemProperty changed
+ */
+ /// Sends a broadcast event for systemPropertyChanged.
+ virtual void fireSystemPropertyChangedEvent(const am_SystemProperty_s& systemProperty) = 0;
+ /**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+ /// Sends a broadcast event for timingInformationChanged.
+ virtual void fireTimingInformationChangedEvent(const am_mainConnectionID_t& mainConnectionID, const am_timeSync_t& time) = 0;
+ /**
+ * This callback is called when a sink is updated.
+ */
+ /// Sends a broadcast event for sinkUpdated.
+ virtual void fireSinkUpdatedEvent(const am_sinkID_t& sinkID, const am_sinkClass_t& sinkClassID, const am_MainSoundProperty_L& listMainSoundProperties) = 0;
+ /**
+ * This callback is called when a source is updated.
+ */
+ /// Sends a broadcast event for sourceUpdated.
+ virtual void fireSourceUpdatedEvent(const am_sourceID_t& sourceID, const am_sourceClass_t& sourceClassID, const am_MainSoundProperty_L& listMainSoundProperties) = 0;
+ /**
+ * This callback is called when a notificated value of a sink changes.
+ */
+ /// Sends a broadcast event for sinkNotification.
+ virtual void fireSinkNotificationEvent(const am_sinkID_t& sinkID, const am_NotificationPayload_s& notification) = 0;
+ /**
+ * This callback is called when a notifcated value of a source changes.
+ */
+ /// Sends a broadcast event for sourceNotification.
+ virtual void fireSourceNotificationEvent(const am_sourceID_t& sourceID, const am_NotificationPayload_s& notification) = 0;
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ /// Sends a broadcast event for mainSinkNotificationConfigurationChanged.
+ virtual void fireMainSinkNotificationConfigurationChangedEvent(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration) = 0;
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ /// Sends a broadcast event for mainSourceNotificationConfigurationChanged.
+ virtual void fireMainSourceNotificationConfigurationChangedEvent(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration) = 0;
+
+ using CommonAPI::Stub<CommandControlStubAdapter, CommandControlStubRemoteEvent>::initStubAdapter;
+ typedef CommonAPI::Stub<CommandControlStubAdapter, CommandControlStubRemoteEvent>::StubAdapterType StubAdapterType;
+ typedef CommonAPI::Stub<CommandControlStubAdapter, CommandControlStubRemoteEvent>::RemoteEventHandlerType RemoteEventHandlerType;
+ typedef CommandControlStubRemoteEvent RemoteEventType;
+ typedef CommandControl StubInterface;
+};
+
+} // namespace am
+} // namespace genivi
+} // namespace org
+
+#endif // ORG_GENIVI_AM_Command_Control_STUB_H_
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.cpp b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.cpp
new file mode 100644
index 0000000..cca1a5e
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.cpp
@@ -0,0 +1,456 @@
+/*
+* 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.
+*
+*
+*/
+#include <org/genivi/am/CommandControlStubDefault.h>
+
+namespace org {
+namespace genivi {
+namespace am {
+
+CommandControlStubDefault::CommandControlStubDefault():
+ remoteEventHandler_(this),
+ interfaceVersion_(CommandControl::getInterfaceVersion()) {
+}
+
+const CommonAPI::Version& CommandControlStubDefault::getInterfaceVersion(std::shared_ptr<CommonAPI::ClientId> clientId) {
+ return interfaceVersion_;
+}
+
+CommandControlStubRemoteEvent* CommandControlStubDefault::initStubAdapter(const std::shared_ptr<CommandControlStubAdapter>& stubAdapter) {
+ CommonAPI::Stub<CommandControlStubAdapter, CommandControlStubRemoteEvent>::stubAdapter_ = stubAdapter;
+ return &remoteEventHandler_;
+}
+
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::connect(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_sinkID_t sinkID, am_mainConnectionID_t& mainConnectionID, am_Error_e& error) {
+ // Call old style methods in default
+ connect(sourceID, sinkID, mainConnectionID, error);
+}
+void CommandControlStubDefault::connect(am_sourceID_t sourceID, am_sinkID_t sinkID, am_mainConnectionID_t& mainConnectionID, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * disconnects a mainConnection
+(at)return E_OK on successes, E_NON_EXISTENT if
+ * the connection does not exist, E_NOT_POSSIBLE on error.
+ */
+void CommandControlStubDefault::disconnect(const std::shared_ptr<CommonAPI::ClientId> clientId, am_mainConnectionID_t mainConnectionID, am_Error_e& error) {
+ // Call old style methods in default
+ disconnect(mainConnectionID, error);
+}
+void CommandControlStubDefault::disconnect(am_mainConnectionID_t mainConnectionID, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::setVolume(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_mainVolume_t volume, am_Error_e& error) {
+ // Call old style methods in default
+ setVolume(sinkID, volume, error);
+}
+void CommandControlStubDefault::setVolume(am_sinkID_t sinkID, am_mainVolume_t volume, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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.
+ */
+void CommandControlStubDefault::volumeStep(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, int16_t volStep, am_Error_e& error) {
+ // Call old style methods in default
+ volumeStep(sinkID, volStep, error);
+}
+void CommandControlStubDefault::volumeStep(am_sinkID_t sinkID, int16_t volStep, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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.
+ */
+void CommandControlStubDefault::setSinkMuteState(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MuteState_e muteState, am_Error_e& error) {
+ // Call old style methods in default
+ setSinkMuteState(sinkID, muteState, error);
+}
+void CommandControlStubDefault::setSinkMuteState(am_sinkID_t sinkID, am_MuteState_e muteState, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::setMainSinkSoundProperty(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MainSoundProperty_s soundProperty, am_Error_e& error) {
+ // Call old style methods in default
+ setMainSinkSoundProperty(sinkID, soundProperty, error);
+}
+void CommandControlStubDefault::setMainSinkSoundProperty(am_sinkID_t sinkID, am_MainSoundProperty_s soundProperty, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::setMainSourceSoundProperty(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_MainSoundProperty_s soundProperty, am_Error_e& error) {
+ // Call old style methods in default
+ setMainSourceSoundProperty(sourceID, soundProperty, error);
+}
+void CommandControlStubDefault::setMainSourceSoundProperty(am_sourceID_t sourceID, am_MainSoundProperty_s soundProperty, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::setSystemProperty(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SystemProperty_s property, am_Error_e& error) {
+ // Call old style methods in default
+ setSystemProperty(property, error);
+}
+void CommandControlStubDefault::setSystemProperty(am_SystemProperty_s property, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * returns the actual list of MainConnections
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+void CommandControlStubDefault::getListMainConnections(const std::shared_ptr<CommonAPI::ClientId> clientId, am_MainConnection_L& listConnections, am_Error_e& error) {
+ // Call old style methods in default
+ getListMainConnections(listConnections, error);
+}
+void CommandControlStubDefault::getListMainConnections(am_MainConnection_L& listConnections, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * returns the actual list of Sinks
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+void CommandControlStubDefault::getListMainSinks(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SinkType_L& listMainSinks, am_Error_e& error) {
+ // Call old style methods in default
+ getListMainSinks(listMainSinks, error);
+}
+void CommandControlStubDefault::getListMainSinks(am_SinkType_L& listMainSinks, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * returns the actual list of Sources
+(at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+void CommandControlStubDefault::getListMainSources(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SourceType_L& listMainSources, am_Error_e& error) {
+ // Call old style methods in default
+ getListMainSources(listMainSources, error);
+}
+void CommandControlStubDefault::getListMainSources(am_SourceType_L& listMainSources, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::getListMainSinkSoundProperties(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error) {
+ // Call old style methods in default
+ getListMainSinkSoundProperties(sinkID, listSoundProperties, error);
+}
+void CommandControlStubDefault::getListMainSinkSoundProperties(am_sinkID_t sinkID, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * This is used to retrieve all source sound properties related to a
+ * source.
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+void CommandControlStubDefault::getListMainSourceSoundProperties(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error) {
+ // Call old style methods in default
+ getListMainSourceSoundProperties(sourceID, listSourceProperties, error);
+}
+void CommandControlStubDefault::getListMainSourceSoundProperties(am_sourceID_t sourceID, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * This is used to retrieve SourceClass Information of all source classes
+ *
+(at)return E_OK on success, E_DATABASE_ERROR on error
+ */
+void CommandControlStubDefault::getListSourceClasses(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SourceClass_L& listSourceClasses, am_Error_e& error) {
+ // Call old style methods in default
+ getListSourceClasses(listSourceClasses, error);
+}
+void CommandControlStubDefault::getListSourceClasses(am_SourceClass_L& listSourceClasses, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * This is used to retrieve SinkClass Information of all sink classes
+(at)return
+ * E_OK on success, E_DATABASE_ERROR on error
+ */
+void CommandControlStubDefault::getListSinkClasses(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SinkClass_L& listSinkClasses, am_Error_e& error) {
+ // Call old style methods in default
+ getListSinkClasses(listSinkClasses, error);
+}
+void CommandControlStubDefault::getListSinkClasses(am_SinkClass_L& listSinkClasses, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * Retrieves a complete list of all systemProperties.
+(at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+void CommandControlStubDefault::getListSystemProperties(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SystemProperty_L& listSystemProperties, am_Error_e& error) {
+ // Call old style methods in default
+ getListSystemProperties(listSystemProperties, error);
+}
+void CommandControlStubDefault::getListSystemProperties(am_SystemProperty_L& listSystemProperties, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::getTimingInformation(const std::shared_ptr<CommonAPI::ClientId> clientId, am_mainConnectionID_t mainConnectionID, am_timeSync_t& delay, am_Error_e& error) {
+ // Call old style methods in default
+ getTimingInformation(mainConnectionID, delay, error);
+}
+void CommandControlStubDefault::getTimingInformation(am_mainConnectionID_t mainConnectionID, am_timeSync_t& delay, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+void CommandControlStubDefault::getListMainSinkNotificationConfigurations(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ // Call old style methods in default
+ getListMainSinkNotificationConfigurations(sinkID, listMainNotificationConfigurations, error);
+}
+void CommandControlStubDefault::getListMainSinkNotificationConfigurations(am_sinkID_t sinkID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+void CommandControlStubDefault::getListMainSourceNotificationConfigurations(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ // Call old style methods in default
+ getListMainSourceNotificationConfigurations(sourceID, listMainNotificationConfigurations, error);
+}
+void CommandControlStubDefault::getListMainSourceNotificationConfigurations(am_sourceID_t sourceID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::setMainSinkNotificationConfiguration(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error) {
+ // Call old style methods in default
+ setMainSinkNotificationConfiguration(sinkID, mainNotificationConfiguration, error);
+}
+void CommandControlStubDefault::setMainSinkNotificationConfiguration(am_sinkID_t sinkID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error) {
+ // No operation in default
+}
+
+/**
+ * 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
+ */
+void CommandControlStubDefault::setMainSourceNotificationConfiguration(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error) {
+ // Call old style methods in default
+ setMainSourceNotificationConfiguration(sourceID, mainNotificationConfiguration, error);
+}
+void CommandControlStubDefault::setMainSourceNotificationConfiguration(am_sourceID_t sourceID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error) {
+ // No operation in default
+}
+
+
+/**
+ * Callback that is called when the number of connections change
+ */
+void CommandControlStubDefault::fireNewMainConnectionEvent(const am_MainConnectionType_s& mainConnection) {
+ stubAdapter_->fireNewMainConnectionEvent(mainConnection);
+}
+/**
+ * Callback that is called when the number of connections change
+ */
+void CommandControlStubDefault::fireRemovedMainConnectionEvent(const am_mainConnectionID_t& mainConnection) {
+ stubAdapter_->fireRemovedMainConnectionEvent(mainConnection);
+}
+/**
+ * Callback that is called when the number of sinks change
+ */
+void CommandControlStubDefault::fireNewSinkEvent(const am_SinkType_s& sink) {
+ stubAdapter_->fireNewSinkEvent(sink);
+}
+/**
+ * Callback that is called when the number of sinks change
+ */
+void CommandControlStubDefault::fireRemovedSinkEvent(const am_sinkID_t& sinkID) {
+ stubAdapter_->fireRemovedSinkEvent(sinkID);
+}
+/**
+ * Callback that is called when the number of sources change
+ */
+void CommandControlStubDefault::fireNewSourceEvent(const am_SourceType_s& source) {
+ stubAdapter_->fireNewSourceEvent(source);
+}
+/**
+ * Callback that is called when the number of sources change
+ */
+void CommandControlStubDefault::fireRemovedSourceEvent(const am_sourceID_t& source) {
+ stubAdapter_->fireRemovedSourceEvent(source);
+}
+/**
+ * this callback is fired if the number of sink classes changed
+ */
+void CommandControlStubDefault::fireNumberOfSinkClassesChangedEvent() {
+ stubAdapter_->fireNumberOfSinkClassesChangedEvent();
+}
+/**
+ * this callback is fired if the number of source classes changed
+ */
+void CommandControlStubDefault::fireNumberOfSourceClassesChangedEvent() {
+ stubAdapter_->fireNumberOfSourceClassesChangedEvent();
+}
+/**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+void CommandControlStubDefault::fireMainConnectionStateChangedEvent(const am_mainConnectionID_t& connectionID, const am_ConnectionState_e& connectionState) {
+ stubAdapter_->fireMainConnectionStateChangedEvent(connectionID, connectionState);
+}
+/**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+void CommandControlStubDefault::fireMainSinkSoundPropertyChangedEvent(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty) {
+ stubAdapter_->fireMainSinkSoundPropertyChangedEvent(sinkID, soundProperty);
+}
+/**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+void CommandControlStubDefault::fireMainSourceSoundPropertyChangedEvent(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty) {
+ stubAdapter_->fireMainSourceSoundPropertyChangedEvent(sourceID, soundProperty);
+}
+/**
+ * this callback is called when the availability of a sink has changed
+ */
+void CommandControlStubDefault::fireSinkAvailabilityChangedEvent(const am_sinkID_t& sinkID, const am_Availability_s& availability) {
+ stubAdapter_->fireSinkAvailabilityChangedEvent(sinkID, availability);
+}
+/**
+ * this callback is called when the availability of source has changed.
+ */
+void CommandControlStubDefault::fireSourceAvailabilityChangedEvent(const am_sourceID_t& sourceID, const am_Availability_s& availability) {
+ stubAdapter_->fireSourceAvailabilityChangedEvent(sourceID, availability);
+}
+/**
+ * this callback indicates a volume change on the indicated sink
+ */
+void CommandControlStubDefault::fireVolumeChangedEvent(const am_sinkID_t& sinkID, const am_mainVolume_t& volume) {
+ stubAdapter_->fireVolumeChangedEvent(sinkID, volume);
+}
+/**
+ * this callback indicates a mute state change on a sink.
+ */
+void CommandControlStubDefault::fireSinkMuteStateChangedEvent(const am_sinkID_t& sinkID, const am_MuteState_e& muteState) {
+ stubAdapter_->fireSinkMuteStateChangedEvent(sinkID, muteState);
+}
+/**
+ * is fired if a systemProperty changed
+ */
+void CommandControlStubDefault::fireSystemPropertyChangedEvent(const am_SystemProperty_s& systemProperty) {
+ stubAdapter_->fireSystemPropertyChangedEvent(systemProperty);
+}
+/**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+void CommandControlStubDefault::fireTimingInformationChangedEvent(const am_mainConnectionID_t& mainConnectionID, const am_timeSync_t& time) {
+ stubAdapter_->fireTimingInformationChangedEvent(mainConnectionID, time);
+}
+/**
+ * This callback is called when a sink is updated.
+ */
+void CommandControlStubDefault::fireSinkUpdatedEvent(const am_sinkID_t& sinkID, const am_sinkClass_t& sinkClassID, const am_MainSoundProperty_L& listMainSoundProperties) {
+ stubAdapter_->fireSinkUpdatedEvent(sinkID, sinkClassID, listMainSoundProperties);
+}
+/**
+ * This callback is called when a source is updated.
+ */
+void CommandControlStubDefault::fireSourceUpdatedEvent(const am_sourceID_t& sourceID, const am_sourceClass_t& sourceClassID, const am_MainSoundProperty_L& listMainSoundProperties) {
+ stubAdapter_->fireSourceUpdatedEvent(sourceID, sourceClassID, listMainSoundProperties);
+}
+/**
+ * This callback is called when a notificated value of a sink changes.
+ */
+void CommandControlStubDefault::fireSinkNotificationEvent(const am_sinkID_t& sinkID, const am_NotificationPayload_s& notification) {
+ stubAdapter_->fireSinkNotificationEvent(sinkID, notification);
+}
+/**
+ * This callback is called when a notifcated value of a source changes.
+ */
+void CommandControlStubDefault::fireSourceNotificationEvent(const am_sourceID_t& sourceID, const am_NotificationPayload_s& notification) {
+ stubAdapter_->fireSourceNotificationEvent(sourceID, notification);
+}
+/**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+void CommandControlStubDefault::fireMainSinkNotificationConfigurationChangedEvent(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration) {
+ stubAdapter_->fireMainSinkNotificationConfigurationChangedEvent(sinkID, mainNotificationConfiguration);
+}
+/**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+void CommandControlStubDefault::fireMainSourceNotificationConfigurationChangedEvent(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration) {
+ stubAdapter_->fireMainSourceNotificationConfigurationChangedEvent(sourceID, mainNotificationConfiguration);
+}
+
+
+CommandControlStubDefault::RemoteEventHandler::RemoteEventHandler(CommandControlStubDefault* defaultStub):
+ defaultStub_(defaultStub) {
+}
+
+} // namespace am
+} // namespace genivi
+} // namespace org
diff --git a/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.h b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.h
new file mode 100644
index 0000000..a6d46f8
--- /dev/null
+++ b/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.h
@@ -0,0 +1,336 @@
+/*
+* 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_STUB_DEFAULT_H_
+#define ORG_GENIVI_AM_Command_Control_STUB_DEFAULT_H_
+
+
+#include <org/genivi/am/CommandControlStub.h>
+#include <sstream>
+
+namespace org {
+namespace genivi {
+namespace am {
+
+/**
+ * Provides a default implementation for CommandControlStubRemoteEvent and
+ * CommandControlStub. Method callbacks have an empty implementation,
+ * remote set calls on attributes will always change the value of the attribute
+ * to the one received.
+ *
+ * Override this stub if you only want to provide a subset of the functionality
+ * that would be defined for this service, and/or if you do not need any non-default
+ * behaviour.
+ */
+class CommandControlStubDefault : public virtual CommandControlStub {
+public:
+ CommandControlStubDefault();
+
+ CommandControlStubRemoteEvent* initStubAdapter(const std::shared_ptr<CommandControlStubAdapter>& stubAdapter);
+
+ const CommonAPI::Version& getInterfaceVersion(std::shared_ptr<CommonAPI::ClientId> clientId);
+
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_sinkID_t sinkID, am_mainConnectionID_t& mainConnectionID, am_Error_e& error);
+ virtual void connect(am_sourceID_t sourceID, am_sinkID_t sinkID, am_mainConnectionID_t& mainConnectionID, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_mainConnectionID_t mainConnectionID, am_Error_e& error);
+ virtual void disconnect(am_mainConnectionID_t mainConnectionID, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_mainVolume_t volume, am_Error_e& error);
+ virtual void setVolume(am_sinkID_t sinkID, am_mainVolume_t volume, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, int16_t volStep, am_Error_e& error);
+ virtual void volumeStep(am_sinkID_t sinkID, int16_t volStep, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MuteState_e muteState, am_Error_e& error);
+ virtual void setSinkMuteState(am_sinkID_t sinkID, am_MuteState_e muteState, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MainSoundProperty_s soundProperty, am_Error_e& error);
+ virtual void setMainSinkSoundProperty(am_sinkID_t sinkID, am_MainSoundProperty_s soundProperty, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_MainSoundProperty_s soundProperty, am_Error_e& error);
+ virtual void setMainSourceSoundProperty(am_sourceID_t sourceID, am_MainSoundProperty_s soundProperty, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_SystemProperty_s property, am_Error_e& error);
+ virtual void setSystemProperty(am_SystemProperty_s property, am_Error_e& error);
+
+ /**
+ * returns the actual list of MainConnections
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ virtual void getListMainConnections(const std::shared_ptr<CommonAPI::ClientId> clientId, am_MainConnection_L& listConnections, am_Error_e& error);
+ virtual void getListMainConnections(am_MainConnection_L& listConnections, am_Error_e& error);
+
+ /**
+ * returns the actual list of Sinks
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ virtual void getListMainSinks(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SinkType_L& listMainSinks, am_Error_e& error);
+ virtual void getListMainSinks(am_SinkType_L& listMainSinks, am_Error_e& error);
+
+ /**
+ * returns the actual list of Sources
+ (at)return E_OK on success, E_DATABASE_ERROR
+ * on error
+ */
+ virtual void getListMainSources(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SourceType_L& listMainSources, am_Error_e& error);
+ virtual void getListMainSources(am_SourceType_L& listMainSources, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error);
+ virtual void getListMainSinkSoundProperties(am_sinkID_t sinkID, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error);
+ virtual void getListMainSourceSoundProperties(am_sourceID_t sourceID, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error);
+
+ /**
+ * 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(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SourceClass_L& listSourceClasses, am_Error_e& error);
+ virtual void getListSourceClasses(am_SourceClass_L& listSourceClasses, am_Error_e& error);
+
+ /**
+ * 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(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SinkClass_L& listSinkClasses, am_Error_e& error);
+ virtual void getListSinkClasses(am_SinkClass_L& listSinkClasses, am_Error_e& error);
+
+ /**
+ * Retrieves a complete list of all systemProperties.
+ (at)return E_OK on success,
+ * E_DATABASE_ERROR on error
+ */
+ virtual void getListSystemProperties(const std::shared_ptr<CommonAPI::ClientId> clientId, am_SystemProperty_L& listSystemProperties, am_Error_e& error);
+ virtual void getListSystemProperties(am_SystemProperty_L& listSystemProperties, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_mainConnectionID_t mainConnectionID, am_timeSync_t& delay, am_Error_e& error);
+ virtual void getTimingInformation(am_mainConnectionID_t mainConnectionID, am_timeSync_t& delay, am_Error_e& error);
+
+ /**
+ * Retrieves the list of MainNotifications for a sink. Does not return the
+ * possible ones.
+ */
+ virtual void getListMainSinkNotificationConfigurations(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);
+ virtual void getListMainSinkNotificationConfigurations(am_sinkID_t sinkID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);
+
+ /**
+ * Retrieves the list of MainNotifications for a source. Does not return the
+ * possible ones.
+ */
+ virtual void getListMainSourceNotificationConfigurations(const std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);
+ virtual void getListMainSourceNotificationConfigurations(am_sourceID_t sourceID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sinkID_t sinkID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error);
+ virtual void setMainSinkNotificationConfiguration(am_sinkID_t sinkID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error);
+
+ /**
+ * 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 std::shared_ptr<CommonAPI::ClientId> clientId, am_sourceID_t sourceID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error);
+ virtual void setMainSourceNotificationConfiguration(am_sourceID_t sourceID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error);
+
+
+ /**
+ * Callback that is called when the number of connections change
+ */
+ virtual void fireNewMainConnectionEvent(const am_MainConnectionType_s& mainConnection);
+ /**
+ * Callback that is called when the number of connections change
+ */
+ virtual void fireRemovedMainConnectionEvent(const am_mainConnectionID_t& mainConnection);
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ virtual void fireNewSinkEvent(const am_SinkType_s& sink);
+ /**
+ * Callback that is called when the number of sinks change
+ */
+ virtual void fireRemovedSinkEvent(const am_sinkID_t& sinkID);
+ /**
+ * Callback that is called when the number of sources change
+ */
+ virtual void fireNewSourceEvent(const am_SourceType_s& source);
+ /**
+ * Callback that is called when the number of sources change
+ */
+ virtual void fireRemovedSourceEvent(const am_sourceID_t& source);
+ /**
+ * this callback is fired if the number of sink classes changed
+ */
+ virtual void fireNumberOfSinkClassesChangedEvent();
+ /**
+ * this callback is fired if the number of source classes changed
+ */
+ virtual void fireNumberOfSourceClassesChangedEvent();
+ /**
+ * This callback is called when the ConnectionState of a connection changed.
+ */
+ virtual void fireMainConnectionStateChangedEvent(const am_mainConnectionID_t& connectionID, const am_ConnectionState_e& connectionState);
+ /**
+ * this callback indicates that a sinkSoundProperty has changed.
+ */
+ virtual void fireMainSinkSoundPropertyChangedEvent(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty);
+ /**
+ * this callback indicates that a sourceSoundProperty has changed.
+ */
+ virtual void fireMainSourceSoundPropertyChangedEvent(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty);
+ /**
+ * this callback is called when the availability of a sink has changed
+ */
+ virtual void fireSinkAvailabilityChangedEvent(const am_sinkID_t& sinkID, const am_Availability_s& availability);
+ /**
+ * this callback is called when the availability of source has changed.
+ */
+ virtual void fireSourceAvailabilityChangedEvent(const am_sourceID_t& sourceID, const am_Availability_s& availability);
+ /**
+ * this callback indicates a volume change on the indicated sink
+ */
+ virtual void fireVolumeChangedEvent(const am_sinkID_t& sinkID, const am_mainVolume_t& volume);
+ /**
+ * this callback indicates a mute state change on a sink.
+ */
+ virtual void fireSinkMuteStateChangedEvent(const am_sinkID_t& sinkID, const am_MuteState_e& muteState);
+ /**
+ * is fired if a systemProperty changed
+ */
+ virtual void fireSystemPropertyChangedEvent(const am_SystemProperty_s& systemProperty);
+ /**
+ * This callback is fired if the timinginformation for a mainConnectionID changed
+ */
+ virtual void fireTimingInformationChangedEvent(const am_mainConnectionID_t& mainConnectionID, const am_timeSync_t& time);
+ /**
+ * This callback is called when a sink is updated.
+ */
+ virtual void fireSinkUpdatedEvent(const am_sinkID_t& sinkID, const am_sinkClass_t& sinkClassID, const am_MainSoundProperty_L& listMainSoundProperties);
+ /**
+ * This callback is called when a source is updated.
+ */
+ virtual void fireSourceUpdatedEvent(const am_sourceID_t& sourceID, const am_sourceClass_t& sourceClassID, const am_MainSoundProperty_L& listMainSoundProperties);
+ /**
+ * This callback is called when a notificated value of a sink changes.
+ */
+ virtual void fireSinkNotificationEvent(const am_sinkID_t& sinkID, const am_NotificationPayload_s& notification);
+ /**
+ * This callback is called when a notifcated value of a source changes.
+ */
+ virtual void fireSourceNotificationEvent(const am_sourceID_t& sourceID, const am_NotificationPayload_s& notification);
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ virtual void fireMainSinkNotificationConfigurationChangedEvent(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration);
+ /**
+ * This callback is triggered when a mainNotificationConfiguration is changed.
+ */
+ virtual void fireMainSourceNotificationConfigurationChangedEvent(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration);
+
+
+protected:
+ class RemoteEventHandler: public virtual CommandControlStubRemoteEvent {
+ public:
+ RemoteEventHandler(CommandControlStubDefault* defaultStub);
+
+
+ private:
+ CommandControlStubDefault* defaultStub_;
+ };
+private:
+ CommandControlStubDefault::RemoteEventHandler remoteEventHandler_;
+
+
+ CommonAPI::Version interfaceVersion_;
+};
+
+} // namespace am
+} // namespace genivi
+} // namespace org
+
+#endif // ORG_GENIVI_AM_Command_Control_STUB_DEFAULT_H_