Module Brr.Time

module Time: sig .. end
Monotonic time.


Time span


type span = float 
The type for time spans, in seconds.

Passing time


val elapsed : unit -> span
elapsed () is the number of seconds elapsed since the beginning of the program.

Tick events


val tick : span -> span Note.event
tick span is an event that occurs once in span seconds with the value span - span' where span' is the actual delay performed by the system.

Note. Since the system may introduce delays you cannot assume that two different calls to Brr.Time.tick will necessarily yield two non-simultaneous events.


Counters


type counter 
The type for time counters.
val counter : unit -> counter
counter () is a counter counting time from call time on.
val counter_value : counter -> span
counter_value c is the current counter value in seconds.

Pretty printing time


val pp_s : Format.formatter -> span -> unit
pp_s ppf s prints s seconds in seconds.
val pp_ms : Format.formatter -> span -> unit
pp_ms ppf s prints s seconds in milliseconds.
val pp_mus : Format.formatter -> span -> unit
pp_mus ppf s prints s seconds in microseconds.