

#include <nitroWiFi/nhttp.h>
typedef int (*NHTTPConnectionCallback)( NHTTPConnectionHandle handle, NHTTPConnectionEvent event, void* arg );
typedef enum {
NHTTP_EVENT_NONE,
NHTTP_EVENT_POST_SEND,
NHTTP_EVENT_BODY_RECV_FULL,
NHTTP_EVENT_BODY_RECV_DONE,
NHTTP_EVENT_COMPLETE,
NHTTP_CALLBACK_EVENT_MAX
} NHTTPConnectionEvent;
typedef struct _NHTTPPostSendArg {
const char* label;
char* buf;
u32 size;
u32 offset;
} NHTTPPostSendArg;
typedef struct _NHTTPBodyBufArg {
char* buf;
u32 size;
u32 offset;
} NHTTPBodyBufArg;
| handle | イベント通知対象の接続ハンドル |
| event | イベント種別 |
| arg | イベント毎に異なるコールバック情報構造体へのポインタ |
NHTTP_CreateConnection()で指定する、通信中のイベント通知コールバック関数です。
アプリケーションは、通知された各々のイベント種別にしたがって引数のargを解釈し、
コールバック内で適切な処理を行うことができます。
コールバック関数にNULLを指定して通知を受け取らない場合や、
コールバック関数内で何も処理を行わない場合には、
ライブラリが判断して適切なデフォルト処理を行います。
各イベント種別の意味は以下の通りです。
| イベント種別 | argの指す構造体 | 意味 | デフォルトの処理 |
| NHTTP_EVENT_POST_SEND | NHTTPPostSendArg | データが未確定なPOSTデータを送信するタイミングに達したことを通知します。 | 未確定なPOSTデータを準備できないまま、通信は失敗します。 |
| NHTTP_EVENT_BODY_RECV_FULL | NHTTPBodyBufArg | 通信中にボディ受信バッファが満了したことを通知します。 | ボディ受信バッファが満了したまま、以降の内容は読み捨てられます。 |
| NHTTP_EVENT_BODY_RECV_DONE | NHTTPBodyBufArg | 通信処理、またはそのキャンセル処理が完了したことを通知します。 | このイベントに関してライブラリ側で行う特別な処理は何もありません。 |
| NHTTP_EVENT_COMPLETE | NULL | 通信処理、またはそのキャンセル処理が完了したことを通知します。 | |
| NHTTP_EVENT_NONE NHTTP_CALLBACK_EVENT_MAX |
ライブラリ内部の利便性のために定義されており、このイベントが通知されることはありません。 | ||
2006/10/30 タイトルを修正。
2006/10/14 初版