]> matita.cs.unibo.it Git - helm.git/blob - helm/software/lambda-delta/lib/time.ml
Additional contribs.
[helm.git] / helm / software / lambda-delta / lib / time.ml
1 (*
2     ||M||  This file is part of HELM, an Hypertextual, Electronic        
3     ||A||  Library of Mathematics, developed at the Computer Science     
4     ||T||  Department, University of Bologna, Italy.                     
5     ||I||                                                                
6     ||T||  HELM is free software; you can redistribute it and/or         
7     ||A||  modify it under the terms of the GNU General Public License   
8     \   /  version 2 or (at your option) any later version.              
9      \ /   This software is distributed as is, NO WARRANTY.              
10       V_______________________________________________________________ *)
11
12 module P = Printf
13 module L = Log
14
15 let utime_stamp =
16    let old = ref 0.0 in
17    fun msg -> 
18       let times = Unix.times () in
19       let stamp = times.Unix.tms_utime in
20       let lap = stamp -. !old in
21       L.warn (P.sprintf "USR TIME STAMP (%s): %f (%f)" msg stamp lap);
22       old := stamp
23
24 let gmtime msg =
25    let gmt = Unix.gmtime (Unix.time ()) in
26    let yy = gmt.Unix.tm_year + 1900 in
27    let mm = gmt.Unix.tm_mon + 1 in
28    let dd = gmt.Unix.tm_mday in
29    let h = gmt.Unix.tm_hour in
30    let m = gmt.Unix.tm_min in
31    let s = gmt.Unix.tm_sec in
32    L.warn (
33       P.sprintf "UTC TIME STAMP (%s): %u/%u/%u %u:%u:%u" msg yy mm dd h m s
34    )