williamr@2: /* -*- mode: C; c-file-style: "gnu" -*- */ williamr@2: /* dbus.h Convenience header including all other headers williamr@2: * williamr@2: * Copyright (C) 2002, 2003 Red Hat Inc. williamr@2: * williamr@2: * Licensed under the Academic Free License version 2.1 williamr@2: * williamr@2: * This program is free software; you can redistribute it and/or modify williamr@2: * it under the terms of the GNU General Public License as published by williamr@2: * the Free Software Foundation; either version 2 of the License, or williamr@2: * (at your option) any later version. williamr@2: * williamr@2: * This program is distributed in the hope that it will be useful, williamr@2: * but WITHOUT ANY WARRANTY; without even the implied warranty of williamr@2: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the williamr@2: * GNU General Public License for more details. williamr@2: * williamr@2: * You should have received a copy of the GNU General Public License williamr@2: * along with this program; if not, write to the Free Software williamr@2: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA williamr@2: * williamr@2: */ williamr@2: williamr@2: #ifndef DBUS_H williamr@2: #define DBUS_H williamr@2: williamr@2: #define DBUS_INSIDE_DBUS_H 1 williamr@2: williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: williamr@2: #undef DBUS_INSIDE_DBUS_H williamr@2: williamr@2: /** williamr@2: * @defgroup DBus D-Bus low-level public API williamr@2: * @brief The low-level public API of the D-Bus library williamr@2: * williamr@2: * libdbus provides a low-level C API intended primarily for use by williamr@2: * bindings to specific object systems and languages. D-Bus is most williamr@2: * convenient when used with the GLib bindings, Python bindings, Qt williamr@2: * bindings, Mono bindings, and so forth. This low-level API has a williamr@2: * lot of complexity useful only for bindings. williamr@2: * williamr@2: * @{ williamr@2: */ williamr@2: williamr@2: /** @} */ williamr@2: williamr@2: /** williamr@2: * @mainpage williamr@2: * williamr@2: * This manual documents the low-level D-Bus C API. If you use williamr@2: * this low-level API directly, you're signing up for some pain. williamr@2: * williamr@2: * Caveats aside, you might get started learning the low-level API by reading williamr@2: * about @ref DBusConnection and @ref DBusMessage. williamr@2: * williamr@2: * There are several other places to look for D-Bus information, such williamr@2: * as the tutorial and the specification; those can be found at the D-Bus williamr@2: * website. If you're interested in a sysadmin or package williamr@2: * maintainer's perspective on the dbus-daemon itself and its williamr@2: * configuration, be sure to check out the man pages as well. williamr@2: * williamr@2: * The low-level API documented in this manual deliberately lacks williamr@2: * most convenience functions - those are left up to higher-level libraries williamr@2: * based on frameworks such as GLib, Qt, Python, Mono, Java, williamr@2: * etc. These higher-level libraries (often called "D-Bus bindings") williamr@2: * have features such as object systems and main loops that allow a williamr@2: * much more convenient API. williamr@2: * williamr@2: * The low-level API also contains plenty of clutter to support williamr@2: * integration with arbitrary object systems, languages, main loops, williamr@2: * and so forth. These features add a lot of noise to the API that you williamr@2: * probably don't care about unless you're coding a binding. williamr@2: * williamr@2: * This manual also contains docs for @ref DBusInternals "D-Bus internals", williamr@2: * so you can use it to get oriented to the D-Bus source code if you're williamr@2: * interested in patching the code. You should also read the williamr@2: * file HACKING which comes with the source code if you plan to contribute to williamr@2: * D-Bus. williamr@2: * williamr@2: * As you read the code, you can identify internal D-Bus functions williamr@2: * because they start with an underscore ('_') character. Also, any williamr@2: * identifier or macro that lacks a DBus, dbus_, or DBUS_ namepace williamr@2: * prefix is internal, with a couple of exceptions such as #NULL, williamr@2: * #TRUE, and #FALSE. williamr@2: */ williamr@2: williamr@2: #endif /* DBUS_H */