Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
HLC.Smodule Time : sig ... endmodule Timestamp : Timestamp.Timestamp.Sval create : ?csize:int -> ?delta:Time.t -> Apero.Uuid.t -> tcreate ?csize ?delta id creates a new HLC using id as source identifier. csize specifies the size of the counter part used within the 64-bit time represnetation (default: 8 bits). delta specifies the maximum time drift accepted wrt. local time for an incoming timestamp (default: 100ms).
val new_timestamp : t -> Timestamp.t Lwt.tnew_timestamp () updates the HLC with the local time and returns a new Timestamp which is greater than any previously returned timestamp
val update_with_timestamp :
Timestamp.t ->
t ->
(unit, Apero.error) Apero.Result.t Lwt.tupdate_with_timestamp t checks if the timestamp t (that should come from an incoming message) doesn't exceeds the local time above the specified Config.delta. If not, the HLC is updated with this timestamps and will further create timestamps that are greater thant t and than any previously returned timestamp.