+ function Is_Signal
+ (Msg : Message_Type;
+ Iface : String;
+ Signal_Name : String)
+ return Boolean
+ is
+ use type C.unsigned;
+
+ C_Iface : C.Strings.chars_ptr := C.Strings.New_String
+ (Str => Iface);
+ C_Signal : C.Strings.chars_ptr := C.Strings.New_String
+ (Str => Signal_Name);
+ Res : C.unsigned;
+ begin
+ Res := dbus_message_is_signal
+ (message => Msg.Thin_Msg,
+ iface => C_Iface,
+ signal_name => C_Signal);
+ C.Strings.Free (Item => C_Iface);
+ C.Strings.Free (Item => C_Signal);
+ return Res = 1;
+ end Is_Signal;
+
+ -------------------------------------------------------------------------
+