sig
type error = Null | Errno of int
val string_of_error : Udev.error -> string
exception Error of Udev.error
module Context : sig type t val create : unit -> Udev.Context.t end
module Device :
sig
type t
type descr =
Syspath of string
| Subsystem_sysname of string * string
| Device_id of string
| Environment
val create : Udev.Context.t -> Udev.Device.descr -> Udev.Device.t
val context : Udev.Device.t -> Udev.Context.t
val syspath : Udev.Device.t -> string
val sysname : Udev.Device.t -> string
val sysnum : Udev.Device.t -> string option
val devpath : Udev.Device.t -> string
val tags : Udev.Device.t -> string list
val has_tag : Udev.Device.t -> string -> bool
val subsystem : Udev.Device.t -> string
val driver : Udev.Device.t -> string option
val devtype : Udev.Device.t -> string option
val devnode : Udev.Device.t -> string option
val devlinks : Udev.Device.t -> string list
val is_initialized : Udev.Device.t -> bool
val usec_since_initialized : Udev.Device.t -> Stdint.Uint64.t
val parent : Udev.Device.t -> Udev.Device.t option
val find_parent :
Udev.Device.t ->
?devtype:string -> subsystem:string -> Udev.Device.t option
type action =
Add
| Remove
| Change
| Online
| Offline
| Other of string
val string_of_action : Udev.Device.action -> string
val action : Udev.Device.t -> Udev.Device.action option
val seqnum : Udev.Device.t -> Stdint.Uint64.t
val properties : Udev.Device.t -> (string * string) list
val property : Udev.Device.t -> string -> string option
val int_property : Udev.Device.t -> string -> int option
val bool_property : Udev.Device.t -> string -> bool option
val sysattrs : Udev.Device.t -> (string * string) list
val sysattr : Udev.Device.t -> string -> string option
val int_sysattr : Udev.Device.t -> string -> int option
val bool_sysattr : Udev.Device.t -> string -> bool option
val set_sysattr : Udev.Device.t -> string -> string -> unit
end
module Monitor :
sig
type t
type filter =
Tag of string
| Subsystem_devtype of string * string option
type netlink_source = Udev | Kernel
val create :
?source:Udev.Monitor.netlink_source ->
Udev.Context.t -> Udev.Monitor.t
val set_filter : Udev.Monitor.t -> Udev.Monitor.filter list -> unit
val start : Udev.Monitor.t -> unit
exception Timeout
val receive_device : ?timeout:float -> Udev.Monitor.t -> Udev.Device.t
val context : Udev.Monitor.t -> Udev.Context.t
val set_receive_buffer_size : Udev.Monitor.t -> int -> unit
val fd : Udev.Monitor.t -> Unix.file_descr
end
module Enumerate :
sig
type filter =
Subsystem of string
| NoSubsystem of string
| Sysattr of string * string
| NoSysattr of string * string
| Property of string * string
| Sysname of string
| Tag of string
| Parent of Udev.Device.t
| Is_initialized
val devices :
Udev.Context.t -> Udev.Enumerate.filter list -> Udev.Device.t list
val subsystems :
Udev.Context.t -> Udev.Enumerate.filter list -> Udev.Device.t list
end
end