1 #ifndef _DEVICE_HANDLER_H
2 #define _DEVICE_HANDLER_H
7 struct discover_device;
8 struct discover_server;
14 struct discover_device {
15 struct device *device;
27 struct discover_context {
29 struct discover_device *device;
30 struct list boot_options;
33 struct device_handler *device_handler_init(struct discover_server *server,
36 void device_handler_destroy(struct device_handler *devices);
38 int device_handler_get_device_count(const struct device_handler *handler);
39 const struct device *device_handler_get_device(
40 const struct device_handler *handler, unsigned int index);
42 struct device *discover_context_device(struct discover_context *ctx);
43 void discover_context_add_boot_option(struct discover_context *ctx,
44 struct boot_option *opt);
46 int device_handler_event(struct device_handler *handler, struct event *event);
48 struct discover_device *device_lookup_by_name(struct device_handler *handler,
50 struct discover_device *device_lookup_by_path(struct device_handler *handler,
52 struct discover_device *device_lookup_by_uuid(struct device_handler *handler,
54 struct discover_device *device_lookup_by_label(struct device_handler *handler,
56 struct discover_device *device_lookup_by_id(struct device_handler *handler,
59 void device_handler_boot(struct device_handler *handler,
60 struct boot_command *cmd);
62 #endif /* _DEVICE_HANDLER_H */