with Interfaces.C; use Interfaces.C;
with System;
with dbus_arch_deps_h;
with Interfaces.C.Strings;
with dbus_types_h;
with stdarg_h;
limited with dbus_errors_h;

package dbus_message_h is

   --  skipped empty struct DBusMessage

   type DBusMessageIter is record
      dummy1 : System.Address;  -- ../dbus/dbus-message.h:53:9
      dummy2 : System.Address;  -- ../dbus/dbus-message.h:54:9
      dummy3 : aliased dbus_arch_deps_h.dbus_uint32_t;  -- ../dbus/dbus-message.h:55:17
      dummy4 : aliased int;  -- ../dbus/dbus-message.h:56:7
      dummy5 : aliased int;  -- ../dbus/dbus-message.h:57:7
      dummy6 : aliased int;  -- ../dbus/dbus-message.h:58:7
      dummy7 : aliased int;  -- ../dbus/dbus-message.h:59:7
      dummy8 : aliased int;  -- ../dbus/dbus-message.h:60:7
      dummy9 : aliased int;  -- ../dbus/dbus-message.h:61:7
      dummy10 : aliased int;  -- ../dbus/dbus-message.h:62:7
      dummy11 : aliased int;  -- ../dbus/dbus-message.h:63:7
      pad1 : aliased int;  -- ../dbus/dbus-message.h:64:7
      pad2 : aliased int;  -- ../dbus/dbus-message.h:65:7
      pad3 : System.Address;  -- ../dbus/dbus-message.h:66:9
   end record;
   pragma Convention (C_Pass_By_Copy, DBusMessageIter);  -- ../dbus/dbus-message.h:46:16

   function dbus_message_new (arg1 : int) return System.Address;  -- ../dbus/dbus-message.h:69:14
   pragma Import (C, dbus_message_new, "dbus_message_new");

   function dbus_message_new_method_call
     (arg1 : Interfaces.C.Strings.chars_ptr;
      arg2 : Interfaces.C.Strings.chars_ptr;
      arg3 : Interfaces.C.Strings.chars_ptr;
      arg4 : Interfaces.C.Strings.chars_ptr) return System.Address;  -- ../dbus/dbus-message.h:70:14
   pragma Import (C, dbus_message_new_method_call, "dbus_message_new_method_call");

   function dbus_message_new_method_return (arg1 : System.Address) return System.Address;  -- ../dbus/dbus-message.h:74:14
   pragma Import (C, dbus_message_new_method_return, "dbus_message_new_method_return");

   function dbus_message_new_signal
     (arg1 : Interfaces.C.Strings.chars_ptr;
      arg2 : Interfaces.C.Strings.chars_ptr;
      arg3 : Interfaces.C.Strings.chars_ptr) return System.Address;  -- ../dbus/dbus-message.h:75:14
   pragma Import (C, dbus_message_new_signal, "dbus_message_new_signal");

   function dbus_message_new_error
     (arg1 : System.Address;
      arg2 : Interfaces.C.Strings.chars_ptr;
      arg3 : Interfaces.C.Strings.chars_ptr) return System.Address;  -- ../dbus/dbus-message.h:78:14
   pragma Import (C, dbus_message_new_error, "dbus_message_new_error");

   function dbus_message_new_error_printf
     (arg1 : System.Address;
      arg2 : Interfaces.C.Strings.chars_ptr;
      arg3 : Interfaces.C.Strings.chars_ptr  -- , ...
      ) return System.Address;  -- ../dbus/dbus-message.h:81:14
   pragma Import (C, dbus_message_new_error_printf, "dbus_message_new_error_printf");

   function dbus_message_copy (arg1 : System.Address) return System.Address;  -- ../dbus/dbus-message.h:86:14
   pragma Import (C, dbus_message_copy, "dbus_message_copy");

   function dbus_message_ref (arg1 : System.Address) return System.Address;  -- ../dbus/dbus-message.h:88:15
   pragma Import (C, dbus_message_ref, "dbus_message_ref");

   procedure dbus_message_unref (arg1 : System.Address);  -- ../dbus/dbus-message.h:89:15
   pragma Import (C, dbus_message_unref, "dbus_message_unref");

   function dbus_message_get_type (arg1 : System.Address) return int;  -- ../dbus/dbus-message.h:90:15
   pragma Import (C, dbus_message_get_type, "dbus_message_get_type");

   function dbus_message_set_path (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:91:15
   pragma Import (C, dbus_message_set_path, "dbus_message_set_path");

   function dbus_message_get_path (arg1 : System.Address) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:93:15
   pragma Import (C, dbus_message_get_path, "dbus_message_get_path");

   function dbus_message_has_path (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:94:15
   pragma Import (C, dbus_message_has_path, "dbus_message_has_path");

   function dbus_message_set_interface (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:96:15
   pragma Import (C, dbus_message_set_interface, "dbus_message_set_interface");

   function dbus_message_get_interface (arg1 : System.Address) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:98:15
   pragma Import (C, dbus_message_get_interface, "dbus_message_get_interface");

   function dbus_message_has_interface (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:99:15
   pragma Import (C, dbus_message_has_interface, "dbus_message_has_interface");

   function dbus_message_set_member (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:101:15
   pragma Import (C, dbus_message_set_member, "dbus_message_set_member");

   function dbus_message_get_member (arg1 : System.Address) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:103:15
   pragma Import (C, dbus_message_get_member, "dbus_message_get_member");

   function dbus_message_has_member (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:104:15
   pragma Import (C, dbus_message_has_member, "dbus_message_has_member");

   function dbus_message_set_error_name (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:106:15
   pragma Import (C, dbus_message_set_error_name, "dbus_message_set_error_name");

   function dbus_message_get_error_name (arg1 : System.Address) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:108:15
   pragma Import (C, dbus_message_get_error_name, "dbus_message_get_error_name");

   function dbus_message_set_destination (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:109:15
   pragma Import (C, dbus_message_set_destination, "dbus_message_set_destination");

   function dbus_message_get_destination (arg1 : System.Address) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:111:15
   pragma Import (C, dbus_message_get_destination, "dbus_message_get_destination");

   function dbus_message_set_sender (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:112:15
   pragma Import (C, dbus_message_set_sender, "dbus_message_set_sender");

   function dbus_message_get_sender (arg1 : System.Address) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:114:15
   pragma Import (C, dbus_message_get_sender, "dbus_message_get_sender");

   function dbus_message_get_signature (arg1 : System.Address) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:115:15
   pragma Import (C, dbus_message_get_signature, "dbus_message_get_signature");

   procedure dbus_message_set_no_reply (arg1 : System.Address; arg2 : dbus_types_h.dbus_bool_t);  -- ../dbus/dbus-message.h:116:15
   pragma Import (C, dbus_message_set_no_reply, "dbus_message_set_no_reply");

   function dbus_message_get_no_reply (arg1 : System.Address) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:118:15
   pragma Import (C, dbus_message_get_no_reply, "dbus_message_get_no_reply");

   function dbus_message_is_method_call
     (arg1 : System.Address;
      arg2 : Interfaces.C.Strings.chars_ptr;
      arg3 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:119:15
   pragma Import (C, dbus_message_is_method_call, "dbus_message_is_method_call");

   function dbus_message_is_signal
     (arg1 : System.Address;
      arg2 : Interfaces.C.Strings.chars_ptr;
      arg3 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:122:15
   pragma Import (C, dbus_message_is_signal, "dbus_message_is_signal");

   function dbus_message_is_error (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:125:15
   pragma Import (C, dbus_message_is_error, "dbus_message_is_error");

   function dbus_message_has_destination (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:127:15
   pragma Import (C, dbus_message_has_destination, "dbus_message_has_destination");

   function dbus_message_has_sender (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:129:15
   pragma Import (C, dbus_message_has_sender, "dbus_message_has_sender");

   function dbus_message_has_signature (arg1 : System.Address; arg2 : Interfaces.C.Strings.chars_ptr) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:131:15
   pragma Import (C, dbus_message_has_signature, "dbus_message_has_signature");

   function dbus_message_get_serial (arg1 : System.Address) return dbus_arch_deps_h.dbus_uint32_t;  -- ../dbus/dbus-message.h:133:15
   pragma Import (C, dbus_message_get_serial, "dbus_message_get_serial");

   procedure dbus_message_set_serial (arg1 : System.Address; arg2 : dbus_arch_deps_h.dbus_uint32_t);  -- ../dbus/dbus-message.h:134:15
   pragma Import (C, dbus_message_set_serial, "dbus_message_set_serial");

   function dbus_message_set_reply_serial (arg1 : System.Address; arg2 : dbus_arch_deps_h.dbus_uint32_t) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:136:15
   pragma Import (C, dbus_message_set_reply_serial, "dbus_message_set_reply_serial");

   function dbus_message_get_reply_serial (arg1 : System.Address) return dbus_arch_deps_h.dbus_uint32_t;  -- ../dbus/dbus-message.h:138:15
   pragma Import (C, dbus_message_get_reply_serial, "dbus_message_get_reply_serial");

   procedure dbus_message_set_auto_start (arg1 : System.Address; arg2 : dbus_types_h.dbus_bool_t);  -- ../dbus/dbus-message.h:140:15
   pragma Import (C, dbus_message_set_auto_start, "dbus_message_set_auto_start");

   function dbus_message_get_auto_start (arg1 : System.Address) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:142:15
   pragma Import (C, dbus_message_get_auto_start, "dbus_message_get_auto_start");

   function dbus_message_get_path_decomposed (arg1 : System.Address; arg2 : System.Address) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:144:15
   pragma Import (C, dbus_message_get_path_decomposed, "dbus_message_get_path_decomposed");

   function dbus_message_append_args (arg1 : System.Address; arg2 : int  -- , ...
      ) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:147:13
   pragma Import (C, dbus_message_append_args, "dbus_message_append_args");

   function dbus_message_append_args_valist
     (arg1 : System.Address;
      arg2 : int;
      arg3 : stdarg_h.va_list) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:150:13
   pragma Import (C, dbus_message_append_args_valist, "dbus_message_append_args_valist");

   function dbus_message_get_args
     (arg1 : System.Address;
      arg2 : access dbus_errors_h.DBusError;
      arg3 : int  -- , ...
      ) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:153:13
   pragma Import (C, dbus_message_get_args, "dbus_message_get_args");

   function dbus_message_get_args_valist
     (arg1 : System.Address;
      arg2 : access dbus_errors_h.DBusError;
      arg3 : int;
      arg4 : stdarg_h.va_list) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:157:13
   pragma Import (C, dbus_message_get_args_valist, "dbus_message_get_args_valist");

   function dbus_message_iter_init (arg1 : System.Address; arg2 : access DBusMessageIter) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:163:13
   pragma Import (C, dbus_message_iter_init, "dbus_message_iter_init");

   function dbus_message_iter_has_next (arg1 : access DBusMessageIter) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:165:13
   pragma Import (C, dbus_message_iter_has_next, "dbus_message_iter_has_next");

   function dbus_message_iter_next (arg1 : access DBusMessageIter) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:166:13
   pragma Import (C, dbus_message_iter_next, "dbus_message_iter_next");

   function dbus_message_iter_get_signature (arg1 : access DBusMessageIter) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:167:13
   pragma Import (C, dbus_message_iter_get_signature, "dbus_message_iter_get_signature");

   function dbus_message_iter_get_arg_type (arg1 : access DBusMessageIter) return int;  -- ../dbus/dbus-message.h:168:13
   pragma Import (C, dbus_message_iter_get_arg_type, "dbus_message_iter_get_arg_type");

   function dbus_message_iter_get_element_type (arg1 : access DBusMessageIter) return int;  -- ../dbus/dbus-message.h:169:13
   pragma Import (C, dbus_message_iter_get_element_type, "dbus_message_iter_get_element_type");

   procedure dbus_message_iter_recurse (arg1 : access DBusMessageIter; arg2 : access DBusMessageIter);  -- ../dbus/dbus-message.h:170:13
   pragma Import (C, dbus_message_iter_recurse, "dbus_message_iter_recurse");

   procedure dbus_message_iter_get_basic (arg1 : access DBusMessageIter; arg2 : System.Address);  -- ../dbus/dbus-message.h:172:13
   pragma Import (C, dbus_message_iter_get_basic, "dbus_message_iter_get_basic");

   function dbus_message_iter_get_array_len (arg1 : access DBusMessageIter) return int;  -- ../dbus/dbus-message.h:178:29
   pragma Import (C, dbus_message_iter_get_array_len, "dbus_message_iter_get_array_len");

   procedure dbus_message_iter_get_fixed_array
     (arg1 : access DBusMessageIter;
      arg2 : System.Address;
      arg3 : access int);  -- ../dbus/dbus-message.h:180:13
   pragma Import (C, dbus_message_iter_get_fixed_array, "dbus_message_iter_get_fixed_array");

   procedure dbus_message_iter_init_append (arg1 : System.Address; arg2 : access DBusMessageIter);  -- ../dbus/dbus-message.h:185:13
   pragma Import (C, dbus_message_iter_init_append, "dbus_message_iter_init_append");

   function dbus_message_iter_append_basic
     (arg1 : access DBusMessageIter;
      arg2 : int;
      arg3 : System.Address) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:187:13
   pragma Import (C, dbus_message_iter_append_basic, "dbus_message_iter_append_basic");

   function dbus_message_iter_append_fixed_array
     (arg1 : access DBusMessageIter;
      arg2 : int;
      arg3 : System.Address;
      arg4 : int) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:190:13
   pragma Import (C, dbus_message_iter_append_fixed_array, "dbus_message_iter_append_fixed_array");

   function dbus_message_iter_open_container
     (arg1 : access DBusMessageIter;
      arg2 : int;
      arg3 : Interfaces.C.Strings.chars_ptr;
      arg4 : access DBusMessageIter) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:194:13
   pragma Import (C, dbus_message_iter_open_container, "dbus_message_iter_open_container");

   function dbus_message_iter_close_container (arg1 : access DBusMessageIter; arg2 : access DBusMessageIter) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:198:13
   pragma Import (C, dbus_message_iter_close_container, "dbus_message_iter_close_container");

   procedure dbus_message_iter_abandon_container (arg1 : access DBusMessageIter; arg2 : access DBusMessageIter);  -- ../dbus/dbus-message.h:200:13
   pragma Import (C, dbus_message_iter_abandon_container, "dbus_message_iter_abandon_container");

   procedure dbus_message_lock (arg1 : System.Address);  -- ../dbus/dbus-message.h:203:6
   pragma Import (C, dbus_message_lock, "dbus_message_lock");

   function dbus_set_error_from_message (arg1 : access dbus_errors_h.DBusError; arg2 : System.Address) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:205:14
   pragma Import (C, dbus_set_error_from_message, "dbus_set_error_from_message");

   function dbus_message_allocate_data_slot (arg1 : access dbus_arch_deps_h.dbus_int32_t) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:209:13
   pragma Import (C, dbus_message_allocate_data_slot, "dbus_message_allocate_data_slot");

   procedure dbus_message_free_data_slot (arg1 : access dbus_arch_deps_h.dbus_int32_t);  -- ../dbus/dbus-message.h:210:13
   pragma Import (C, dbus_message_free_data_slot, "dbus_message_free_data_slot");

   function dbus_message_set_data
     (arg1 : System.Address;
      arg2 : dbus_arch_deps_h.dbus_int32_t;
      arg3 : System.Address;
      arg4 : access procedure (arg1 : System.Address)) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:211:13
   pragma Import (C, dbus_message_set_data, "dbus_message_set_data");

   function dbus_message_get_data (arg1 : System.Address; arg2 : dbus_arch_deps_h.dbus_int32_t) return System.Address;  -- ../dbus/dbus-message.h:215:13
   pragma Import (C, dbus_message_get_data, "dbus_message_get_data");

   function dbus_message_type_from_string (arg1 : Interfaces.C.Strings.chars_ptr) return int;  -- ../dbus/dbus-message.h:218:13
   pragma Import (C, dbus_message_type_from_string, "dbus_message_type_from_string");

   function dbus_message_type_to_string (arg1 : int) return Interfaces.C.Strings.chars_ptr;  -- ../dbus/dbus-message.h:219:13
   pragma Import (C, dbus_message_type_to_string, "dbus_message_type_to_string");

   function dbus_message_marshal
     (arg1 : System.Address;
      arg2 : System.Address;
      arg3 : access int) return dbus_types_h.dbus_bool_t;  -- ../dbus/dbus-message.h:221:14
   pragma Import (C, dbus_message_marshal, "dbus_message_marshal");

   function dbus_message_demarshal
     (arg1 : Interfaces.C.Strings.chars_ptr;
      arg2 : int;
      arg3 : access dbus_errors_h.DBusError) return System.Address;  -- ../dbus/dbus-message.h:224:14
   pragma Import (C, dbus_message_demarshal, "dbus_message_demarshal");

   function dbus_message_demarshal_bytes_needed (arg1 : Interfaces.C.Strings.chars_ptr; arg2 : int) return int;  -- ../dbus/dbus-message.h:228:14
   pragma Import (C, dbus_message_demarshal_bytes_needed, "dbus_message_demarshal_bytes_needed");

end dbus_message_h;
