D-Bus  1.6.8
dbus-message.h
1 /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
2 /* dbus-message.h DBusMessage object
3  *
4  * Copyright (C) 2002, 2003, 2005 Red Hat Inc.
5  *
6  * Licensed under the Academic Free License version 2.1
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21  *
22  */
23 #if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION)
24 #error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents."
25 #endif
26 
27 #ifndef DBUS_MESSAGE_H
28 #define DBUS_MESSAGE_H
29 
30 #include <dbus/dbus-macros.h>
31 #include <dbus/dbus-types.h>
32 #include <dbus/dbus-arch-deps.h>
33 #include <dbus/dbus-memory.h>
34 #include <dbus/dbus-errors.h>
35 #include <stdarg.h>
36 
38 
44 typedef struct DBusMessage DBusMessage;
47 
52 {
53  void *dummy1;
54  void *dummy2;
56  int dummy4;
57  int dummy5;
58  int dummy6;
59  int dummy7;
60  int dummy8;
61  int dummy9;
62  int dummy10;
63  int dummy11;
64  int pad1;
65  int pad2;
66  void *pad3;
67 };
68 
69 DBUS_EXPORT
70 DBusMessage* dbus_message_new (int message_type);
71 DBUS_EXPORT
72 DBusMessage* dbus_message_new_method_call (const char *bus_name,
73  const char *path,
74  const char *interface,
75  const char *method);
76 DBUS_EXPORT
78 DBUS_EXPORT
79 DBusMessage* dbus_message_new_signal (const char *path,
80  const char *interface,
81  const char *name);
82 DBUS_EXPORT
84  const char *error_name,
85  const char *error_message);
86 DBUS_EXPORT
88  const char *error_name,
89  const char *error_format,
90  ...);
91 
92 DBUS_EXPORT
93 DBusMessage* dbus_message_copy (const DBusMessage *message);
94 
95 DBUS_EXPORT
97 DBUS_EXPORT
98 void dbus_message_unref (DBusMessage *message);
99 DBUS_EXPORT
100 int dbus_message_get_type (DBusMessage *message);
101 DBUS_EXPORT
103  const char *object_path);
104 DBUS_EXPORT
105 const char* dbus_message_get_path (DBusMessage *message);
106 DBUS_EXPORT
108  const char *object_path);
109 DBUS_EXPORT
111  const char *interface);
112 DBUS_EXPORT
113 const char* dbus_message_get_interface (DBusMessage *message);
114 DBUS_EXPORT
116  const char *interface);
117 DBUS_EXPORT
119  const char *member);
120 DBUS_EXPORT
121 const char* dbus_message_get_member (DBusMessage *message);
122 DBUS_EXPORT
124  const char *member);
125 DBUS_EXPORT
127  const char *name);
128 DBUS_EXPORT
129 const char* dbus_message_get_error_name (DBusMessage *message);
130 DBUS_EXPORT
132  const char *destination);
133 DBUS_EXPORT
134 const char* dbus_message_get_destination (DBusMessage *message);
135 DBUS_EXPORT
137  const char *sender);
138 DBUS_EXPORT
139 const char* dbus_message_get_sender (DBusMessage *message);
140 DBUS_EXPORT
141 const char* dbus_message_get_signature (DBusMessage *message);
142 DBUS_EXPORT
144  dbus_bool_t no_reply);
145 DBUS_EXPORT
147 DBUS_EXPORT
149  const char *interface,
150  const char *method);
151 DBUS_EXPORT
153  const char *interface,
154  const char *signal_name);
155 DBUS_EXPORT
157  const char *error_name);
158 DBUS_EXPORT
160  const char *bus_name);
161 DBUS_EXPORT
163  const char *unique_bus_name);
164 DBUS_EXPORT
166  const char *signature);
167 DBUS_EXPORT
169 DBUS_EXPORT
170 void dbus_message_set_serial (DBusMessage *message,
171  dbus_uint32_t serial);
172 DBUS_EXPORT
174  dbus_uint32_t reply_serial);
175 DBUS_EXPORT
177 
178 DBUS_EXPORT
180  dbus_bool_t auto_start);
181 DBUS_EXPORT
183 
184 DBUS_EXPORT
186  char ***path);
187 
188 DBUS_EXPORT
190  int first_arg_type,
191  ...);
192 DBUS_EXPORT
194  int first_arg_type,
195  va_list var_args);
196 DBUS_EXPORT
198  DBusError *error,
199  int first_arg_type,
200  ...);
201 DBUS_EXPORT
203  DBusError *error,
204  int first_arg_type,
205  va_list var_args);
206 
207 DBUS_EXPORT
209 
210 DBUS_EXPORT
212  DBusMessageIter *iter);
213 DBUS_EXPORT
215 DBUS_EXPORT
217 DBUS_EXPORT
219 DBUS_EXPORT
221 DBUS_EXPORT
223 DBUS_EXPORT
225  DBusMessageIter *sub);
226 DBUS_EXPORT
228  void *value);
229 #ifndef DBUS_DISABLE_DEPRECATED
230 /* This function returns the wire protocol size of the array in bytes,
231  * you do not want to know that probably
232  */
233 DBUS_EXPORT
235 #endif
236 DBUS_EXPORT
238  void *value,
239  int *n_elements);
240 
241 
242 DBUS_EXPORT
244  DBusMessageIter *iter);
245 DBUS_EXPORT
247  int type,
248  const void *value);
249 DBUS_EXPORT
251  int element_type,
252  const void *value,
253  int n_elements);
254 DBUS_EXPORT
256  int type,
257  const char *contained_signature,
258  DBusMessageIter *sub);
259 DBUS_EXPORT
261  DBusMessageIter *sub);
262 DBUS_EXPORT
264  DBusMessageIter *sub);
265 
266 DBUS_EXPORT
267 void dbus_message_lock (DBusMessage *message);
268 
269 DBUS_EXPORT
271  DBusMessage *message);
272 
273 
274 DBUS_EXPORT
276 DBUS_EXPORT
278 DBUS_EXPORT
280  dbus_int32_t slot,
281  void *data,
282  DBusFreeFunction free_data_func);
283 DBUS_EXPORT
284 void* dbus_message_get_data (DBusMessage *message,
285  dbus_int32_t slot);
286 
287 DBUS_EXPORT
288 int dbus_message_type_from_string (const char *type_str);
289 DBUS_EXPORT
290 const char* dbus_message_type_to_string (int type);
291 
292 DBUS_EXPORT
294  char **marshalled_data_p,
295  int *len_p);
296 DBUS_EXPORT
297 DBusMessage* dbus_message_demarshal (const char *str,
298  int len,
299  DBusError *error);
300 
301 DBUS_EXPORT
302 int dbus_message_demarshal_bytes_needed (const char *str,
303  int len);
304 
308 
309 #endif /* DBUS_MESSAGE_H */