/***************************************************************************
*
* devinfo.h : definitions for libdevinfo-based device enumeration
*
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
* Licensed under the Academic Free License version 2.1
*
**************************************************************************/
#pragma ident "%Z%%M% %I% %E% SMI"
#ifndef DEVINFO_H
#define DEVINFO_H
#include <glib.h>
#include <libdevinfo.h>
#include "../hald.h"
#include "../device_info.h"
typedef struct DevinfoDevHandler_s
{
/* yet unused */
void (*hotplug_begin_add) (HalDevice *d, HalDevice *parent, struct DevinfoDevHandler_s *handler, void *end_token);
void (*probing_done) (HalDevice *d, guint32 exit_type, gint return_code, char **error, gpointer userdata1, gpointer userdata2);
hal_device_property_set_int (d, halprop, *(v)); \
}
hal_device_property_set_string (d, halprop, v); \
}
#define NELEM(a) (sizeof (a) / sizeof (*(a)))
void devinfo_set_default_properties (HalDevice *d, HalDevice *parent, di_node_t node, char *devfs_path);
void devinfo_callouts_probing_done (HalDevice *d, guint32 exit_type, gint return_code, char **error,
void hotplug_event_begin_add_devinfo (HalDevice *d, HalDevice *parent, DevinfoDevHandler *handler, void *end_token);
void devinfo_hotplug_enqueue(HalDevice *d, gchar *devfs_path, DevinfoDevHandler *handler, int action, int front);
#endif /* DEVINFO_H */