OSDN Git Service

記録パス設定 記録CH設定 ファイル書込タイミング
[scilog/scilog.git] / mes_print.h
1 /*
2         本番でも出力するメッセージ
3 */
4 #if !defined(__MES_PRINT_H__)
5 #define __MES_PRINT_H__
6
7 #include <stdio.h>
8 #include <errno.h>
9
10 #define MES_PRINT
11
12 #undef PMES
13 #undef PMESF
14 #undef PERR
15 #undef PERRF
16 #undef PMESF_NULL
17
18 #ifdef MES_PRINT
19 // ノーマル
20 #  define PMES(fmt, args...) fprintf(stdout, fmt, ## args)
21
22 // 関数名付き
23 #  define PMESF(fmt, args...) \
24         fprintf(stdout, "%s() ", __FUNCTION__); \
25         fprintf(stdout, fmt, ## args)
26
27 // エラー
28 #  define PERR(fmt, args...) \
29         fprintf(stderr, fmt, ## args)
30 // エラー 関数名付き
31 #  define PERRF(fmt, args...) \
32         fprintf(stderr, "%s() ", __FUNCTION__); \
33         fprintf(stderr, fmt, ## args)
34 // NULLチェック
35 #define PMESF_NULL(var) \
36         if (var == NULL) { \
37                 fprintf(stderr, "%s() ", __FUNCTION__); \
38                 fprintf(stderr, "%s==NULL\n", #var); \
39                 fflush(stderr); \
40         }
41 #else
42 #  define PMES(fmt, args...)
43 #  define PMESF(fmt, args...)
44 #  define PERR(fmt, args...)
45 #  define PERRF(fmt, args...)
46 #  define PMESF_NULL(var)
47 #endif
48
49 #endif