|
Document of c-modernization-kit (porter) 1.0.0
|
詳細な API 仕様は Doxygen 生成ドキュメントを参照してください。
| 戻り値 | 定数 | 意味 |
|---|---|---|
| 0 | POTR_SUCCESS | 送信キューへの積み込み成功 |
| 1 | POTR_ERROR_DISCONNECTED | TCP の全 path が切断中(POTR_TYPE_TCP / POTR_TYPE_TCP_BIDIR のみ)。全 path が再接続されるまで送信できない |
| -1 | POTR_ERROR | その他のエラー(NULL ハンドルなど) |
POTR_ERROR_DISCONNECTED は TCP 通信種別専用です。UDP 通信種別では返りません。
ヘッダ定義と引数条件の正本は prod/porter/include/porter.h および Doxygen 出力を参照してください。
各 API のスレッドセーフ性を以下に示します。
| API | スレッドセーフ | 備考 |
|---|---|---|
| potrOpenService() | はい | 複数スレッドから並行してハンドルを取得可(低レベル API) |
| potrOpenServiceFromConfig() | はい | 複数スレッドから並行してハンドルを取得可(高レベル API) |
| potrSend() | いいえ | 同一ハンドルへの並行呼び出し不可 |
| potrCloseService() | いいえ | 他の API と同一ハンドルへ並行して呼ばないこと |
| potrDisconnectPeer() | はい(条件付き) | コールバック内からは呼ばないこと(デッドロック) |
| potrGetServiceType() | はい | グローバル状態なし |
| potrLogConfig() | はい | 内部でミューテックスを使用 |
| API | 入力 | 用途 |
|---|---|---|
| potrOpenService() | PotrGlobalConfig + PotrServiceDef 構造体 | テストやプログラム的な設定構築。設定ファイル不要 |
| potrOpenServiceFromConfig() | 設定ファイルパス + service_id | 設定ファイルベースの既存フロー。後方互換 |
potrOpenServiceFromConfig() の実装は設定ファイルを解析して構造体を構築し、potrOpenService() に委譲します。