diff options
author | Michael Schuldt <michael.schuldt@bmw-carit.de> | 2011-09-08 12:48:18 +0200 |
---|---|---|
committer | Michael Schuldt <michael.schuldt@bmw-carit.de> | 2011-09-08 13:11:37 +0200 |
commit | 91bc3465d9409756718b10f7be8087acd890241f (patch) | |
tree | ca7a5802eaaf8c427827fd84dd355c35cdfb1d39 /LayerManagerPlugins | |
parent | ebf475d3744a81ae9d333818fdafc98e57f0acc8 (diff) | |
download | layer_management-91bc3465d9409756718b10f7be8087acd890241f.tar.gz |
Introducing Timeout Parameter for process function
The process should not block the call. It should be possible
to define a timeout in miliseconds.
Diffstat (limited to 'LayerManagerPlugins')
-rw-r--r-- | LayerManagerPlugins/Communicators/DBUSCommunicator/include/DBUSCommunicator.h | 2 | ||||
-rw-r--r-- | LayerManagerPlugins/Communicators/DBUSCommunicator/src/DBUSCommunicator.cpp | 8 |
2 files changed, 7 insertions, 3 deletions
diff --git a/LayerManagerPlugins/Communicators/DBUSCommunicator/include/DBUSCommunicator.h b/LayerManagerPlugins/Communicators/DBUSCommunicator/include/DBUSCommunicator.h index ce070e6..3a1f59d 100644 --- a/LayerManagerPlugins/Communicators/DBUSCommunicator/include/DBUSCommunicator.h +++ b/LayerManagerPlugins/Communicators/DBUSCommunicator/include/DBUSCommunicator.h @@ -64,7 +64,7 @@ public: DBUSCommunicator(ICommandExecutor* executor); virtual bool start(); virtual void stop(); - virtual void process(); + virtual void process(int timeout_ms); virtual void setdebug(bool onoff); void Debug(DBusConnection* conn, DBusMessage* msg); diff --git a/LayerManagerPlugins/Communicators/DBUSCommunicator/src/DBUSCommunicator.cpp b/LayerManagerPlugins/Communicators/DBUSCommunicator/src/DBUSCommunicator.cpp index 564c554..348c9d8 100644 --- a/LayerManagerPlugins/Communicators/DBUSCommunicator/src/DBUSCommunicator.cpp +++ b/LayerManagerPlugins/Communicators/DBUSCommunicator/src/DBUSCommunicator.cpp @@ -241,9 +241,9 @@ void DBUSCommunicator::ScreenShot(DBusConnection* conn, DBusMessage* msg) g_pDbusMessage->ReplyError(msg, DBUS_ERROR_INVALID_ARGS, ID_UNKNOWN); } } -void DBUSCommunicator::process() +void DBUSCommunicator::process(int timeout_ms) { - dbus_connection_read_write_dispatch (g_pDbusMessage->getConnection(), -1); + dbus_connection_read_write_dispatch (g_pDbusMessage->getConnection(), timeout_ms); } void DBUSCommunicator::ScreenShotOfLayer(DBusConnection* conn, DBusMessage* msg) { @@ -405,6 +405,10 @@ DBusHandlerResult DBUSCommunicator::processMessageFunc(DBusConnection* conn,DBus void DBUSCommunicator::unregisterMessageFunc(DBusConnection* conn, void *user_data) { + DBusConnection* connection = NULL; + DBUSCommunicator* cominstance = NULL; + connection = conn; + cominstance = (DBUSCommunicator*)user_data; } void DBUSCommunicator::ListLayersOfLayergroup(DBusConnection* conn, DBusMessage* msg) |