source: azure_iot_hub/trunk/ntshell/echonet/echonet_dbg.h@ 388

Last change on this file since 388 was 388, checked in by coas-nagasima, 5 years ago

Azure IoT Hub Device C SDK を使ったサンプルの追加

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/x-chdr
File size: 5.1 KB
Line 
1/*
2 * TOPPERS ECHONET Lite Communication Middleware
3 *
4 * Copyright (C) 2014 Cores Co., Ltd. Japan
5 *
6 * 上記著作権者
7は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
8 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
9 * 変・再é…
10å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
11 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
12 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
13 * スコード中に含まれていること.
14 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
15 * 用できる形で再é…
16å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é…
17å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
18 * 者
19マニュアルなど)に,上記の著作権表示,この利用条件および下記
20 * の無保証規定を掲載すること.
21 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
22 * 用できない形で再é…
23å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
24 * と.
25 * (a) 再é…
26å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€…
27マニュアルなど)に,上記の著
28 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
29 * (b) 再é…
30å¸ƒã®å½¢æ…
31‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
32 * 報告すること.
33 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
34 * 害からも,上記著作権者
35およびTOPPERSプロジェクトをå…
36è²¬ã™ã‚‹ã“と.
37 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
38 * 由に基づく請求からも,上記著作権者
39およびTOPPERSプロジェクトを
40 * å…
41è²¬ã™ã‚‹ã“と.
42 *
43 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者
44お
45 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
46 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
47 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
48 * の責任を負わない.
49 *
50 * @(#) $Id: echonet_dbg.h 388 2019-05-22 11:25:18Z coas-nagasima $
51 */
52
53/*
54 * ECHONET Lite タスク デバッグ出力
55 */
56
57#ifndef TOPPERS_ECHONET_DBG_H
58#define TOPPERS_ECHONET_DBG_H
59
60#ifdef __cplusplus
61extern "C" {
62#endif
63
64#ifdef SEM_ECN_DBG_UDP_SYSLOG
65 #include "echonet_dbg_udp.h"
66#endif
67
68/*#include ".h"*/
69#include "echonet.h"
70
71/* ECN_SRC_LOC: ソース中のファイル名と行番号を示す文字列を作るマクロ */
72#ifndef ECN_SRC_LOC
73 #ifndef _ECN_BLD_BASE_DIR
74 #define __ECN_SRC_LOC(fnam, line) fnam "(" #line ")"
75 #else
76 #define ___ECN_SRC_LOC(fnam, line) fnam "(" #line ")"
77 #define __ECN_SRC_LOC(fnam, line) \
78 ( \
79 sizeof(_ECN_BLD_BASE_DIR) < sizeof(___ECN_SRC_LOC(fnam, line)) ? \
80 ( &(___ECN_SRC_LOC(fnam, line))[sizeof(_ECN_BLD_BASE_DIR) - 1] \
81 ) \
82 : ___ECN_SRC_LOC(fnam, line) \
83 )
84 #endif
85 #define _ECN_SRC_LOC(fnam, line) __ECN_SRC_LOC(fnam, line)
86 #define ECN_SRC_LOC _ECN_SRC_LOC(__FILE__, __LINE__)
87#endif
88
89#ifdef ECN_DBG_PUT_ENA
90#define ECN_DBG_PUT(a) _ecn_dbg_dbgput(ECN_SRC_LOC, a)
91#define ECN_DBG_PUT_1(a, b) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b)
92#define ECN_DBG_PUT_2(a, b, c) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c)
93#define ECN_DBG_PUT_3(a, b, c, d) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c, d)
94#define ECN_DBG_PUT_4(a, b, c, d, e) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c, d, e)
95#define ECN_DBG_PUT_5(a, b, c, d, e, f) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c, d, e, f)
96#else
97#define ECN_DBG_PUT(a)
98#define ECN_DBG_PUT_1(a, b)
99#define ECN_DBG_PUT_2(a, b, c)
100#define ECN_DBG_PUT_3(a, b, c, d)
101#define ECN_DBG_PUT_4(a, b, c, d, e)
102#define ECN_DBG_PUT_5(a, b, c, d, e, f)
103#endif
104
105/* デバッグ出力(CARP) */
106#ifdef ECN_CAP_PUT_ENA
107#define ECN_CAP_PUT(a) _ecn_dbg_dbgput(ECN_SRC_LOC, a)
108#define ECN_CAP_PUT_1(a, b) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b)
109#define ECN_CAP_PUT_2(a, b, c) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c)
110#define ECN_CAP_PUT_3(a, b, c, d) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c, d)
111#define ECN_CAP_PUT_4(a, b, c, d, e) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c, d, e)
112#define ECN_CAP_PUT_5(a, b, c, d, e, f) _ecn_dbg_dbgput(ECN_SRC_LOC, a, b, c, d, e, f)
113#else
114#define ECN_CAP_PUT(a)
115#define ECN_CAP_PUT_1(a, b)
116#define ECN_CAP_PUT_2(a, b, c)
117#define ECN_CAP_PUT_3(a, b, c, d)
118#define ECN_CAP_PUT_4(a, b, c, d, e)
119#define ECN_CAP_PUT_5(a, b, c, d, e, f)
120#endif
121
122/*
123 * デバッグ出力
124 * 例: ECN_DBG_PUT("task start");
125 */
126int _ecn_dbg_dbgput(const char *, const char *, ...);
127
128/*
129 * バイナリダンプ出力
130 */
131void _ecn_dbg_bindmp(const uint8_t *buffer, size_t len);
132
133/*
134 * ECHONET Liteサービスコード文字列変換
135 */
136const char *_ecn_dbg_esv2str(uint8_t fa_esv);
137
138/*
139 * ECN_ENOD_IDの文字列変換
140 */
141const char *_ecn_dbg_enod2str(ECN_ENOD_ID fa_enod_id);
142
143#ifdef __cplusplus
144}
145#endif
146
147#endif /* TOPPERS_ECHONET_DBG_H */
Note: See TracBrowser for help on using the repository browser.