<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>connection.h Source File</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.2.15 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="pages.html">Related Pages</a> </center> <hr><h1>connection.h</h1><div class="fragment"><pre>00001 <font class="comment">/* -*- mode: C; c-file-style: "gnu" -*- */</font> 00002 <font class="comment">/* connection.h Client connections</font> 00003 <font class="comment"> *</font> 00004 <font class="comment"> * Copyright (C) 2003 Red Hat, Inc.</font> 00005 <font class="comment"> *</font> 00006 <font class="comment"> * Licensed under the Academic Free License version 1.2</font> 00007 <font class="comment"> * </font> 00008 <font class="comment"> * This program is free software; you can redistribute it and/or modify</font> 00009 <font class="comment"> * it under the terms of the GNU General Public License as published by</font> 00010 <font class="comment"> * the Free Software Foundation; either version 2 of the License, or</font> 00011 <font class="comment"> * (at your option) any later version.</font> 00012 <font class="comment"> *</font> 00013 <font class="comment"> * This program is distributed in the hope that it will be useful,</font> 00014 <font class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</font> 00015 <font class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</font> 00016 <font class="comment"> * GNU General Public License for more details.</font> 00017 <font class="comment"> * </font> 00018 <font class="comment"> * You should have received a copy of the GNU General Public License</font> 00019 <font class="comment"> * along with this program; if not, write to the Free Software</font> 00020 <font class="comment"> * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</font> 00021 <font class="comment"> *</font> 00022 <font class="comment"> */</font> 00023 00024 <font class="preprocessor">#ifndef BUS_CONNECTION_H</font> 00025 <font class="preprocessor"></font><font class="preprocessor">#define BUS_CONNECTION_H</font> 00026 <font class="preprocessor"></font> 00027 <font class="preprocessor">#include <dbus/dbus.h></font> 00028 <font class="preprocessor">#include <dbus/dbus-list.h></font> 00029 <font class="preprocessor">#include "bus.h"</font> 00030 00031 <font class="keyword">typedef</font> dbus_bool_t (* BusConnectionForeachFunction) (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00032 <font class="keywordtype">void</font> *data); 00033 00034 00035 BusConnections* bus_connections_new (BusContext *context); 00036 <font class="keywordtype">void</font> bus_connections_ref (BusConnections *connections); 00037 <font class="keywordtype">void</font> bus_connections_unref (BusConnections *connections); 00038 dbus_bool_t bus_connections_setup_connection (BusConnections *connections, 00039 <a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00040 <font class="keywordtype">void</font> bus_connections_foreach (BusConnections *connections, 00041 BusConnectionForeachFunction function, 00042 <font class="keywordtype">void</font> *data); 00043 <font class="keywordtype">void</font> bus_connections_foreach_active (BusConnections *connections, 00044 BusConnectionForeachFunction function, 00045 <font class="keywordtype">void</font> *data); 00046 BusContext* bus_connections_get_context (BusConnections *connections); 00047 <font class="keywordtype">void</font> bus_connections_increment_stamp (BusConnections *connections); 00048 BusContext* bus_connection_get_context (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00049 BusConnections* bus_connection_get_connections (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00050 BusRegistry* bus_connection_get_registry (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00051 BusActivation* bus_connection_get_activation (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00052 BusMatchmaker* bus_connection_get_matchmaker (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00053 dbus_bool_t bus_connections_check_limits (BusConnections *connections, 00054 <a class="code" href="structDBusConnection.html">DBusConnection</a> *requesting_completion, 00055 <a class="code" href="structDBusError.html">DBusError</a> *error); 00056 <font class="keywordtype">void</font> bus_connections_expire_incomplete (BusConnections *connections); 00057 00058 dbus_bool_t bus_connection_mark_stamp (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00059 00060 dbus_bool_t bus_connection_is_active (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00061 <font class="keyword">const</font> <font class="keywordtype">char</font> *bus_connection_get_name (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00062 00063 dbus_bool_t bus_connection_preallocate_oom_error (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00064 <font class="keywordtype">void</font> bus_connection_send_oom_error (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00065 <a class="code" href="structDBusMessage.html">DBusMessage</a> *in_reply_to); 00066 00067 <font class="comment">/* called by signals.c */</font> 00068 dbus_bool_t bus_connection_add_match_rule (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00069 BusMatchRule *rule); 00070 <font class="keywordtype">void</font> bus_connection_add_match_rule_link (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00071 <a class="code" href="structDBusList.html">DBusList</a> *link); 00072 <font class="keywordtype">void</font> bus_connection_remove_match_rule (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00073 BusMatchRule *rule); 00074 <font class="keywordtype">int</font> bus_connection_get_n_match_rules (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00075 00076 00077 <font class="comment">/* called by services.c */</font> 00078 dbus_bool_t bus_connection_add_owned_service (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00079 BusService *service); 00080 <font class="keywordtype">void</font> bus_connection_remove_owned_service (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00081 BusService *service); 00082 <font class="keywordtype">void</font> bus_connection_add_owned_service_link (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00083 <a class="code" href="structDBusList.html">DBusList</a> *link); 00084 <font class="keywordtype">int</font> bus_connection_get_n_services_owned (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00085 00086 <font class="comment">/* called by driver.c */</font> 00087 dbus_bool_t bus_connection_complete (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00088 <font class="keyword">const</font> <a class="code" href="structDBusString.html">DBusString</a> *name, 00089 <a class="code" href="structDBusError.html">DBusError</a> *error); 00090 00091 <font class="comment">/* called by dispatch.c when the connection is dropped */</font> 00092 <font class="keywordtype">void</font> bus_connection_disconnected (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00093 00094 dbus_bool_t bus_connection_is_in_group (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00095 <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> gid); 00096 dbus_bool_t bus_connection_get_groups (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00097 <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> **groups, 00098 <font class="keywordtype">int</font> *n_groups, 00099 <a class="code" href="structDBusError.html">DBusError</a> *error); 00100 BusClientPolicy* bus_connection_get_policy (<a class="code" href="structDBusConnection.html">DBusConnection</a> *connection); 00101 00102 <font class="comment">/* transaction API so we can send or not send a block of messages as a whole */</font> 00103 00104 <font class="keyword">typedef</font> void (* BusTransactionCancelFunction) (<font class="keywordtype">void</font> *data); 00105 00106 BusTransaction* bus_transaction_new (BusContext *context); 00107 BusContext* bus_transaction_get_context (BusTransaction *transaction); 00108 BusConnections* bus_transaction_get_connections (BusTransaction *transaction); 00109 dbus_bool_t bus_transaction_send (BusTransaction *transaction, 00110 <a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00111 <a class="code" href="structDBusMessage.html">DBusMessage</a> *message); 00112 dbus_bool_t bus_transaction_send_from_driver (BusTransaction *transaction, 00113 <a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00114 <a class="code" href="structDBusMessage.html">DBusMessage</a> *message); 00115 dbus_bool_t bus_transaction_send_error_reply (BusTransaction *transaction, 00116 <a class="code" href="structDBusConnection.html">DBusConnection</a> *connection, 00117 <font class="keyword">const</font> <a class="code" href="structDBusError.html">DBusError</a> *error, 00118 <a class="code" href="structDBusMessage.html">DBusMessage</a> *in_reply_to); 00119 <font class="keywordtype">void</font> bus_transaction_cancel_and_free (BusTransaction *transaction); 00120 <font class="keywordtype">void</font> bus_transaction_execute_and_free (BusTransaction *transaction); 00121 dbus_bool_t bus_transaction_add_cancel_hook (BusTransaction *transaction, 00122 BusTransactionCancelFunction cancel_function, 00123 <font class="keywordtype">void</font> *data, 00124 DBusFreeFunction free_data_function); 00125 00126 <font class="preprocessor">#endif </font><font class="comment">/* BUS_CONNECTION_H */</font> </pre></div><hr><address align="right"><small>Generated on Mon Sep 29 21:30:59 2003 for D-BUS by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.15 </small></address> </body> </html>