summaryrefslogtreecommitdiff
path: root/include/command/IAmCommandSend.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/command/IAmCommandSend.h')
-rw-r--r--include/command/IAmCommandSend.h69
1 files changed, 44 insertions, 25 deletions
diff --git a/include/command/IAmCommandSend.h b/include/command/IAmCommandSend.h
index 93e195a..bf073f9 100644
--- a/include/command/IAmCommandSend.h
+++ b/include/command/IAmCommandSend.h
@@ -19,8 +19,8 @@
*
* THIS CODE HAS BEEN GENERATED BY ENTERPRISE ARCHITECT GENIVI MODEL. PLEASE CHANGE ONLY IN ENTERPRISE ARCHITECT AND GENERATE AGAIN
*/
-#if !defined(EA_7D83FF38_8EFF_42da_9D53_B196FE091604__INCLUDED_)
-#define EA_7D83FF38_8EFF_42da_9D53_B196FE091604__INCLUDED_
+#if !defined(EA_EA24D1A2_FDA1_4285_8606_7E77A080B4E9__INCLUDED_)
+#define EA_EA24D1A2_FDA1_4285_8606_7E77A080B4E9__INCLUDED_
#include <vector>
#include <string>
@@ -35,16 +35,25 @@ class IAmCommandReceive;
#define CommandSendVersion "1.0"
namespace am {
/**
- * This interface handles all communication from the AudioManagerDaemon towards the system. It is designed in such a way that only callbacks with no return types are implemented. So when the CommandInterfacePlugins are designed in such a way that they broadcast signals to any node who is interested in the particular information (like signals on Dbus for example), more information can be retrieved via the CommandReceiveInterface.
- * There are two rules that have to be kept in mind when implementing against this interface:\n
- * \warning
- * 1. CALLS TO THIS INTERFACE ARE NOT THREAD SAFE !!!! \n
- * 2. YOU MAY NOT THE CALLING INTERFACE DURING AN SYNCHRONOUS OR ASYNCHRONOUS CALL THAT EXPECTS A RETURN VALUE.\n
- * \details
- * Violation these rules may lead to unexpected behavior! Nevertheless you can implement thread safe by using the deferred-call pattern described on the wiki which also helps to implement calls that are forbidden.\n
+ * This interface handles all communication from the AudioManagerDaemon towards
+ * the system. It is designed in such a way that only callbacks with no return
+ * types are implemented. So when the CommandInterfacePlugins are designed in such
+ * a way that they broadcast signals to any node who is interested in the
+ * particular information (like signals on Dbus for example), more information can
+ * be retrieved via the CommandReceiveInterface.
+ * There are two rules that have to be kept in mind when implementing against this
+ * interface:\n
+ * \warning
+ * 1. CALLS TO THIS INTERFACE ARE NOT THREAD SAFE !!!! \n
+ * 2. YOU MAY NOT CALL THE CALLING INTERFACE DURING AN SYNCHRONOUS OR ASYNCHRONOUS
+ * CALL THAT EXPECTS A RETURN VALUE.\n
+ * \details
+ * Violation these rules may lead to unexpected behavior! Nevertheless you can
+ * implement thread safe by using the deferred-call pattern described on the wiki
+ * which also helps to implement calls that are forbidden.\n
* For more information, please check CAmSerializer
* @author Christian Mueller
- * @created 06-Mar-2012 8:01:07 PM
+ * @created 07-Mar-2012 6:06:17 PM
*/
class IAmCommandSend
{
@@ -59,23 +68,39 @@ namespace am {
}
/**
- * This command starts the interface, the plugin itself. This is not meant to start communication with the HMI itself. It is a good idea to implement here everything that sets up the basic communication like DbusCommunication etc...
- * Be aware of side effects with systemd and socketbased communication!
+ * returns the interface version as string.
+ *
+ * @param version
+ */
+ virtual void getInterfaceVersion(std::string& version) const =0;
+ /**
+ * This command starts the interface, the plugin itself. This is not meant to
+ * start communication with the HMI itself. It is a good idea to implement here
+ * everything that sets up the basic communication like DbusCommunication etc...
+ * Be aware of side effects with systemd and socketbased communication!
* @return E_OK on success, E_UNKNOWN on error
*
- * @param commandreceiveinterface pointer to the receive interface. Is used to call the audiomanagerdaemon
+ * @param commandreceiveinterface pointer to the receive interface. Is used to
+ * call the audiomanagerdaemon
*/
virtual am_Error_e startupInterface(IAmCommandReceive* commandreceiveinterface) =0;
/**
- * This function will indirectly be called by the Controller and is used to start the Communication. Before this command, all communication will be ignored by the AudioManager.
- * After the Plugin is ready, it will asynchronously answer with condfirmCommandReady, the handle that is handed over must be returned.
+ * This function will indirectly be called by the Controller and is used to start
+ * the Communication. Before this command, all communication will be ignored by
+ * the AudioManager.
+ * After the Plugin is ready, it will asynchronously answer with
+ * condfirmCommandReady, the handle that is handed over must be returned.
*
* @param handle the handle uniquely idenfies the request
*/
virtual void setCommandReady(const uint16_t handle) =0;
/**
- * This function will indirectly be called by the Controller and is used to stop the Communication. After this command, all communication will be ignored by the AudioManager. The plugin has to be prepared that either the power will be switched off or the Interface is started again with setCommandReady
- * After the Plugin is ready to rundown, it will asynchronously answer with condfirmCommandRundown, the handle that is handed over must be returned.
+ * This function will indirectly be called by the Controller and is used to stop
+ * the Communication. After this command, all communication will be ignored by the
+ * AudioManager. The plugin has to be prepared that either the power will be
+ * switched off or the Interface is started again with setCommandReady
+ * After the Plugin is ready to rundown, it will asynchronously answer with
+ * condfirmCommandRundown, the handle that is handed over must be returned.
*
* @param handle This handle uniquly idenfies the request
*/
@@ -85,7 +110,7 @@ namespace am {
*
* @param mainConnection
*/
- virtual void cbNewMainConnection(const am_MainConnectionType_s mainConnection) =0;
+ virtual void cbNewMainConnection(const am_MainConnectionType_s& mainConnection) =0;
/**
* Callback that is called when the number of connections change
*
@@ -186,13 +211,7 @@ namespace am {
* @param time
*/
virtual void cbTimingInformationChanged(const am_mainConnectionID_t mainConnectionID, const am_timeSync_t time) =0;
- /**
- * returns the interface version as string.
- *
- * @param version
- */
- virtual void getInterfaceVersion(std::string& version) const =0;
};
}
-#endif // !defined(EA_7D83FF38_8EFF_42da_9D53_B196FE091604__INCLUDED_)
+#endif // !defined(EA_EA24D1A2_FDA1_4285_8606_7E77A080B4E9__INCLUDED_)