module OBus_property:sig..end
type ('a, 'access) t
'a. 'access is
the access mode of the property.type'ar =('a, [ `readable ]) t
type'aw =('a, [ `writable ]) t
type'arw =('a, [ `readable | `writable ]) t
typemap =(OBus_context.t * OBus_value.V.single) Map.Make(String).t
type group
typemonitor =OBus_proxy.t ->
OBus_name.interface -> Lwt_switch.t -> map React.signal Lwt.t
org.freedesktop.DBus.Properties.PropertiesChanged signal.val make : ?monitor:monitor ->
('a, 'access) OBus_member.Property.t ->
OBus_proxy.t -> ('a, 'access) tmake ?monitor property proxy returns the property object for
this proxy.val group : ?monitor:monitor ->
OBus_proxy.t -> OBus_name.interface -> groupgroup ?monitor proxy interface creates a group for all
readable properties of the given interface. Note that it is
faster to read a group of property rather than reading each
properties individually.val map_rw : ('a -> 'b) -> ('b -> 'a) -> 'a rw -> 'b rwmap property f g maps property with f and gval map_rw_with_context : (OBus_context.t -> 'a -> 'b) ->
('b -> 'a) -> 'a rw -> 'b rwOBus_property.map except that the context is also passed to mapping
functions.val map_r : ('a -> 'b) -> ('a, [> `readable ]) t -> 'b rval map_r_with_context : (OBus_context.t -> 'a -> 'b) ->
('a, [> `readable ]) t -> 'b rval map_w : ('b -> 'a) -> ('a, [> `writable ]) t -> 'b wval get : ('a, [> `readable ]) t -> 'a Lwt.tval get_with_context : ('a, [> `readable ]) t -> (OBus_context.t * 'a) Lwt.tOBus_property.get but also returns the contextval set : ('a, [> `writable ]) t -> 'a -> unit Lwt.tval get_group : group -> map Lwt.tval find_value : OBus_name.member -> map -> OBus_value.V.singlefind_value name map returns the value associated to name in
set. It raises Not_found if name is not in map.val find_value_with_context : OBus_name.member -> map -> OBus_context.t * OBus_value.V.singleOBus_property.find_value but also returns the context in which the
property was received.val find : ('a, [> `readable ]) t -> map -> 'afind property map looks up for the given property in set and
maps it to a value of type 'a. It raises Not_found if
property does not belong to map.val find_with_context : ('a, [> `readable ]) t ->
map -> OBus_context.t * 'aOBus_property.find but also returns the context in which the
property was received.val print_map : Format.formatter -> map -> unitprint_set pp map prints all the properties of map.val string_of_map : map -> stringstring_of_set set prints set into a string and returns it.
Note that when at least one property of an interface is monitored,
obus will keep a local state of all the properties of the
interface.
val monitor : ?switch:Lwt_switch.t ->
('a, [> `readable ]) t -> 'a React.signal Lwt.tmonitor ?switch property returns the signal holding the
current contents of property. Raises Failure if the property
is not monitorable.
Resources allocated to monitor the property are automatically
freed when the signal is garbage collected
val monitor_group : ?switch:Lwt_switch.t ->
group -> map React.signal Lwt.tmonitor_group ?switch group monitors all properties of the
given group.val get_all_no_cache : OBus_proxy.t ->
OBus_name.interface ->
(OBus_context.t * (OBus_name.member * OBus_value.V.single) list) Lwt.tget_all_no_cache proxy interface reads the value of all
properties without using the cache.val update_map : OBus_context.t ->
(OBus_name.member * OBus_value.V.single) list ->
map -> mapupdate_map context values map add all properties with their
context and value to map.val map_of_list : OBus_context.t ->
(OBus_name.member * OBus_value.V.single) list -> mapmap_of_list context values returns the map corresponding to
the given values and context.