diff options
| author | Patrick Williams <patrick@stwcx.xyz> | 2016-10-18 08:01:33 -0500 |
|---|---|---|
| committer | Patrick Williams <patrick@stwcx.xyz> | 2016-10-20 16:35:51 -0500 |
| commit | 20d8246a8dea38686668b918f68303cdd5dee63c (patch) | |
| tree | c582a5b0c4c74b7d8190044670948179d1f43cb6 | |
| parent | 9e3b51e34470c9d13649602e4a31bb61568f93ed (diff) | |
| download | sdbusplus-20d8246a8dea38686668b918f68303cdd5dee63c.tar.gz sdbusplus-20d8246a8dea38686668b918f68303cdd5dee63c.zip | |
message: add signal interfaces
Change-Id: Ida59e91564fbc452431ff54cfd7de59d7903e7b1
| -rw-r--r-- | sdbusplus/bus.hpp | 16 | ||||
| -rw-r--r-- | sdbusplus/message.hpp | 10 |
2 files changed, 26 insertions, 0 deletions
diff --git a/sdbusplus/bus.hpp b/sdbusplus/bus.hpp index fe68690..20e0836 100644 --- a/sdbusplus/bus.hpp +++ b/sdbusplus/bus.hpp @@ -118,6 +118,22 @@ struct bus return message::message(m); } + /** @brief Create a signal message. + * + * @param[in] objpath - The object's path for the signal. + * @param[in] interf - The object's interface for the signal. + * @param[in] member - The signal name. + * + * @return A newly constructed message. + */ + auto new_signal(const char* objpath, const char* interf, const char* member) + { + sd_bus_message* m = nullptr; + sd_bus_message_new_signal(_bus.get(), &m, objpath, interf, member); + + return message::message(m); + } + /** @brief Perform a message call. * * @param[in] m - The method_call message. diff --git a/sdbusplus/message.hpp b/sdbusplus/message.hpp index 327fb7e..74e0cdd 100644 --- a/sdbusplus/message.hpp +++ b/sdbusplus/message.hpp @@ -108,6 +108,16 @@ struct message return sd_bus_message_is_method_call(_msg.get(), interface, method); } + /** @brief Check if message is a signal for an interface/member. + * + * @param[in] interface - The interface to match. + * @param[in] member - The member to match. + */ + bool is_signal(const char* interface, const char* member) + { + return sd_bus_message_is_signal(_msg.get(), interface, member); + } + /** @brief Create a 'method_return' type message from an existing message. * * @return method-return message. |

