]> matita.cs.unibo.it Git - helm.git/blob - helm/uwobo/uwobo_logger.mli
ocaml 3.09 transition
[helm.git] / helm / uwobo / uwobo_logger.mli
1 (*
2  * Copyright (C) 2003:
3  *    Stefano Zacchiroli <zack@cs.unibo.it>
4  *    for the HELM Team http://helm.cs.unibo.it/
5  *
6  *  This file is part of HELM, an Hypertextual, Electronic
7  *  Library of Mathematics, developed at the Computer Science
8  *  Department, University of Bologna, Italy.
9  *
10  *  HELM is free software; you can redistribute it and/or
11  *  modify it under the terms of the GNU General Public License
12  *  as published by the Free Software Foundation; either version 2
13  *  of the License, or (at your option) any later version.
14  *
15  *  HELM is distributed in the hope that it will be useful,
16  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  *  GNU General Public License for more details.
19  *
20  *  You should have received a copy of the GNU General Public License
21  *  along with HELM; if not, write to the Free Software
22  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston,
23  *  MA  02111-1307, USA.
24  *
25  *  For details, see the HELM World-Wide-Web page,
26  *  http://helm.cs.unibo.it/
27  *)
28
29 type priority = [
30   | `Emerg    (* system is unusable *)
31   | `Alert    (* action must be taken immediately *)
32   | `Crit     (* critical conditions *)
33   | `Err      (* error conditions *)
34   | `Warning  (* warning conditions *)
35   | `Notice   (* normal, but significant, condition *)
36   | `Info     (* informational message *)
37   | `Debug    (* debug-level message *)
38 ]
39
40   (**
41   Warning: logging is disabled by default, you have to invoke #enable method
42   before being able to log anything.
43   @param level minimum level of priority that will be reported, msg with
44   priority less than this will be ignored
45   @param outchan output channel on which output log messages *)
46 class sysLogger:
47   ?level: priority -> ?outchan: out_channel ->
48   unit ->
49     object
50       method level: priority
51       method levelNo: int
52         (** enable logging, by default logging is disabled *)
53       method enable: unit
54         (** disable logging *)
55       method disable: unit
56         (** log a message *)
57       method log: priority -> string -> unit
58     end
59
60 class processingLogger:
61   unit ->
62     object
63       method log: string -> unit
64       method logBold: string -> unit
65       method logEmph: string -> unit
66       method asText: string
67       method asHtml: string
68     end
69