Clustal Omega
1.1.0
Main Page
Data Structures
Files
File List
Globals
src
clustal
log.h
Go to the documentation of this file.
1
/* -*- mode: c; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
3
/*********************************************************************
4
* Clustal Omega - Multiple sequence alignment
5
*
6
* Copyright (C) 2010 University College Dublin
7
*
8
* Clustal-Omega is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License as
10
* published by the Free Software Foundation; either version 2 of the
11
* License, or (at your option) any later version.
12
*
13
* This file is part of Clustal-Omega.
14
*
15
********************************************************************/
16
17
/*
18
* RCS $Id$
19
*/
20
21
22
#include <stdio.h>
23
#include <stdarg.h>
24
25
#ifndef LOG_H
26
#define LOG_H
27
28
29
#define LOG_DEBUG 0
30
#define LOG_VERBOSE 1
31
#define LOG_INFO 2
32
#define LOG_WARN 3
33
#define LOG_FORCED_DEBUG 4
34
#define LOG_ERROR 5
35
#define LOG_CRITICAL 6
36
#define LOG_FATAL 7
37
38
#define LOG_NUM_LEVELS 8
39
40
41
typedef
struct
{
42
/* the higher the level, the more priority it has. numbers must be
43
* sequential
44
*/
45
46
/* array of function pointers */
47
void (*prFunc[
LOG_NUM_LEVELS
]) (FILE *prFP,
char
*pcFormat, va_list rVArgList);
48
FILE *prFP[
LOG_NUM_LEVELS
];
49
char
*prPrefix[
LOG_NUM_LEVELS
];
50
51
/* everything above this level will be printed */
52
int
iLogLevelEnabled
;
53
}
log_t
;
54
55
56
57
/* a standard logger */
58
extern
log_t
rLog
;
59
60
61
62
void
63
LogDefaultSetup
(
log_t
*log);
64
void
65
Log
(
log_t
*prLog,
int
iLevel,
char
*pcFmt, ...);
66
void
67
LogSetFP
(
log_t
*log,
int
level, FILE *fp);
68
void
69
LogSetFPForAll
(
log_t
*log, FILE *fp);
70
FILE *
71
LogGetFP
(
log_t
*prLog,
int
iLevel);
72
void
73
LogMute
(
log_t
*log,
int
level);
74
void
75
LogMuteAll
(
log_t
*log);
76
void
77
LogFuncOverwrite
(
log_t
*prLog,
int
iLevel,
78
void
(*Func) (FILE *prFP,
char
*pcFormat, va_list rVArgList));
79
80
81
#endif
Generated on Mon Mar 17 2014 12:54:43 for Clustal Omega by
1.8.1.2