1
/* -*- mode: c; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
3
/*********************************************************************
4
* Clustal Omega - Multiple sequence alignment
6
* Copyright (C) 2010 University College Dublin
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.
13
* This file is part of Clustal-Omega.
15
********************************************************************/
33
#define LOG_FORCED_DEBUG 4
35
#define LOG_CRITICAL 6
38
#define LOG_NUM_LEVELS 8
42
/* the higher the level, the more priority it has. numbers must be
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];
51
/* everything above this level will be printed */
57
/* a standard logger */
63
LogDefaultSetup(log_t *log);
65
Log(log_t *prLog, int iLevel, char *pcFmt, ...);
67
LogSetFP(log_t *log, int level, FILE *fp);
69
LogSetFPForAll(log_t *log, FILE *fp);
71
LogGetFP(log_t *prLog, int iLevel);
73
LogMute(log_t *log, int level);
75
LogMuteAll(log_t *log);
77
LogFuncOverwrite(log_t *prLog, int iLevel,
78
void (*Func) (FILE *prFP, char *pcFormat, va_list rVArgList));