tesseract v5.3.3.20231005
tlog.h
Go to the documentation of this file.
1/**********************************************************************
2 * File: tlog.h
3 * Description: Variant of printf with logging level controllable by a
4 * commandline flag.
5 * Author: Ranjith Unnikrishnan
6 * Created: Wed Nov 20 2013
7 *
8 * (C) Copyright 2013, Google Inc.
9 ** Licensed under the Apache License, Version 2.0 (the "License");
10 ** you may not use this file except in compliance with the License.
11 ** You may obtain a copy of the License at
12 ** http://www.apache.org/licenses/LICENSE-2.0
13 ** Unless required by applicable law or agreed to in writing, software
14 ** distributed under the License is distributed on an "AS IS" BASIS,
15 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 ** See the License for the specific language governing permissions and
17 ** limitations under the License.
18 *
19 **********************************************************************/
20#ifndef TESSERACT_TRAINING_TLOG_H_
21#define TESSERACT_TRAINING_TLOG_H_
22
23#include "export.h"
24
25#include "commandlineflags.h"
26#include "errcode.h"
27#include "tprintf.h"
28
29TESS_PANGO_TRAINING_API
31
32// Variant guarded by the numeric logging level parameter FLAGS_tlog_level
33// (default 0). Code using ParseCommandLineFlags() can control its value using
34// the --tlog_level commandline argument. Otherwise it must be specified in a
35// config file like other params.
36#define tlog(level, ...) \
37 { \
38 if (FLAGS_tlog_level >= level) { \
39 tprintf(__VA_ARGS__); \
40 } \
41 }
42
43#define TLOG_IS_ON(level) (FLAGS_tlog_level >= level)
44
45#endif // TESSERACT_TRAINING_TLOG_H_
TESS_PANGO_TRAINING_API DECLARE_INT_PARAM_FLAG(tlog_level)