Changeset 389 for azure_iot_hub/trunk/ntshell/echonet/echonet_fbs.h
- Timestamp:
- May 22, 2019, 10:03:37 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
azure_iot_hub/trunk/ntshell/echonet/echonet_fbs.h
- Property svn:keywords deleted
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr;charset=UTF-8
r388 r389 4 4 * Copyright (C) 2014 Cores Co., Ltd. Japan 5 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 * ã®è²¬ä»»ãè² ããªãï¼ 6 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 7 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 8 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 9 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 10 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 11 * スコード中に含まれていること. 12 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 13 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 14 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 15 * の無保証規定を掲載すること. 16 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 17 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 18 * と. 19 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 20 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 21 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 22 * 報告すること. 23 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 24 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 25 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 26 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 27 * 免責すること. 28 * 29 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 30 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 31 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 32 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 33 * の責任を負わない. 49 34 * 50 35 * @(#) $Id$ … … 52 37 53 38 /* 54 * åºå®é·ãããã¡å¯å¤é·ã¹ããªã¼ã39 * 固定長バッファ可変長ストリーム 55 40 */ 56 41 … … 66 51 67 52 #ifndef ECHONET_MEMPOOL_GET_TMO 68 #define ECHONET_MEMPOOL_GET_TMO (0) /* ã¡ã¢ãªãã¼ã«åå¾æã®ã¿ã¤ã ã¢ã¦ãæå®*/53 #define ECHONET_MEMPOOL_GET_TMO (0) /* メモリプール取得時のタイムアウト指定 */ 69 54 #endif /* ECHONET_MEMPOOL_GET_TMO */ 70 55 71 56 #ifndef NUM_ECHONET_MEMPOOL_BLOCK 72 #define NUM_ECHONET_MEMPOOL_BLOCK (60) /* é»æç¨ã¡ã¢ãªãããã¯ã®æ°*/57 #define NUM_ECHONET_MEMPOOL_BLOCK (60) /* 電文用メモリブロックの数 */ 73 58 #endif /* NUM_ECHONET_MEMPOOL_BLOCK */ 74 59 75 60 #ifndef ECHONET_MEMPOOL_BLOCK_SIZE 76 #define ECHONET_MEMPOOL_BLOCK_SIZE (256) /* é»æç¨ã¡ã¢ãªãããã¯ã®ãµã¤ãº*/61 #define ECHONET_MEMPOOL_BLOCK_SIZE (256) /* 電文用メモリブロックのサイズ */ 77 62 #endif /* ECHONET_MEMPOOL_BLOCK_SIZE */ 78 63 79 typedef unsigned int ECN_FBS_SIZE_T; /* size_t ç¸å½*/80 typedef int ECN_FBS_SSIZE_T; /* ssize_t ç¸å½*/81 82 /* T_EDATA 管çé åãµã¤ãº*/64 typedef unsigned int ECN_FBS_SIZE_T; /* size_t相当 */ 65 typedef int ECN_FBS_SSIZE_T; /* ssize_t相当 */ 66 67 /* T_EDATA管理領域サイズ */ 83 68 #ifndef T_MSG 84 69 typedef intptr_t T_MSG; … … 86 71 #define DEF_ECN_EDT_HDR_LEN (sizeof(T_MSG)) 87 72 88 /* 管çé åãµã¤ãº(64byte - sizeof(T_MSG)) */73 /* 管理領域サイズ(64byte - sizeof(T_MSG)) */ 89 74 /* #define DEF_ECN_FBS_LIB_HDR_LEN ((ECHONET_MEMPOOL_BLOCK_SIZE + sizeof(int) - 1)>> 2) // */ 90 75 #define DEF_ECN_FBS_LIB_HDR_LEN (64 - DEF_ECN_EDT_HDR_LEN) 91 76 92 /* 管çé åãå«ããããã¯ã«ä¿æãããã¼ã¿ãµã¤ãº*/77 /* 管理領域を含むブロックに保持するデータサイズ */ 93 78 #define DEF_ECN_FBS_FST_DAT_LEN (64) 94 79 95 /* ãªã³ã¯ãã¤ã³ã¿é 96 åã®ãµã¤ãº(byte) */ 80 /* リンクポインタ配列のサイズ(byte) */ 97 81 #define DEF_ECN_FBS_LNK_LEN (ECHONET_MEMPOOL_BLOCK_SIZE - DEF_ECN_EDT_HDR_LEN - DEF_ECN_FBS_LIB_HDR_LEN - DEF_ECN_FBS_FST_DAT_LEN) 98 82 99 /* åºå®é·ãããã¡æ大ãµã¤ãº*/83 /* 固定長バッファ最大サイズ */ 100 84 #define DEF_ECN_FBS_BUF_MAXLEN ((DEF_ECN_FBS_LNK_LEN / sizeof(void *)) * ECHONET_MEMPOOL_BLOCK_SIZE + DEF_ECN_FBS_FST_DAT_LEN) 101 85 102 /* åè¦ç´ ãããã¡ã®ãµã¤ãº*/86 /* 子要素バッファのサイズ */ 103 87 #define DEF_ECN_FBS_SUB_BUF_LEN ECHONET_MEMPOOL_BLOCK_SIZE 104 88 105 /* é»æã®ç¨®å¥(å 106 容ã¯ä»®) */ 89 /* 電文の種別(内容は仮) */ 107 90 typedef enum 108 91 { 109 ECN_FBS_TYPE_BLANK = 0, /* æªä½¿ç¨ã¹ããªã¼ã */ 110 ECN_FBS_TYPE_INTERNAL = 1, /* å 111 é¨ã¡ãã»ã¼ã¸ */ 112 ECN_FBS_TYPE_ECHONET = 2 /* ECHONETé»æ */ 92 ECN_FBS_TYPE_BLANK = 0, /* 未使用ストリーム */ 93 ECN_FBS_TYPE_INTERNAL = 1, /* 内部メッセージ */ 94 ECN_FBS_TYPE_ECHONET = 2 /* ECHONET電文 */ 113 95 } TA_ECN_MSG_TYPE; 114 96 115 /* ãªã³ã¯ãã¤ã³ã¿é 116 åã«åæããããåè¦ç´ ãããã¡ */ 97 /* リンクポインタ配列に列挙される、子要素バッファ */ 117 98 typedef struct 118 99 { … … 120 101 } T_ECN_SUB_BLK; 121 102 122 /* ãªã³ã¯ãã¤ã³ã¿é 123 å */ 103 /* リンクポインタ配列 */ 124 104 typedef union 125 105 { … … 128 108 } T_ECN_FBS_LNK; 129 109 130 /* 管çé å(64byte - sizeof(T_MSG)) */110 /* 管理領域(64byte - sizeof(T_MSG)) */ 131 111 typedef struct 132 112 { 133 uint16_t length; /* ã¡ãã»ã¼ã¸é·*/134 uint16_t type; /* ã¡ãã»ã¼ã¸ã¿ã¤ã*/113 uint16_t length; /* メッセージ長 */ 114 uint16_t type; /* メッセージタイプ */ 135 115 union{ 136 ECN_ENOD_ID id; /* éä¿¡å 137 ãã¼ãIDï¼ECHONETé»æï¼ */ 138 ID dtqid; /* éä¿¡å 139 ã¡ã¼ã«ããã¯ã¹IDï¼å 140 é¨ã¡ãã»ã¼ã¸ï¼ */ 116 ECN_ENOD_ID id; /* 送信元ノードID(ECHONET電文) */ 117 ID dtqid; /* 送信元メールボックスID(内部メッセージ) */ 141 118 }sender; 142 119 union{ 143 ECN_ENOD_ID id; /* éä¿¡å 144 ãã¼ãIDï¼ECHONETé»æï¼ */ 145 ID dtqid; /* éä¿¡å 146 ã¡ã¼ã«ããã¯ã¹IDï¼å 147 é¨ã¡ãã»ã¼ã¸ï¼ */ 120 ECN_ENOD_ID id; /* 送信先ノードID(ECHONET電文) */ 121 ID dtqid; /* 送信先メールボックスID(内部メッセージ) */ 148 122 }target; 149 123 union{ 150 ECN_ENOD_ID id; /* è¿ä¿¡å 151 ãã¼ãIDï¼ECHONETé»æï¼ */ 152 ID dtqid; /* è¿ä¿¡å 153 ã¡ã¼ã«ããã¯ã¹IDï¼å 154 é¨ã¡ãã»ã¼ã¸ï¼ */ 124 ECN_ENOD_ID id; /* 返信先ノードID(ECHONET電文) */ 125 ID dtqid; /* 返信先メールボックスID(内部メッセージ) */ 155 126 }reply; 156 127 157 int rd; /* èªã¿åããããæ 158 å ± */ 159 int wr; /* æ¸ãè¾¼ã¿ãããæ 160 å ± */ 128 int rd; /* 読み取りヘッド情報 */ 129 int wr; /* 書き込みヘッド情報 */ 161 130 } T_ECN_FBS_HDR; 162 131 163 /* 管çé åãå«ããããã¯ã®æ§é*/132 /* 管理領域を含むブロックの構造 */ 164 133 typedef struct 165 134 { 166 135 uint8_t _msg[DEF_ECN_EDT_HDR_LEN]; /* T_MSG */ 167 T_ECN_FBS_HDR hdr; /* 管çé å64byte - sizeof(T_MSG) */136 T_ECN_FBS_HDR hdr; /* 管理領域 64byte - sizeof(T_MSG) */ 168 137 uint8_t _gap[DEF_ECN_FBS_LIB_HDR_LEN - sizeof(T_ECN_FBS_HDR)]; 169 T_ECN_FBS_LNK lnk; /* ãªã³ã¯ãã¤ã³ã¿é 170 å 128byte */ 138 T_ECN_FBS_LNK lnk; /* リンクポインタ配列 128byte */ 171 139 uint8_t payload[DEF_ECN_FBS_FST_DAT_LEN]; 172 140 } T_ECN_FST_BLK; … … 178 146 } ECN_FBS_ID; 179 147 180 /* ã¡ãã»ã¼ã¸ãã¥ã¼*/148 /* メッセージキュー */ 181 149 typedef struct ecn_fbs_queue 182 150 { 183 T_ECN_FST_BLK *pk_head; /* å 184 é ã®ã¡ãã»ã¼ã¸ */ 185 T_ECN_FST_BLK *pk_last; /* æ«å°¾ã®ã¡ãã»ã¼ã¸ */ 151 T_ECN_FST_BLK *pk_head; /* 先頭のメッセージ */ 152 T_ECN_FST_BLK *pk_last; /* 末尾のメッセージ */ 186 153 } T_ECN_FBS_QUEUE; 187 154 188 /* ã¡ã¢ãªãããã¯åå¾ ok:ãã¤ã³ã¿NG:NULL */155 /* メモリブロック取得 ok:ポインタ NG:NULL */ 189 156 void *_ecn_fbs_dtq_get(ECN_FBS_SIZE_T fa_req_size); 190 157 191 /* ã¡ã¢ãªãããã¯è§£æ¾ ok:0 NG:é0 */158 /* メモリブロック解放 ok:0 NG:非0 */ 192 159 ER _ecn_fbs_dtq_rel(void *p); 193 160 194 161 /* 195 * é å確ä¿196 * å¼æ°197 * ECN_FBS_SIZE_T fa_req_size è¦æ±ãããã¡ãµã¤ãº(byte)162 * 領域確保 163 * 引数 164 * ECN_FBS_SIZE_T fa_req_size 要求バッファサイズ(byte) 198 165 * max: DEF_ECN_FBS_BUF_MAXLEN 199 * ECN_FBS_ID *fp_id 確ä¿ããFBS-IDã®æ ¼ç´å 200 201 * æ»ãå¤ 202 * ER 0:ok é0:NG 166 * ECN_FBS_ID *fp_id 確保したFBS-IDの格納先 167 * 戻り値 168 * ER 0:ok 非0:NG 203 169 */ 204 170 ER _ecn_fbs_cre(ECN_FBS_SIZE_T fa_req_size, ECN_FBS_ID *fp_id); 205 171 206 172 /* 207 * é å解æ¾208 * å¼æ°209 * ecn_fbs_id å 確ä¿ããFBS-ID210 * æ»ãå¤211 * ER 0:ok, é0:NG173 * 領域解放 174 * 引数 175 * ecn_fbs_id型 確保したFBS-ID 176 * 戻り値 177 * ER 0:ok, 非0:NG 212 178 */ 213 179 ER _ecn_fbs_del(ECN_FBS_ID fa_id); 214 180 215 181 /* 216 * ä¿æãã¼ã¿ã®æç¡217 * å¼æ°218 * ecn_fbs_id å 確ä¿ããFBS-ID219 * æ»ãå¤220 * bool_t 0: ç¡ã, 1:ãã182 * 保持データの有無 183 * 引数 184 * ecn_fbs_id型 確保したFBS-ID 185 * 戻り値 186 * bool_t 0:無し, 1:あり 221 187 */ 222 188 bool_t _ecn_fbs_exist_data(ECN_FBS_ID fa_id); 223 189 224 190 /* 225 * ä¿æãã¼ã¿é·ã®åå¾226 * å¼æ°227 * ecn_fbs_id å 確ä¿ããFBS-ID228 * æ»ãå¤229 * ECN_FBS_SSIZE_T ä¿æãã¦ãããã¼ã¿ã®é·ã(byte) -1:NG191 * 保持データ長の取得 192 * 引数 193 * ecn_fbs_id型 確保したFBS-ID 194 * 戻り値 195 * ECN_FBS_SSIZE_T 保持しているデータの長さ(byte) -1:NG 230 196 */ 231 197 ECN_FBS_SSIZE_T _ecn_fbs_get_datalen(ECN_FBS_ID fa_id); 232 198 233 199 /* 234 * èªã¿åãã«ã¼ã½ã«ã®ä½ç½®åå¾ 235 * å¼æ° 236 * ecn_fbs_idå 確ä¿ããFBS-ID 237 * æ»ãå¤ 238 * ECN_FBS_SIZE_T å 239 é ããã®çµ¶å¯¾ä½ç½® -1:NG 200 * 読み取りカーソルの位置取得 201 * 引数 202 * ecn_fbs_id型 確保したFBS-ID 203 * 戻り値 204 * ECN_FBS_SIZE_T 先頭からの絶対位置 -1:NG 240 205 */ 241 206 ECN_FBS_SSIZE_T _ecn_fbs_get_rpos(ECN_FBS_ID fa_id); 242 207 243 208 /* 244 * èªã¿åãã«ã¼ã½ã«ã®ä½ç½®è¨å® 245 * å¼æ° 246 * ecn_fbs_idå 確ä¿ããFBS-ID 247 * ECN_FBS_SIZE_T fa_pos è¨å®ããä½ç½®(å 248 é ããã®çµ¶å¯¾ä½ç½®) 249 * æ»ãå¤ 250 * ER 0:ok, é0:NG 209 * 読み取りカーソルの位置設定 210 * 引数 211 * ecn_fbs_id型 確保したFBS-ID 212 * ECN_FBS_SIZE_T fa_pos 設定する位置(先頭からの絶対位置) 213 * 戻り値 214 * ER 0:ok, 非0:NG 251 215 */ 252 216 ER _ecn_fbs_set_rpos(ECN_FBS_ID fa_id, ECN_FBS_SSIZE_T fa_pos); 253 217 254 218 /* 255 * èªã¿åãã«ã¼ã½ã«ã®ä½ç½®ç§»å256 * å¼æ°257 * ecn_fbs_id å 確ä¿ããFBS-ID258 * ECN_FBS_SIZE_T fa_seek 移åé(ç¾ç¶ãåé²ã®ã¿)259 * æ»ãå¤260 * ER 0:ok, é0:NG219 * 読み取りカーソルの位置移動 220 * 引数 221 * ecn_fbs_id型 確保したFBS-ID 222 * ECN_FBS_SIZE_T fa_seek 移動量(現状、前進のみ) 223 * 戻り値 224 * ER 0:ok, 非0:NG 261 225 */ 262 226 ER _ecn_fbs_seek_rpos(ECN_FBS_ID fa_id, ECN_FBS_SSIZE_T fa_seek); 263 227 264 228 /* 265 * ä»»ææå®ä½ç½®ã®1byteèªã¿åã229 * 任意指定位置の1byte読み取り 266 230 */ 267 231 int _ecn_fbs_peek(ECN_FBS_ID fa_id, ECN_FBS_SSIZE_T fa_seek); 268 232 269 233 /* 270 * ä»»ææå®ä½ç½®ã®1byteæ¸ãè¾¼ã¿234 * 任意指定位置の1byte書き込み 271 235 */ 272 236 ER _ecn_fbs_poke(ECN_FBS_ID fa_id, ECN_FBS_SSIZE_T fa_seek, int fa_val); 273 237 274 238 /* 275 * ãã¼ã¿è¿½å276 * å¼æ°277 * ecn_fbs_id å 確ä¿ããFBS-ID278 * const void * fa_dat 追å ãããã¼ã¿279 * ECN_FBS_SSIZE_T fa_len 追å ããé·ã(byte)280 * æ»ãå¤281 * ER 0:ok, é0:NG239 * データ追加 240 * 引数 241 * ecn_fbs_id型 確保したFBS-ID 242 * const void * fa_dat 追加するデータ 243 * ECN_FBS_SSIZE_T fa_len 追加する長さ(byte) 244 * 戻り値 245 * ER 0:ok, 非0:NG 282 246 */ 283 247 ER _ecn_fbs_add_data(ECN_FBS_ID fa_id, const void *fa_dat, ECN_FBS_SSIZE_T fa_len); 284 248 285 249 /* 286 * ãã¼ã¿è¿½å (é åãèªåçã«æ¡å¼µãã)287 * å¼æ°288 * ecn_fbs_id å 確ä¿ããFBS-ID289 * const void * fa_dat 追å ãããã¼ã¿290 * ECN_FBS_SSIZE_T fa_len 追å ããé·ã(byte)291 * æ»ãå¤292 * ER 0:ok, é0:NG250 * データ追加(領域を自動的に拡張する) 251 * 引数 252 * ecn_fbs_id型 確保したFBS-ID 253 * const void * fa_dat 追加するデータ 254 * ECN_FBS_SSIZE_T fa_len 追加する長さ(byte) 255 * 戻り値 256 * ER 0:ok, 非0:NG 293 257 */ 294 258 ER _ecn_fbs_add_data_ex(ECN_FBS_ID fa_id, const void *fa_dat, ECN_FBS_SSIZE_T fa_len); 295 259 296 260 /* 297 * ãã¼ã¿åå¾298 * å¼æ°299 * ecn_fbs_id å 確ä¿ããFBS-ID300 * void * fa_buf åå¾ãããããã¡301 * ECN_FBS_SSIZE_T fa_maxlen åå¾ããé·ã(byte)302 * ECN_FBS_SSIZE_T *p_len åå¾ããé·ã(byte)303 * æ»ãå¤304 * ER 0:ok, é0:NG261 * データ取得 262 * 引数 263 * ecn_fbs_id型 確保したFBS-ID 264 * void * fa_buf 取得するバッファ 265 * ECN_FBS_SSIZE_T fa_maxlen 取得する長さ(byte) 266 * ECN_FBS_SSIZE_T *p_len 取得した長さ(byte) 267 * 戻り値 268 * ER 0:ok, 非0:NG 305 269 */ 306 270 ER _ecn_fbs_get_data(ECN_FBS_ID fa_id, void *fa_buf, ECN_FBS_SSIZE_T fa_maxlen,
Note:
See TracChangeset
for help on using the changeset viewer.