/usr/include/fcitx-utils/log.h is in fcitx-libs-dev 1:4.2.8.5-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | /***************************************************************************
* Copyright (C) 2010~2010 by CSSlayer *
* wengxt@gmail.com *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
/**
* @addtogroup FcitxUtils
* @{
*/
/**
* @file log.h
*
* Fcitx provides a simply log function in order to record usually message for developers.
*
* A common use case for log function will like this:
*
* @code
* FcitxLog(INFO, "Log for %s", str);
* @endcode
*
* FcitxLog uses printf style argument, please make sure you don't use format string with some
* unsafe string, for example, contains percent symbol.
*
*/
#ifndef _FCITX_LOG_H_
#define _FCITX_LOG_H_
#include <stddef.h>
#include <stdarg.h>
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief ErrorLevel, DEBUG will not be printed if -DENABLE_DEBUG=On is not specified while compiling
**/
typedef enum _FcitxLogLevel
{
FCITX_DEBUG = 0,
FCITX_ERROR = 1,
FCITX_INFO = 2,
FCITX_FATAL = 3,
FCITX_WARNING = 4,
FCITX_NONE = 5
} FcitxLogLevel, ErrorLevel;
/**
* a convenient macro for log, it will automatically printed current file and code line number.
*/
#define FcitxLog(e, fmt...) FcitxLogFunc(FCITX_##e, __FILE__, __LINE__, fmt)
/**
* print a log string to stderr, should use FcitxLog instead of this function
*
* @param level log level
* @param filename current filename
* @param line line number
* @param fmt printf fmt
* @param ...
* @return void
**/
void FcitxLogFunc(FcitxLogLevel level, const char* filename,
const int line, const char* fmt, ...);
/**
* print a log string to stderr, may used to hook into other log system.
*
* @param level log level
* @param filename current filename
* @param line line number
* @param fmt printf fmt
* @param ap va_list
* @return void
*
* @since 4.2.7
**/
void FcitxLogFuncV(FcitxLogLevel e, const char* filename, const int line,
const char* fmt, va_list ap);
/**
* set log level
*
* @param e log level
* @return void
*
* @since 4.2.7
**/
void FcitxLogSetLevel(FcitxLogLevel e);
/**
* get log level
*
* @return FcitxLogLevel
**/
FcitxLogLevel FcitxLogGetLevel();
#ifdef __cplusplus
}
#endif
#endif
/**
* @}
*/
// kate: indent-mode cstyle; space-indent on; indent-width 0;
|