]> matita.cs.unibo.it Git - helm.git/blob - helm/software/helena/src/lib/time.ml
Preparing for 0.5.9 release.
[helm.git] / helm / software / helena / src / 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
14 module L = Log
15
16 let level = 1 
17
18 let utime_stamp =
19    let old = ref 0.0 in
20    fun msg -> 
21       let times = Unix.times () in
22       let stamp = times.Unix.tms_utime in
23       let lap = stamp -. !old in
24       let str = P.sprintf "USR TIME STAMP (%s): %f (%f)" msg stamp lap in
25       L.warn level str;
26       old := stamp
27
28 let gmtime msg =
29    let gmt = Unix.gmtime (Unix.time ()) in
30    let yy = gmt.Unix.tm_year + 1900 in
31    let mm = gmt.Unix.tm_mon + 1 in
32    let dd = gmt.Unix.tm_mday in
33    let h = gmt.Unix.tm_hour in
34    let m = gmt.Unix.tm_min in
35    let s = gmt.Unix.tm_sec in
36    let str = P.sprintf "UTC TIME STAMP (%s): %u/%u/%u %u:%u:%u" msg yy mm dd h m s in
37    L.warn level str;