1*18c2aff7Sartem /*************************************************************************** 2*18c2aff7Sartem * CVSID: $Id$ 3*18c2aff7Sartem * 4*18c2aff7Sartem * hal_dbus.h : D-BUS interface of HAL daemon 5*18c2aff7Sartem * 6*18c2aff7Sartem * Copyright (C) 2003 David Zeuthen, <david@fubar.dk> 7*18c2aff7Sartem * 8*18c2aff7Sartem * Licensed under the Academic Free License version 2.1 9*18c2aff7Sartem * 10*18c2aff7Sartem * This program is free software; you can redistribute it and/or modify 11*18c2aff7Sartem * it under the terms of the GNU General Public License as published by 12*18c2aff7Sartem * the Free Software Foundation; either version 2 of the License, or 13*18c2aff7Sartem * (at your option) any later version. 14*18c2aff7Sartem * 15*18c2aff7Sartem * This program is distributed in the hope that it will be useful, 16*18c2aff7Sartem * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*18c2aff7Sartem * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*18c2aff7Sartem * GNU General Public License for more details. 19*18c2aff7Sartem * 20*18c2aff7Sartem * You should have received a copy of the GNU General Public License 21*18c2aff7Sartem * along with this program; if not, write to the Free Software 22*18c2aff7Sartem * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 23*18c2aff7Sartem * 24*18c2aff7Sartem **************************************************************************/ 25*18c2aff7Sartem 26*18c2aff7Sartem #ifndef HAL_DBUS_H 27*18c2aff7Sartem #define HAL_DBUS_H 28*18c2aff7Sartem 29*18c2aff7Sartem #include <dbus/dbus.h> 30*18c2aff7Sartem 31*18c2aff7Sartem #include "device.h" 32*18c2aff7Sartem 33*18c2aff7Sartem DBusHandlerResult manager_get_all_devices (DBusConnection *conn, 34*18c2aff7Sartem DBusMessage *msg); 35*18c2aff7Sartem DBusHandlerResult manager_find_device_string_match (DBusConnection *conn, 36*18c2aff7Sartem DBusMessage *msg); 37*18c2aff7Sartem DBusHandlerResult manager_find_device_by_capability (DBusConnection *conn, 38*18c2aff7Sartem DBusMessage *msg); 39*18c2aff7Sartem DBusHandlerResult manager_device_exists (DBusConnection *conn, 40*18c2aff7Sartem DBusMessage *msg); 41*18c2aff7Sartem DBusHandlerResult device_get_all_properties (DBusConnection *conn, 42*18c2aff7Sartem DBusMessage *msg); 43*18c2aff7Sartem DBusHandlerResult device_get_property (DBusConnection *conn, 44*18c2aff7Sartem DBusMessage *msg); 45*18c2aff7Sartem DBusHandlerResult device_get_property_type (DBusConnection *conn, 46*18c2aff7Sartem DBusMessage *msg); 47*18c2aff7Sartem DBusHandlerResult device_set_property (DBusConnection *conn, 48*18c2aff7Sartem DBusMessage *msg, dbus_bool_t local_interface); 49*18c2aff7Sartem DBusHandlerResult device_add_capability (DBusConnection *conn, 50*18c2aff7Sartem DBusMessage *msg, dbus_bool_t local_interface); 51*18c2aff7Sartem DBusHandlerResult device_remove_capability (DBusConnection *conn, 52*18c2aff7Sartem DBusMessage *msg, dbus_bool_t local_interface); 53*18c2aff7Sartem DBusHandlerResult device_remove_property (DBusConnection *conn, 54*18c2aff7Sartem DBusMessage *msg, dbus_bool_t local_interface); 55*18c2aff7Sartem DBusHandlerResult device_property_exists (DBusConnection *conn, 56*18c2aff7Sartem DBusMessage *msg); 57*18c2aff7Sartem DBusHandlerResult device_query_capability (DBusConnection *conn, 58*18c2aff7Sartem DBusMessage *msg); 59*18c2aff7Sartem DBusHandlerResult device_lock (DBusConnection *conn, 60*18c2aff7Sartem DBusMessage *msg); 61*18c2aff7Sartem DBusHandlerResult device_unlock (DBusConnection *conn, 62*18c2aff7Sartem DBusMessage *msg); 63*18c2aff7Sartem DBusHandlerResult manager_new_device (DBusConnection *conn, 64*18c2aff7Sartem DBusMessage *msg, dbus_bool_t local_interface); 65*18c2aff7Sartem DBusHandlerResult manager_commit_to_gdl (DBusConnection *conn, 66*18c2aff7Sartem DBusMessage *msg, dbus_bool_t local_interface); 67*18c2aff7Sartem DBusHandlerResult manager_remove (DBusConnection *conn, 68*18c2aff7Sartem DBusMessage *msg, dbus_bool_t local_interface); 69*18c2aff7Sartem DBusHandlerResult merge_properties (DBusConnection *conn, 70*18c2aff7Sartem DBusMessage *msg); 71*18c2aff7Sartem DBusHandlerResult device_matches (DBusConnection *conn, 72*18c2aff7Sartem DBusMessage *msg); 73*18c2aff7Sartem 74*18c2aff7Sartem void manager_send_signal_device_added (HalDevice *device); 75*18c2aff7Sartem void manager_send_signal_device_removed (HalDevice *device); 76*18c2aff7Sartem void manager_send_signal_new_capability (HalDevice *device, 77*18c2aff7Sartem const char *capability); 78*18c2aff7Sartem 79*18c2aff7Sartem void device_send_signal_property_modified (HalDevice *device, 80*18c2aff7Sartem const char *key, 81*18c2aff7Sartem dbus_bool_t removed, 82*18c2aff7Sartem dbus_bool_t added); 83*18c2aff7Sartem void device_send_signal_condition (HalDevice *device, 84*18c2aff7Sartem const char *condition_name, 85*18c2aff7Sartem const char *condition_details); 86*18c2aff7Sartem 87*18c2aff7Sartem void device_property_atomic_update_begin (void); 88*18c2aff7Sartem void device_property_atomic_update_end (void); 89*18c2aff7Sartem 90*18c2aff7Sartem gboolean hald_dbus_init (void); 91*18c2aff7Sartem 92*18c2aff7Sartem gboolean hald_dbus_local_server_init (void); 93*18c2aff7Sartem 94*18c2aff7Sartem DBusHandlerResult hald_dbus_filter_function (DBusConnection * connection, DBusMessage * message, void *user_data); 95*18c2aff7Sartem 96*18c2aff7Sartem char *hald_dbus_local_server_addr (void); 97*18c2aff7Sartem 98*18c2aff7Sartem gboolean device_is_executing_method (HalDevice *d, const char *interface_name, const char *method_name); 99*18c2aff7Sartem 100*18c2aff7Sartem #endif /* HAL_DBUS_H */ 101