Ignore:
Timestamp:
Jun 2, 2015, 3:39:53 PM (9 years ago)
Author:
nmir-saito
Message:

ファイルの mime-type 変更

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ssp_qb_r5f100le_cs/trunk/include/t_stddef.h

    • Property svn:mime-type set to text/plain; charset=shift_jis
    r93 r95  
    1010 *              Nagoya Municipal Industrial Research Institute, JAPAN
    1111 *
    12  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    13  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    14  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    15  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    16  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    17  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    18  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    19  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    20 ƒƒ“ƒgi—˜—p
    21  *      ŽÒƒ}ƒjƒ
    22 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    23  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    24  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    25  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    26  *      ‚ƁD
    27  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    28 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    29 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    30  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    31  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    32  *        •ñ‚·‚邱‚ƁD
    33  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    34  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    35  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    36  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    37  *      –Ɛӂ·‚邱‚ƁD
    38  *
    39  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    40  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    41  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    42  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    43  *  ‚̐ӔC‚𕉂í‚È‚¢D
     12 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     13 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     14 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     15 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     16 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     17 *      スコード中に含まれていること.
     18 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     19 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     20 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     21 *      の無保証規定を掲載すること.
     22 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     23 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     24 *      と.
     25 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     26 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     27 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     28 *        報告すること.
     29 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     30 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     31 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     32 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     33 *      免責すること.
     34 *
     35 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     36 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     37 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     38 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     39 *  の責任を負わない.
    4440 *
    4541 *  @(#) $Id: t_stddef.h 1513 2009-04-22 07:35:20Z ertl-hiro $
     
    4743
    4844/*
    49  *              TOPPERS‹¤’ʃwƒbƒ_ƒtƒ@ƒCƒ‹
    50  *
    51  *  TOPPERSŠÖ˜A‚Ì‚·‚ׂẴ\[ƒXƒtƒ@ƒCƒ‹‚ŃCƒ“ƒNƒ‹[ƒh‚·‚ׂ«ƒwƒbƒ_ƒtƒ@ƒC
    52  *  ƒ‹DŠeŽí‚̃J[ƒlƒ‹‚âƒ\ƒtƒgƒEƒFƒA•”•i‚Å‹¤’Ê‚É—p‚¢‚邱‚Æ‚ð‘z’肵‚Ä‚¢
    53  *  ‚éDTOPPERS‚ÌŠeŽí‚̃J[ƒlƒ‹‚âƒ\ƒtƒgƒEƒFƒA•”•i‚Å‹¤’Ê‚É—p‚¢‚éƒf[ƒ^Œ^C
    54  *  ’萔Cƒ}ƒNƒ‚Ì’è‹`‚È‚Ç‚ðŠÜ‚ށD
    55  *
    56  *  ƒAƒZƒ“ƒuƒŠŒ¾Œê‚̃\[ƒXƒtƒ@ƒCƒ‹‚©‚炱‚̃tƒ@ƒCƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh‚·‚鎞
    57  *  ‚́CTOPPERS_MACRO_ONLY‚ð’è‹`‚µ‚Ä‚¨‚­D‚±‚ê‚É‚æ‚èCƒ}ƒNƒ’è‹`ˆÈŠO‚ð
    58  *  œ‚­‚悤‚É‚È‚Á‚Ä‚¢‚éD
    59  *
    60  *  ‚±‚̃tƒ@ƒCƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh‚·‚é‘O‚ɃCƒ“ƒNƒ‹[ƒh‚µ‚Ä‚¨‚­‚ׂ«ƒtƒ@ƒCƒ‹
    61  *  ‚Í‚È‚¢D
     45 *              TOPPERS共通ヘッダファイル
     46 *
     47 *  TOPPERS関連のすべてのソースファイルでインクルードすべきヘッダファイ
     48 *  ル.各種のカーネルやソフトウェア部品で共通に用いることを想定してい
     49 *  る.TOPPERSの各種のカーネルやソフトウェア部品で共通に用いるデータ型,
     50 *  定数,マクロの定義などを含む.
     51 *
     52 *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
     53 *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
     54 *  除くようになっている.
     55 *
     56 *  このファイルをインクルードする前にインクルードしておくべきファイル
     57 *  はない.
    6258 */
    6359
     
    7066
    7167/*
    72  *  ƒ^[ƒQƒbƒgˆË‘¶•”
     68 *  ターゲット依存部
    7369 */
    7470#include "target_stddef.h"
    7571
    7672/*
    77  *  CŒ¾Œê/EC++‚Åthrow()‚ɑΏˆ‚·‚邽‚ß‚Ì’è‹`
     73 *  C言語/EC++でthrow()に対処するための定義
    7874 */
    7975#if !defined(__cplusplus) || defined(__embedded_cplusplus)
     
    8480
    8581/*
    86  *  ƒ^[ƒQƒbƒgˆË‘¶‚̃f[ƒ^Œ^‚̃}ƒNƒ‚̃fƒtƒHƒ‹ƒg’è‹`
     82 *  ターゲット依存のデータ型のマクロのデフォルト定義
    8783 */
    8884#ifndef TOPPERS_bool
    89 #define TOPPERS_bool    int                             /* ƒu[ƒ‹Œ^ */
     85#define TOPPERS_bool    int                             /* ブール型 */
    9086#endif /* TOPPERS_bool */
    9187
    9288#ifndef TOPPERS_size
    93 #define TOPPERS_size    uintptr_t               /* ƒTƒCƒYŒ^ */
     89#define TOPPERS_size    uintptr_t               /* サイズ型 */
    9490#endif /* TOPPERS_size */
    9591
     
    9793struct TOPPERS_dummy_t { int TOPPERS_dummy_field; };
    9894typedef void                    (*TOPPERS_fp_t)(struct TOPPERS_dummy_t);
    99 #define TOPPERS_fp              TOPPERS_fp_t    /* ƒvƒƒOƒ‰ƒ€‚Ì‹N“®”Ô’n */
     95#define TOPPERS_fp              TOPPERS_fp_t    /* プログラムの起動番地 */
    10096#endif /* TOPPERS_fp */
    10197
    10298/*
    103  *  ‹¤’ʃf[ƒ^Œ^
    104  */
    105 typedef TOPPERS_bool    bool_t;         /* ^‹U’l */
    106 
    107 typedef signed int              int_t;          /* Ž©‘R‚ȃTƒCƒY‚Ì•„†•t‚«®” */
    108 typedef unsigned int    uint_t;         /* Ž©‘R‚ȃTƒCƒY‚Ì•„†–³‚µ®” */
    109 
    110 typedef signed long             long_t;         /* ’·‚߂̃TƒCƒY‚Ì•„†•t‚«®” */
    111 typedef unsigned long   ulong_t;        /* ’·‚߂̃TƒCƒY‚Ì•„†–³‚µ®” */
    112 
    113 typedef int_t                   FN;                     /* ‹@”\ƒR[ƒh */
    114 typedef int_t                   ER;                     /* ƒGƒ‰[ƒR[ƒh */
    115 typedef int_t                   ID;                     /* ƒIƒuƒWƒFƒNƒg‚ÌID”ԍ† */
    116 typedef uint_t                  ATR;            /* ƒIƒuƒWƒFƒNƒg‚Ì‘®« */
    117 typedef uint_t                  STAT;           /* ƒIƒuƒWƒFƒNƒg‚̏ó‘Ô */
    118 typedef uint_t                  MODE;           /* ƒT[ƒrƒXƒR[ƒ‹‚Ì“®ìƒ‚[ƒh */
    119 typedef int_t                   PRI;            /* —Dæ“x */
    120 typedef TOPPERS_size    SIZE;           /* ƒƒ‚ƒŠ—̈æ‚̃TƒCƒY */
    121 
    122 typedef int_t                   TMO;            /* ƒ^ƒCƒ€ƒAƒEƒgŽw’è */
    123 typedef uint_t                  RELTIM;         /* ‘Š‘ÎŽžŠÔ */
    124 typedef ulong_t                 SYSTIM;         /* ƒVƒXƒeƒ€Žž */
    125 typedef ulong_t                 SYSUTM;         /* «”\•]‰¿—pƒVƒXƒeƒ€Žž */
    126 
    127 typedef TOPPERS_fp              FP;                     /* ƒvƒƒOƒ‰ƒ€‚Ì‹N“®”Ô’n */
    128 
    129 typedef int_t                   ER_BOOL;        /* ƒGƒ‰[ƒR[ƒh‚Ü‚½‚͐^‹U’l */
    130 typedef int_t                   ER_ID;          /* ƒGƒ‰[ƒR[ƒh‚Ü‚½‚ÍID”ԍ† */
    131 typedef int_t                   ER_UINT;        /* ƒGƒ‰[ƒR[ƒh‚Ü‚½‚Í•„†–³‚µ®” */
    132 
    133 typedef uint32_t                ACPTN;          /* ƒAƒNƒZƒX‹–‰Âƒpƒ^[ƒ“ */
    134 typedef struct acvct {                          /* ƒAƒNƒZƒX‹–‰ÂƒxƒNƒ^ */
    135         ACPTN           acptn1;                         /* ’ʏ푀ì1‚̃AƒNƒZƒX‹–‰Âƒpƒ^[ƒ“ */
    136         ACPTN           acptn2;                         /* ’ʏ푀ì2‚̃AƒNƒZƒX‹–‰Âƒpƒ^[ƒ“ */
    137         ACPTN           acptn3;                         /* ŠÇ—‘€ì‚̃AƒNƒZƒX‹–‰Âƒpƒ^[ƒ“ */
    138         ACPTN           acptn4;                         /* ŽQÆ‘€ì‚̃AƒNƒZƒX‹–‰Âƒpƒ^[ƒ“ */
     99 *  共通データ型
     100 */
     101typedef TOPPERS_bool    bool_t;         /* 真偽値 */
     102
     103typedef signed int              int_t;          /* 自然なサイズの符号付き整数 */
     104typedef unsigned int    uint_t;         /* 自然なサイズの符号無し整数 */
     105
     106typedef signed long             long_t;         /* 長めのサイズの符号付き整数 */
     107typedef unsigned long   ulong_t;        /* 長めのサイズの符号無し整数 */
     108
     109typedef int_t                   FN;                     /* 機能コード */
     110typedef int_t                   ER;                     /* エラーコード */
     111typedef int_t                   ID;                     /* オブジェクトのID番号 */
     112typedef uint_t                  ATR;            /* オブジェクトの属性 */
     113typedef uint_t                  STAT;           /* オブジェクトの状態 */
     114typedef uint_t                  MODE;           /* サービスコールの動作モード */
     115typedef int_t                   PRI;            /* 優先度 */
     116typedef TOPPERS_size    SIZE;           /* メモリ領域のサイズ */
     117
     118typedef int_t                   TMO;            /* タイムアウト指定 */
     119typedef uint_t                  RELTIM;         /* 相対時間 */
     120typedef ulong_t                 SYSTIM;         /* システム時刻 */
     121typedef ulong_t                 SYSUTM;         /* 性能評価用システム時刻 */
     122
     123typedef TOPPERS_fp              FP;                     /* プログラムの起動番地 */
     124
     125typedef int_t                   ER_BOOL;        /* エラーコードまたは真偽値 */
     126typedef int_t                   ER_ID;          /* エラーコードまたはID番号 */
     127typedef int_t                   ER_UINT;        /* エラーコードまたは符号無し整数 */
     128
     129typedef uint32_t                ACPTN;          /* アクセス許可パターン */
     130typedef struct acvct {                          /* アクセス許可ベクタ */
     131        ACPTN           acptn1;                         /* 通常操作1のアクセス許可パターン */
     132        ACPTN           acptn2;                         /* 通常操作2のアクセス許可パターン */
     133        ACPTN           acptn3;                         /* 管理操作のアクセス許可パターン */
     134        ACPTN           acptn4;                         /* 参照操作のアクセス許可パターン */
    139135} ACVCT;
    140136
     
    142138
    143139/*
    144  *  ®”’萔‚ðì‚éƒ}ƒNƒ
     140 *  整数定数を作るマクロ
    145141 */
    146142#ifndef UINT_C
    147 #define UINT_C(val)             (val ## U)              /* uint_tŒ^‚̒萔‚ðì‚éƒ}ƒNƒ */
     143#define UINT_C(val)             (val ## U)              /* uint_t型の定数を作るマクロ */
    148144#endif /* UINT_C */
    149145
    150146#ifndef ULONG_C
    151 #define ULONG_C(val)    (val ## UL)             /* ulong_tŒ^‚̒萔‚ðì‚éƒ}ƒNƒ */
     147#define ULONG_C(val)    (val ## UL)             /* ulong_t型の定数を作るマクロ */
    152148#endif /* ULONG_C */
    153149
    154150/*
    155  *  ˆê”ʒ萔
     151 *  一般定数
    156152 */
    157153#ifndef NULL
    158 #define NULL            0                       /* –³Œøƒ|ƒCƒ“ƒ^ */
     154#define NULL            0                       /* 無効ポインタ */
    159155#endif /* NULL */
    160156
    161157#ifndef true
    162 #define true            1                       /* ^ */
     158#define true            1                       /* */
    163159#endif /* true */
    164160
    165161#ifndef false
    166 #define false           0                       /* ‹U */
     162#define false           0                       /* */
    167163#endif /* false */
    168164
    169 #define E_OK            0                       /* ³íI—¹ */
    170 
    171 /*
    172  *  ƒƒCƒ“ƒGƒ‰[ƒR[ƒh
    173  */
    174 #define E_SYS           (-5)            /* ƒVƒXƒeƒ€ƒGƒ‰[ */
    175 #define E_NOSPT         (-9)            /* –¢ƒTƒ|[ƒg‹@”\ */
    176 #define E_RSFN          (-10)           /* —\–ñ‹@”\ƒR[ƒh */
    177 #define E_RSATR         (-11)           /* —\–ñ‘®« */
    178 #define E_PAR           (-17)           /* ƒpƒ‰ƒ[ƒ^ƒGƒ‰[ */
    179 #define E_ID            (-18)           /* •s³ID”ԍ† */
    180 #define E_CTX           (-25)           /* ƒRƒ“ƒeƒLƒXƒgƒGƒ‰[ */
    181 #define E_MACV          (-26)           /* ƒƒ‚ƒŠƒAƒNƒZƒXˆá”½ */
    182 #define E_OACV          (-27)           /* ƒIƒuƒWƒFƒNƒgƒAƒNƒZƒXˆá”½ */
    183 #define E_ILUSE         (-28)           /* ƒT[ƒrƒXƒR[ƒ‹•s³Žg—p */
    184 #define E_NOMEM         (-33)           /* ƒƒ‚ƒŠ•s‘« */
    185 #define E_NOID          (-34)           /* ID”ԍ†•s‘« */
    186 #define E_NORES         (-35)           /* Ž‘Œ¹•s‘« */
    187 #define E_OBJ           (-41)           /* ƒIƒuƒWƒFƒNƒgó‘ÔƒGƒ‰[ */
    188 #define E_NOEXS         (-42)           /* ƒIƒuƒWƒFƒNƒg–¢¶¬ */
    189 #define E_QOVR          (-43)           /* ƒLƒ
    190 [ƒCƒ“ƒOƒI[ƒo[ƒtƒ[ */
    191 #define E_RLWAI         (-49)           /* ‘Ò‚¿ó‘Ô‚Ì‹­§‰ðœ */
    192 #define E_TMOUT         (-50)           /* ƒ|[ƒŠƒ“ƒOŽ¸”s‚Ü‚½‚̓^ƒCƒ€ƒAƒEƒg */
    193 #define E_DLT           (-51)           /* ‘Ò‚¿ƒIƒuƒWƒFƒNƒg‚̍폜 */
    194 #define E_CLS           (-52)           /* ‘Ò‚¿ƒIƒuƒWƒFƒNƒg‚̏ó‘ԕω» */
    195 #define E_WBLK          (-57)           /* ƒmƒ“ƒuƒƒbƒLƒ“ƒOŽó•t‚¯ */
    196 #define E_BOVR          (-58)           /* ƒoƒbƒtƒ@ƒI[ƒo[ƒtƒ[ */
    197 
    198 /*
    199  *  ƒIƒuƒWƒFƒNƒg‘®«
    200  */
    201 #define TA_NULL         UINT_C(0)       /* ƒIƒuƒWƒFƒNƒg‘®«‚ðŽw’肵‚È‚¢ */
    202 
    203 /*
    204  *  ƒ^ƒCƒ€ƒAƒEƒgŽw’è
    205  */
    206 #define TMO_POL         0                       /* ƒ|[ƒŠƒ“ƒO */
    207 #define TMO_FEVR        (-1)            /* ‰i‹v‘Ò‚¿ */
    208 #define TMO_NBLK        (-2)            /* ƒmƒ“ƒuƒƒbƒLƒ“ƒO */
    209 
    210 /*
    211  *  ƒAƒNƒZƒX‹–‰Âƒpƒ^[ƒ“
    212  */
    213 #define TACP_KERNEL             (0U)    /* ƒJ[ƒlƒ‹ƒhƒƒCƒ“‚¾‚¯‚ɃAƒNƒZƒX‚ð‹–‰Â */
    214 #define TACP_SHARED             (~0U)   /* ‚·‚ׂẴhƒƒCƒ“‚©‚çƒAƒNƒZƒX‚ð‹–‰Â */
    215 
    216 /*
    217  *  Œ^‚ÉŠÖ‚·‚éî•ñ‚ðŽæ‚èo‚·‚½‚߂̃}ƒNƒ
     165#define E_OK            0                       /* 正常終了 */
     166
     167/*
     168 *  メインエラーコード
     169 */
     170#define E_SYS           (-5)            /* システムエラー */
     171#define E_NOSPT         (-9)            /* 未サポート機能 */
     172#define E_RSFN          (-10)           /* 予約機能コード */
     173#define E_RSATR         (-11)           /* 予約属性 */
     174#define E_PAR           (-17)           /* パラメータエラー */
     175#define E_ID            (-18)           /* 不正ID番号 */
     176#define E_CTX           (-25)           /* コンテキストエラー */
     177#define E_MACV          (-26)           /* メモリアクセス違反 */
     178#define E_OACV          (-27)           /* オブジェクトアクセス違反 */
     179#define E_ILUSE         (-28)           /* サービスコール不正使用 */
     180#define E_NOMEM         (-33)           /* メモリ不足 */
     181#define E_NOID          (-34)           /* ID番号不足 */
     182#define E_NORES         (-35)           /* 資源不足 */
     183#define E_OBJ           (-41)           /* オブジェクト状態エラー */
     184#define E_NOEXS         (-42)           /* オブジェクト未生成 */
     185#define E_QOVR          (-43)           /* キューイングオーバーフロー */
     186#define E_RLWAI         (-49)           /* 待ち状態の強制解除 */
     187#define E_TMOUT         (-50)           /* ポーリング失敗またはタイムアウト */
     188#define E_DLT           (-51)           /* 待ちオブジェクトの削除 */
     189#define E_CLS           (-52)           /* 待ちオブジェクトの状態変化 */
     190#define E_WBLK          (-57)           /* ノンブロッキング受付け */
     191#define E_BOVR          (-58)           /* バッファオーバーフロー */
     192
     193/*
     194 *  オブジェクト属性
     195 */
     196#define TA_NULL         UINT_C(0)       /* オブジェクト属性を指定しない */
     197
     198/*
     199 *  タイムアウト指定
     200 */
     201#define TMO_POL         0                       /* ポーリング */
     202#define TMO_FEVR        (-1)            /* 永久待ち */
     203#define TMO_NBLK        (-2)            /* ノンブロッキング */
     204
     205/*
     206 *  アクセス許可パターン
     207 */
     208#define TACP_KERNEL             (0U)    /* カーネルドメインだけにアクセスを許可 */
     209#define TACP_SHARED             (~0U)   /* すべてのドメインからアクセスを許可 */
     210
     211/*
     212 *  型に関する情報を取り出すためのマクロ
    218213 */
    219214#ifndef offsetof
     
    225220#endif /* alignof */
    226221
    227 #ifndef ALIGN_TYPE                              /* ƒAƒ‰ƒCƒ“ƒƒ“ƒg‚̃`ƒFƒbƒN */
     222#ifndef ALIGN_TYPE                              /* アラインメントのチェック */
    228223#define ALIGN_TYPE(addr, type) \
    229224                                                ((((uintptr_t)(addr)) & (alignof(type) - 1)) == 0U)
     
    231226
    232227/*
    233  *  assertƒ}ƒNƒ
     228 *  assertマクロ
    234229 */
    235230#undef assert
     
    246241
    247242/*
    248  *  ƒGƒ‰[ƒR[ƒh¶¬E•ª‰ðƒ}ƒNƒ
    249  *
    250  *  ˆÈ‰º‚̃}ƒNƒ’è‹`‚́C•„†•t‚«®”‚ª2‚̕␔‚Å•\Œ»‚³‚ê‚Ä‚¨‚èC‰EƒVƒtƒg
    251  *  ‰‰ŽZŽqi>>j‚ªŽZpƒVƒtƒg‚³‚ê‚邱‚Æ‚ð‰¼’è‚µ‚Ä‚¢‚éD‚»‚¤‚Å‚È‚¢ŠJ”­ŠÂ
    252  *  ‹«‚ł́Ctarget_stddef.h‚Å‚±‚ê‚ç‚Ì’è‹`‚ðã‘‚«‚µ‚È‚¯‚ê‚΂Ȃç‚È‚¢D
    253  *
    254  *  MERCDƒ}ƒNƒ‚Ì’è‹`‚́CƒƒCƒ“ƒGƒ‰[ƒR[ƒh‚ª•‰‚Å‚ ‚邱‚Æ‚ð‰¼’è‚µ‚Ä‚¢‚éD
    255  *  ‚»‚¤‚Å‚È‚¢ê‡C2‚‚̒è‹`‚ªˆê’v‚µ‚È‚­‚È‚éD
     243 *  エラーコード生成・分解マクロ
     244 *
     245 *  以下のマクロ定義は,符号付き整数が2の補数で表現されており,右シフト
     246 *  演算子(>>)が算術シフトされることを仮定している.そうでない開発環
     247 *  境では,target_stddef.hでこれらの定義を上書きしなければならない.
     248 *
     249 *  MERCDマクロの定義は,メインエラーコードが負であることを仮定している.
     250 *  そうでない場合,2つの定義が一致しなくなる.
    256251 */
    257252#ifndef ERCD
     
    273268
    274269/*
    275  *  ‘Š‘ÎŽžŠÔiRELTIMj‚ÉŽw’è‚Å‚«‚éÅ‘å’l
     270 *  相対時間(RELTIM)に指定できる最大値
    276271 */
    277272#if UINT_MAX < LONG_MAX
Note: See TracChangeset for help on using the changeset viewer.