mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
WDSの更新
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1835 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
ec7f664403
commit
55dcc9029a
@ -41,7 +41,6 @@ typedef struct WDSWrapperWork
|
|||||||
{
|
{
|
||||||
u8 *stack; //!< WDSラッパーが使用するスタック
|
u8 *stack; //!< WDSラッパーが使用するスタック
|
||||||
OSThread thread; //!< WDSラッパーが使用するスレッド構造体
|
OSThread thread; //!< WDSラッパーが使用するスレッド構造体
|
||||||
OSMutex mutex; //!< WDSラッパーが使用するmutex
|
|
||||||
|
|
||||||
u8 *wdswork; //!< WDSが使用するワークエリア
|
u8 *wdswork; //!< WDSが使用するワークエリア
|
||||||
|
|
||||||
@ -57,6 +56,8 @@ typedef struct WDSWrapperWork
|
|||||||
BOOL restart; //!< 間欠スキャン再開フラグ
|
BOOL restart; //!< 間欠スキャン再開フラグ
|
||||||
|
|
||||||
OSDeliverArgInfo deliverinfo; //!< TWL用アプリ間引数ワークエリア
|
OSDeliverArgInfo deliverinfo; //!< TWL用アプリ間引数ワークエリア
|
||||||
|
|
||||||
|
BOOL callingback; //!< コールバック関数呼び出し中はTRUE
|
||||||
} WDSWrapperWork;
|
} WDSWrapperWork;
|
||||||
|
|
||||||
//-----------------------------------------------------
|
//-----------------------------------------------------
|
||||||
@ -71,6 +72,19 @@ static void WDS_WrapperInitialize_CB( void *arg );
|
|||||||
static void WDS_WrapperStartScan_CB( void *arg );
|
static void WDS_WrapperStartScan_CB( void *arg );
|
||||||
static void WDS_WrapperEndScan_CB(void *arg);
|
static void WDS_WrapperEndScan_CB(void *arg);
|
||||||
static void WDS_WrapperEnd_CB( void *arg );
|
static void WDS_WrapperEnd_CB( void *arg );
|
||||||
|
static void WDS_WrapperCallUserCallback( void *arg );
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------
|
||||||
|
/** ユーザー指定のコールバック関数を呼び出すユーティリティ関数
|
||||||
|
@param arg コールバック関数に与えるパラメータ
|
||||||
|
@return なし
|
||||||
|
*///------------------------------------------------------------------------------
|
||||||
|
static void WDS_WrapperCallUserCallback( void *arg )
|
||||||
|
{
|
||||||
|
g_wdswrapperwork->callingback = TRUE;
|
||||||
|
g_wdswrapperwork->initparam.callback( arg );
|
||||||
|
g_wdswrapperwork->callingback = FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------
|
||||||
/** アクセスポイント情報のデバッグ用表示関数
|
/** アクセスポイント情報のデバッグ用表示関数
|
||||||
@ -111,6 +125,10 @@ static void DumpWDSApInfo( WDSApInfo *apinfo )
|
|||||||
/** スキャン開始前ウェイトステート関数
|
/** スキャン開始前ウェイトステート関数
|
||||||
@param なし
|
@param なし
|
||||||
@return なし
|
@return なし
|
||||||
|
@note
|
||||||
|
@LI このステートに入っている場合、WMからのコールバックが発生する可能性はない
|
||||||
|
@LI IF関数からのフラグ変化がイレギュラーな存在としてあるが
|
||||||
|
@LI Mutexのロックを行わなくても、処理中のフラグ変化による動作異常はない
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
static void WDS_WrapperBeforeInitState( void )
|
static void WDS_WrapperBeforeInitState( void )
|
||||||
{
|
{
|
||||||
@ -181,6 +199,8 @@ static void WDS_WrapperInitState( void )
|
|||||||
@param arg 非同期処理の結果を格納するWMCallback型変数へのポインタ
|
@param arg 非同期処理の結果を格納するWMCallback型変数へのポインタ
|
||||||
@return なし
|
@return なし
|
||||||
@note
|
@note
|
||||||
|
@LI この関数が呼ばれる際のステートは常にWDSWRAPPER_STATE_WAITINIT
|
||||||
|
@LI 何の処理もメインスレッドは行っていない
|
||||||
@LI 処理成功時は自動的にスキャン開始ステートへ
|
@LI 処理成功時は自動的にスキャン開始ステートへ
|
||||||
@LI 処理失敗時は自動的にWDSラッパー解放ステートへ
|
@LI 処理失敗時は自動的にWDSラッパー解放ステートへ
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
@ -189,9 +209,6 @@ static void WDS_WrapperInitialize_CB( void *arg )
|
|||||||
WMCallback *callback = (WMCallback *)arg;
|
WMCallback *callback = (WMCallback *)arg;
|
||||||
WDSWrapperCallbackParam param;
|
WDSWrapperCallbackParam param;
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
#ifdef WDSWRAPPER_DEBUGPRINT
|
#ifdef WDSWRAPPER_DEBUGPRINT
|
||||||
OS_TPrintf("WDS_Initialize_CB\n");
|
OS_TPrintf("WDS_Initialize_CB\n");
|
||||||
#endif
|
#endif
|
||||||
@ -204,7 +221,7 @@ static void WDS_WrapperInitialize_CB( void *arg )
|
|||||||
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
|
|
||||||
// コールバック関数の呼び出し
|
// コールバック関数の呼び出し
|
||||||
g_wdswrapperwork->initparam.callback( ¶m );
|
WDS_WrapperCallUserCallback( ¶m );
|
||||||
|
|
||||||
// 返り値に基づいてステートを変更
|
// 返り値に基づいてステートを変更
|
||||||
if( callback->errcode != WM_ERRCODE_SUCCESS )
|
if( callback->errcode != WM_ERRCODE_SUCCESS )
|
||||||
@ -216,15 +233,14 @@ static void WDS_WrapperInitialize_CB( void *arg )
|
|||||||
// 連続スキャン開始時間の記録
|
// 連続スキャン開始時間の記録
|
||||||
g_wdswrapperwork->tickstart = OS_GetTick();
|
g_wdswrapperwork->tickstart = OS_GetTick();
|
||||||
}
|
}
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------
|
||||||
/** スキャン開始ステート関数
|
/** スキャン開始ステート関数
|
||||||
@param なし
|
@param なし
|
||||||
@return なし
|
@return なし
|
||||||
|
@note
|
||||||
|
@LI この関数が呼ばれる際は、WDSは初期化済みだがWDS_StartScan要因以外でコールバック関数は呼ばれない
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
static void WDS_WrapperScanState( void )
|
static void WDS_WrapperScanState( void )
|
||||||
{
|
{
|
||||||
@ -256,6 +272,9 @@ static void WDS_WrapperScanState( void )
|
|||||||
/** スキャン完了待ちステート関数
|
/** スキャン完了待ちステート関数
|
||||||
@param なし
|
@param なし
|
||||||
@return なし
|
@return なし
|
||||||
|
@note
|
||||||
|
@LI このステートの間は外部IFからのキャンセルを受け付ける
|
||||||
|
@LI この処理の中でフラグが変化しても、動作は結局同じなのでMutexロックはしない
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
static void WDS_WrapperWaitScanState( void )
|
static void WDS_WrapperWaitScanState( void )
|
||||||
{
|
{
|
||||||
@ -272,6 +291,7 @@ static void WDS_WrapperWaitScanState( void )
|
|||||||
@param arg 非同期処理の結果を格納するWMCallback型変数へのポインタ
|
@param arg 非同期処理の結果を格納するWMCallback型変数へのポインタ
|
||||||
@return なし
|
@return なし
|
||||||
@note
|
@note
|
||||||
|
@LI ユーザー中断が原因で、ステートがWDSWRAPPER_STATE_WAITSCANではない場合がある
|
||||||
@LI 処理成功時はスキャン時間に基づいてIDLEかスキャン前ウェイトステートへ
|
@LI 処理成功時はスキャン時間に基づいてIDLEかスキャン前ウェイトステートへ
|
||||||
@LI 処理失敗時はスキャン停止後WDSラッパー解放ステートへ
|
@LI 処理失敗時はスキャン停止後WDSラッパー解放ステートへ
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
@ -283,19 +303,19 @@ static void WDS_WrapperStartScan_CB( void *arg )
|
|||||||
#endif
|
#endif
|
||||||
WDSWrapperCallbackParam param;
|
WDSWrapperCallbackParam param;
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
#ifdef WDSWRAPPER_DEBUGPRINT
|
#ifdef WDSWRAPPER_DEBUGPRINT
|
||||||
OS_Printf("*** WDS_WrapperStartScan_CB\n");
|
OS_Printf("*** WDS_WrapperStartScan_CB\n");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// ライブラリがすでに解放済みである場合に備える
|
||||||
|
if( g_wdswrapperwork == NULL )
|
||||||
|
return;
|
||||||
|
|
||||||
// 外部からの停止等の理由でコールバック待ちステートでない場合には何もしない
|
// 外部からの停止等の理由でコールバック待ちステートでない場合には何もしない
|
||||||
if( g_wdswrapperwork->state != WDSWRAPPER_STATE_WAITSCAN ) {
|
if( g_wdswrapperwork->state != WDSWRAPPER_STATE_WAITSCAN ) {
|
||||||
#ifdef WDSWRAPPER_DEBUGPRINT
|
#ifdef WDSWRAPPER_DEBUGPRINT
|
||||||
OS_Printf("state != WDSWRAPPER_STATE_WAITSCAN\n");
|
OS_Printf("state != WDSWRAPPER_STATE_WAITSCAN\n");
|
||||||
#endif
|
#endif
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -309,7 +329,7 @@ static void WDS_WrapperStartScan_CB( void *arg )
|
|||||||
param.errcode = WDSWRAPPER_ERRCODE_FAILURE;
|
param.errcode = WDSWRAPPER_ERRCODE_FAILURE;
|
||||||
|
|
||||||
// コールバック関数の呼び出し
|
// コールバック関数の呼び出し
|
||||||
g_wdswrapperwork->initparam.callback( ¶m );
|
WDS_WrapperCallUserCallback( ¶m );
|
||||||
|
|
||||||
// ただちにスキャン停止ステートへ
|
// ただちにスキャン停止ステートへ
|
||||||
g_wdswrapperwork->state = WDSWRAPPER_STATE_ENDSCAN;
|
g_wdswrapperwork->state = WDSWRAPPER_STATE_ENDSCAN;
|
||||||
@ -317,9 +337,6 @@ static void WDS_WrapperStartScan_CB( void *arg )
|
|||||||
// 最終的にTERMINATEステートに入るよう設定
|
// 最終的にTERMINATEステートに入るよう設定
|
||||||
g_wdswrapperwork->terminate = TRUE;
|
g_wdswrapperwork->terminate = TRUE;
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -349,7 +366,7 @@ static void WDS_WrapperStartScan_CB( void *arg )
|
|||||||
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
|
|
||||||
// コールバック関数の呼び出し
|
// コールバック関数の呼び出し
|
||||||
g_wdswrapperwork->initparam.callback( ¶m );
|
WDS_WrapperCallUserCallback( ¶m );
|
||||||
|
|
||||||
// 十分長い時間スキャンしたのでスキャン中断ステートへ
|
// 十分長い時間スキャンしたのでスキャン中断ステートへ
|
||||||
g_wdswrapperwork->state = WDSWRAPPER_STATE_ENDSCAN;
|
g_wdswrapperwork->state = WDSWRAPPER_STATE_ENDSCAN;
|
||||||
@ -360,14 +377,11 @@ static void WDS_WrapperStartScan_CB( void *arg )
|
|||||||
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
|
|
||||||
// コールバック関数の呼び出し
|
// コールバック関数の呼び出し
|
||||||
g_wdswrapperwork->initparam.callback( ¶m );
|
WDS_WrapperCallUserCallback( ¶m );
|
||||||
|
|
||||||
// ただちにスキャン開始ステートへ
|
// ただちにスキャン開始ステートへ
|
||||||
g_wdswrapperwork->state = WDSWRAPPER_STATE_SCAN;
|
g_wdswrapperwork->state = WDSWRAPPER_STATE_SCAN;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------
|
||||||
@ -414,6 +428,7 @@ static void WDS_WrapperEndScanState( void )
|
|||||||
@param arg 非同期処理の結果を格納するWMCallback型変数へのポインタ
|
@param arg 非同期処理の結果を格納するWMCallback型変数へのポインタ
|
||||||
@return なし
|
@return なし
|
||||||
@note
|
@note
|
||||||
|
@LI このコールバックが呼ばれる際は、ステートは必ずWDSWRAPPER_STATE_WAITENDSCAN
|
||||||
@LI 処理成功時は自動的にWDS解放ステートへ
|
@LI 処理成功時は自動的にWDS解放ステートへ
|
||||||
@LI 処理失敗時は自動的に再度スキャン停止ステートへ
|
@LI 処理失敗時は自動的に再度スキャン停止ステートへ
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
@ -421,9 +436,6 @@ static void WDS_WrapperEndScan_CB(void *arg)
|
|||||||
{
|
{
|
||||||
WMCallback *callback = (WMCallback *)arg;
|
WMCallback *callback = (WMCallback *)arg;
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
#ifdef WDSWRAPPER_DEBUGPRINT
|
#ifdef WDSWRAPPER_DEBUGPRINT
|
||||||
OS_TPrintf("WDS_WrapperEndScan_CB\n");
|
OS_TPrintf("WDS_WrapperEndScan_CB\n");
|
||||||
#endif
|
#endif
|
||||||
@ -443,9 +455,6 @@ static void WDS_WrapperEndScan_CB(void *arg)
|
|||||||
// スキャン停止完了したら自動的にWDS解放ステートへ
|
// スキャン停止完了したら自動的にWDS解放ステートへ
|
||||||
g_wdswrapperwork->state = WDSWRAPPER_STATE_END;
|
g_wdswrapperwork->state = WDSWRAPPER_STATE_END;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------
|
||||||
@ -497,9 +506,6 @@ static void WDS_WrapperEnd_CB( void *arg )
|
|||||||
#pragma unused(arg)
|
#pragma unused(arg)
|
||||||
WDSWrapperCallbackParam param;
|
WDSWrapperCallbackParam param;
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
#ifdef WDSWRAPPER_DEBUGPRINT
|
#ifdef WDSWRAPPER_DEBUGPRINT
|
||||||
OS_TPrintf("WDS_WrapperEnd_CB\n");
|
OS_TPrintf("WDS_WrapperEnd_CB\n");
|
||||||
#endif
|
#endif
|
||||||
@ -519,21 +525,19 @@ static void WDS_WrapperEnd_CB( void *arg )
|
|||||||
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
|
|
||||||
// コールバック関数の呼び出し
|
// コールバック関数の呼び出し
|
||||||
g_wdswrapperwork->initparam.callback( ¶m );
|
WDS_WrapperCallUserCallback( ¶m );
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
g_wdswrapperwork->state = WDSWRAPPER_STATE_BEFOREINIT;
|
g_wdswrapperwork->state = WDSWRAPPER_STATE_BEFOREINIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ステート処理と重複処理しないため
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------
|
||||||
/** アイドルステート関数
|
/** アイドルステート関数
|
||||||
@param なし
|
@param なし
|
||||||
@return なし
|
@return なし
|
||||||
|
@LI このステートの間は外部IFからのスキャン開始とライブラリ解放を受け付ける
|
||||||
|
@LI この処理の中でフラグが変化しても、動作は結局同じなのでMutexロックはしない
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
static void WDS_WrapperIdleState( void )
|
static void WDS_WrapperIdleState( void )
|
||||||
{
|
{
|
||||||
@ -562,12 +566,12 @@ static void WDS_WrapperThreadFunc( void *arg )
|
|||||||
g_wdswrapperwork->state = WDSWRAPPER_STATE_INIT;
|
g_wdswrapperwork->state = WDSWRAPPER_STATE_INIT;
|
||||||
|
|
||||||
while( 1 ) {
|
while( 1 ) {
|
||||||
OS_Sleep(20);
|
OS_Sleep( 20 );
|
||||||
|
|
||||||
// ステートにより処理を分岐(ステート処理中はmutexによりlockが行われる)
|
// ステートにより処理を分岐(ステート処理中はmutexによりlockが行われる)
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
if( g_wdswrapperwork->state == WDSWRAPPER_STATE_TERMINATE )
|
if( g_wdswrapperwork->state == WDSWRAPPER_STATE_TERMINATE )
|
||||||
break;
|
break;
|
||||||
|
OS_Sleep( 20 );
|
||||||
|
|
||||||
switch( g_wdswrapperwork->state ) {
|
switch( g_wdswrapperwork->state ) {
|
||||||
case WDSWRAPPER_STATE_BEFOREINIT: WDS_WrapperBeforeInitState(); break;
|
case WDSWRAPPER_STATE_BEFOREINIT: WDS_WrapperBeforeInitState(); break;
|
||||||
@ -582,7 +586,6 @@ static void WDS_WrapperThreadFunc( void *arg )
|
|||||||
case WDSWRAPPER_STATE_IDLE: WDS_WrapperIdleState(); break;
|
case WDSWRAPPER_STATE_IDLE: WDS_WrapperIdleState(); break;
|
||||||
case WDSWRAPPER_STATE_TERMINATE: break;
|
case WDSWRAPPER_STATE_TERMINATE: break;
|
||||||
}
|
}
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// コールバックパラメータの設定
|
// コールバックパラメータの設定
|
||||||
@ -590,7 +593,7 @@ static void WDS_WrapperThreadFunc( void *arg )
|
|||||||
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
param.errcode = WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
|
|
||||||
// コールバック関数の呼び出し
|
// コールバック関数の呼び出し
|
||||||
g_wdswrapperwork->initparam.callback( ¶m );
|
WDS_WrapperCallUserCallback( ¶m );
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------
|
||||||
@ -658,9 +661,6 @@ WDSWrapperErrCode WDS_WrapperInitialize( WDSWrapperInitializeParam param )
|
|||||||
// パラメータのコピー
|
// パラメータのコピー
|
||||||
g_wdswrapperwork->initparam = param;
|
g_wdswrapperwork->initparam = param;
|
||||||
|
|
||||||
// mutexの初期化
|
|
||||||
OS_InitMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
// スレッドの生成
|
// スレッドの生成
|
||||||
OS_CreateThread( &g_wdswrapperwork->thread,
|
OS_CreateThread( &g_wdswrapperwork->thread,
|
||||||
WDS_WrapperThreadFunc,
|
WDS_WrapperThreadFunc,
|
||||||
@ -711,18 +711,13 @@ WDSWrapperErrCode WDS_WrapperCleanup( void )
|
|||||||
if( g_wdswrapperwork == NULL )
|
if( g_wdswrapperwork == NULL )
|
||||||
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
||||||
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
// 解放処理実行中をチェック
|
// 解放処理実行中をチェック
|
||||||
if( g_wdswrapperwork->terminate == TRUE ) {
|
if( g_wdswrapperwork->terminate == TRUE ) {
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
return WDSWRAPPER_ERRCODE_OPERATING;
|
return WDSWRAPPER_ERRCODE_OPERATING;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_wdswrapperwork->terminate = TRUE;
|
g_wdswrapperwork->terminate = TRUE;
|
||||||
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
return WDSWRAPPER_ERRCODE_SUCCESS;
|
return WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -742,24 +737,18 @@ WDSWrapperErrCode WDS_WrapperStartScan( void )
|
|||||||
if( g_wdswrapperwork == NULL )
|
if( g_wdswrapperwork == NULL )
|
||||||
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
||||||
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
// ステートがIDLEかBEFOREINITであることを確認
|
// ステートがIDLEかBEFOREINITであることを確認
|
||||||
if( g_wdswrapperwork->state != WDSWRAPPER_STATE_IDLE && g_wdswrapperwork->state != WDSWRAPPER_STATE_BEFOREINIT ) {
|
if( g_wdswrapperwork->state != WDSWRAPPER_STATE_IDLE && g_wdswrapperwork->state != WDSWRAPPER_STATE_BEFOREINIT ) {
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
return WDSWRAPPER_ERRCODE_FAILURE;
|
return WDSWRAPPER_ERRCODE_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 再スタート処理実行中をチェック
|
// 再スタート処理実行中をチェック
|
||||||
if( g_wdswrapperwork->restart == TRUE ) {
|
if( g_wdswrapperwork->restart == TRUE ) {
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
return WDSWRAPPER_ERRCODE_OPERATING;
|
return WDSWRAPPER_ERRCODE_OPERATING;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_wdswrapperwork->restart = TRUE;
|
g_wdswrapperwork->restart = TRUE;
|
||||||
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
return WDSWRAPPER_ERRCODE_SUCCESS;
|
return WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -780,18 +769,13 @@ WDSWrapperErrCode WDS_WrapperStopScan( void )
|
|||||||
if( g_wdswrapperwork == NULL )
|
if( g_wdswrapperwork == NULL )
|
||||||
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
||||||
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
// 間欠受信停止処理実行中をチェック
|
// 間欠受信停止処理実行中をチェック
|
||||||
if( g_wdswrapperwork->idle == TRUE ) {
|
if( g_wdswrapperwork->idle == TRUE ) {
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
return WDSWRAPPER_ERRCODE_OPERATING;
|
return WDSWRAPPER_ERRCODE_OPERATING;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_wdswrapperwork->idle = TRUE;
|
g_wdswrapperwork->idle = TRUE;
|
||||||
|
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
return WDSWRAPPER_ERRCODE_SUCCESS;
|
return WDSWRAPPER_ERRCODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -802,6 +786,7 @@ WDSWrapperErrCode WDS_WrapperStopScan( void )
|
|||||||
@return WDSWRAPPER_ERRCODE_SUCCESS: 直前に完了した間欠受信で有効な親機ビーコンを受け取った
|
@return WDSWRAPPER_ERRCODE_SUCCESS: 直前に完了した間欠受信で有効な親機ビーコンを受け取った
|
||||||
@return WDSWRAPPER_ERRCODE_FAILURE: 直前に完了した間欠受信で有効な親機ビーコンを受け取っていない
|
@return WDSWRAPPER_ERRCODE_FAILURE: 直前に完了した間欠受信で有効な親機ビーコンを受け取っていない
|
||||||
@return WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化されていない
|
@return WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化されていない
|
||||||
|
@note ライブラリ初期化時に指定したコールバック関数の中でのみ呼び出して下さい
|
||||||
*///------------------------------------------------------------------------------
|
*///------------------------------------------------------------------------------
|
||||||
WDSWrapperErrCode WDS_WrapperCheckValidBeacon( void )
|
WDSWrapperErrCode WDS_WrapperCheckValidBeacon( void )
|
||||||
{
|
{
|
||||||
@ -812,7 +797,9 @@ WDSWrapperErrCode WDS_WrapperCheckValidBeacon( void )
|
|||||||
if( g_wdswrapperwork == NULL )
|
if( g_wdswrapperwork == NULL )
|
||||||
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
return WDSWRAPPER_ERRCODE_UNINITIALIZED;
|
||||||
|
|
||||||
OS_LockMutex( &g_wdswrapperwork->mutex );
|
// コールバック関数からの呼び出しかを確認
|
||||||
|
if( g_wdswrapperwork->callingback != TRUE )
|
||||||
|
return WDSWRAPPER_ERRCODE_FAILURE;
|
||||||
|
|
||||||
if( g_wdswrapperwork->briefapinfonum > 0 ) {
|
if( g_wdswrapperwork->briefapinfonum > 0 ) {
|
||||||
for( i = 0; i < g_wdswrapperwork->briefapinfonum; i++ ) {
|
for( i = 0; i < g_wdswrapperwork->briefapinfonum; i++ ) {
|
||||||
@ -824,7 +811,6 @@ WDSWrapperErrCode WDS_WrapperCheckValidBeacon( void )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
OS_UnlockMutex( &g_wdswrapperwork->mutex );
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
|
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
|
||||||
■ ■
|
■ ■
|
||||||
■ TWLWDSライブラリ 2008/6/26版 ■
|
■ TWLWDSライブラリ 2008/7/ 3版 ■
|
||||||
■ ■
|
■ ■
|
||||||
■ ネットワーク開発部からのお知らせ ■
|
■ ネットワーク開発部からのお知らせ ■
|
||||||
■ ■
|
■ ■
|
||||||
@ -27,6 +27,9 @@
|
|||||||
|
|
||||||
●変更履歴
|
●変更履歴
|
||||||
|
|
||||||
|
2008/06/26 20080703版
|
||||||
|
・WDSラッパー内部で行っていた排他制御に関連して発生していたフリーズ問題を修正しました。
|
||||||
|
|
||||||
2008/06/26 20080626版
|
2008/06/26 20080626版
|
||||||
・WDSライブラリを簡易に使用するためのWDSWrapperが追加されました。
|
・WDSライブラリを簡易に使用するためのWDSWrapperが追加されました。
|
||||||
|
|
||||||
@ -46,3 +49,6 @@ infoflag
|
|||||||
infoflagのWDS_INFOFLAG_NOTIFYビットが1にセットされたビーコンを
|
infoflagのWDS_INFOFLAG_NOTIFYビットが1にセットされたビーコンを
|
||||||
受信した場合のみ行ってください。
|
受信した場合のみ行ってください。
|
||||||
・なお、WDSWrapperはWDS_INFOFLAG_NOTIFYに関連した処理を内部で自動的に行います。
|
・なお、WDSWrapperはWDS_INFOFLAG_NOTIFYに関連した処理を内部で自動的に行います。
|
||||||
|
WDS_WrapperCheckValidBeacon関数について
|
||||||
|
・20080703バージョン以降は、WDS_WrapperCheckValidBeacon関数は初期化時に指定した
|
||||||
|
コールバック関数の中からのみ呼び出すことができます。
|
||||||
|
|||||||
@ -128,7 +128,7 @@ void NitroMain(void)
|
|||||||
WDS_WrapperStopScan();
|
WDS_WrapperStopScan();
|
||||||
if( ( lastpad ^ nowpad ) & PAD_BUTTON_X && !( nowpad & PAD_BUTTON_X ) ) {
|
if( ( lastpad ^ nowpad ) & PAD_BUTTON_X && !( nowpad & PAD_BUTTON_X ) ) {
|
||||||
// WDSWrapper初期化と動作開始
|
// WDSWrapper初期化と動作開始
|
||||||
param.threadprio = 10;
|
param.threadprio = 20;
|
||||||
param.dmano = 1;
|
param.dmano = 1;
|
||||||
|
|
||||||
param.callback = Callback_WDSWrapper;
|
param.callback = Callback_WDSWrapper;
|
||||||
|
|||||||
@ -23,6 +23,11 @@ extern "C" {
|
|||||||
//-----------------------------------------------------
|
//-----------------------------------------------------
|
||||||
// Macros
|
// Macros
|
||||||
//-----------------------------------------------------
|
//-----------------------------------------------------
|
||||||
|
/**
|
||||||
|
@brief デバッグ表示指定
|
||||||
|
*/
|
||||||
|
//#define WDS_DEBUGPRINT
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief ホットスポット名エンコード情報
|
@brief ホットスポット名エンコード情報
|
||||||
*/
|
*/
|
||||||
@ -48,7 +53,7 @@ extern "C" {
|
|||||||
/**
|
/**
|
||||||
@brief 親機AP情報保持最大数
|
@brief 親機AP情報保持最大数
|
||||||
*/
|
*/
|
||||||
#define WDS_APINFO_MAX 16
|
#define WDS_APINFO_MAX 4
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief 親機情報フラグ定義
|
@brief 親機情報フラグ定義
|
||||||
@ -68,12 +73,12 @@ typedef void (*WDSCallbackFunc)(void *arg);
|
|||||||
// Structs
|
// Structs
|
||||||
//-----------------------------------------------------
|
//-----------------------------------------------------
|
||||||
/**
|
/**
|
||||||
@brief 親機から送られてくるAPビーコンの内容
|
@brief 親機から送られてくるAPビーコン
|
||||||
*/
|
*/
|
||||||
typedef struct WDSApInfo
|
typedef struct WDSApInfo
|
||||||
{
|
{
|
||||||
u8 ssid[ WDS_SSID_BUF_SIZE ]; ///< 親機が接続するAPのSSID
|
u8 ssid[ WDS_SSID_BUF_SIZE ]; ///< 親機が接続するAPのSSID
|
||||||
u8 apnum[ WDS_APNUM_BUF_SIZE ]; ///< 本来はAPのSSIDに埋め込まれているAP識別番号
|
u8 apnum[ WDS_APNUM_BUF_SIZE ]; ///< Wi-FiステーションのAPのSSIDに埋め込まれているAP識別番号と同等の文字列
|
||||||
u16 hotspotid; ///< ホットスポットの認証方式を示すフラグ+hotspotnameのエンコード情報
|
u16 hotspotid; ///< ホットスポットの認証方式を示すフラグ+hotspotnameのエンコード情報
|
||||||
u8 hotspotname[ WDS_HOTSPOTNAME_BUF_SIZE ]; ///< UTF-8あるいはUTF-16で記述されたホットスポットの名前
|
u8 hotspotname[ WDS_HOTSPOTNAME_BUF_SIZE ]; ///< UTF-8あるいはUTF-16で記述されたホットスポットの名前
|
||||||
u8 wepkey[ WDS_WEPKEY_BUF_SIZE ]; ///< 親機が接続するAPのWEP キー
|
u8 wepkey[ WDS_WEPKEY_BUF_SIZE ]; ///< 親機が接続するAPのWEP キー
|
||||||
@ -86,16 +91,15 @@ typedef struct WDSApInfo
|
|||||||
} WDSApInfo;
|
} WDSApInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief アプリケーションから閲覧可能なAPビーコンの内容
|
@brief アプリケーションが参照するAPビーコン構造体
|
||||||
*/
|
*/
|
||||||
typedef struct WDSBriefApInfo
|
typedef struct WDSBriefApInfo
|
||||||
{
|
{
|
||||||
// WDSライブラリによって生成される値
|
// WDSライブラリによって生成される値
|
||||||
BOOL isvalid;
|
BOOL isvalid; ///< apinfoに有効な値が代入されていればTRUE
|
||||||
u16 rssi; ///< 電波強度
|
u16 rssi; ///< 電波強度
|
||||||
|
|
||||||
// AP情報ビーコンそのもの
|
WDSApInfo apinfo; ///< 親機から送られてくるAPビーコン
|
||||||
WDSApInfo apinfo;
|
|
||||||
} WDSBriefApInfo;
|
} WDSBriefApInfo;
|
||||||
|
|
||||||
//-----------------------------------------------------
|
//-----------------------------------------------------
|
||||||
|
|||||||
@ -102,6 +102,7 @@ WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化さ
|
|||||||
<dl class="return" compact><dt><b>戻り値:</b></dt><dd>WDSWRAPPER_ERRCODE_SUCCESS: 直前に完了した間欠受信で有効な親機ビーコンを受け取った <p>
|
<dl class="return" compact><dt><b>戻り値:</b></dt><dd>WDSWRAPPER_ERRCODE_SUCCESS: 直前に完了した間欠受信で有効な親機ビーコンを受け取った <p>
|
||||||
WDSWRAPPER_ERRCODE_FAILURE: 直前に完了した間欠受信で有効な親機ビーコンを受け取っていない <p>
|
WDSWRAPPER_ERRCODE_FAILURE: 直前に完了した間欠受信で有効な親機ビーコンを受け取っていない <p>
|
||||||
WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化されていない </dd></dl>
|
WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化されていない </dd></dl>
|
||||||
|
<dl class="note" compact><dt><b>覚え書き:</b></dt><dd>ライブラリ初期化時に指定したコールバック関数の中でのみ呼び出して下さい </dd></dl>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div><p>
|
</div><p>
|
||||||
@ -274,7 +275,7 @@ WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化さ
|
|||||||
</div>
|
</div>
|
||||||
</div><p>
|
</div><p>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -383,6 +383,7 @@ WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化さ
|
|||||||
<dl class="return" compact><dt><b>戻り値:</b></dt><dd>WDSWRAPPER_ERRCODE_SUCCESS: 直前に完了した間欠受信で有効な親機ビーコンを受け取った <p>
|
<dl class="return" compact><dt><b>戻り値:</b></dt><dd>WDSWRAPPER_ERRCODE_SUCCESS: 直前に完了した間欠受信で有効な親機ビーコンを受け取った <p>
|
||||||
WDSWRAPPER_ERRCODE_FAILURE: 直前に完了した間欠受信で有効な親機ビーコンを受け取っていない <p>
|
WDSWRAPPER_ERRCODE_FAILURE: 直前に完了した間欠受信で有効な親機ビーコンを受け取っていない <p>
|
||||||
WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化されていない </dd></dl>
|
WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化されていない </dd></dl>
|
||||||
|
<dl class="note" compact><dt><b>覚え書き:</b></dt><dd>ライブラリ初期化時に指定したコールバック関数の中でのみ呼び出して下さい </dd></dl>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div><p>
|
</div><p>
|
||||||
@ -555,7 +556,7 @@ WDSWRAPPER_ERRCODE_UNINITIALIZED: WDSラッパーライブラリが初期化さ
|
|||||||
</div>
|
</div>
|
||||||
</div><p>
|
</div><p>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -28,7 +28,7 @@
|
|||||||
<tr><td class="indexkey"><a class="el" href="struct_w_d_s_wrapper_work.html">WDSWrapperWork</a></td><td class="indexvalue">WDSラッパーのワーク領域 </td></tr>
|
<tr><td class="indexkey"><a class="el" href="struct_w_d_s_wrapper_work.html">WDSWrapperWork</a></td><td class="indexvalue">WDSラッパーのワーク領域 </td></tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -27,7 +27,7 @@
|
|||||||
<tr><td><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> W </div></td></tr></table>
|
<tr><td><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> W </div></td></tr></table>
|
||||||
</td><td><a class="el" href="struct_w_d_s_wrapper_callback_param.html">WDSWrapperCallbackParam</a> </td><td><a class="el" href="struct_w_d_s_wrapper_initialize_param.html">WDSWrapperInitializeParam</a> </td><td><a class="el" href="struct_w_d_s_wrapper_work.html">WDSWrapperWork</a> </td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_W">W</a></div><p>
|
</td><td><a class="el" href="struct_w_d_s_wrapper_callback_param.html">WDSWrapperCallbackParam</a> </td><td><a class="el" href="struct_w_d_s_wrapper_initialize_param.html">WDSWrapperInitializeParam</a> </td><td><a class="el" href="struct_w_d_s_wrapper_work.html">WDSWrapperWork</a> </td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_W">W</a></div><p>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -26,7 +26,7 @@
|
|||||||
<tr><td class="indexkey">src/<a class="el" href="_w_d_s_wrapper_8c.html">WDSWrapper.c</a></td><td class="indexvalue">WDSライブラリのラッパー </td></tr>
|
<tr><td class="indexkey">src/<a class="el" href="_w_d_s_wrapper_8c.html">WDSWrapper.c</a></td><td class="indexvalue">WDSライブラリのラッパー </td></tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -40,6 +40,8 @@
|
|||||||
<li>callback
|
<li>callback
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_initialize_param.html#c2f0a08327bbba12e43f785a19d78176">WDSWrapperInitializeParam</a>
|
: <a class="el" href="struct_w_d_s_wrapper_initialize_param.html#c2f0a08327bbba12e43f785a19d78176">WDSWrapperInitializeParam</a>
|
||||||
, <a class="el" href="struct_w_d_s_wrapper_callback_param.html#1b13b0035e008efd18b463f68e899ec9">WDSWrapperCallbackParam</a>
|
, <a class="el" href="struct_w_d_s_wrapper_callback_param.html#1b13b0035e008efd18b463f68e899ec9">WDSWrapperCallbackParam</a>
|
||||||
|
<li>callingback
|
||||||
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#755d91d393b30b81530e78204b07f8de">WDSWrapperWork</a>
|
||||||
<li>deliverinfo
|
<li>deliverinfo
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#1c0a7bef19fdb61fffd9f131643db80c">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#1c0a7bef19fdb61fffd9f131643db80c">WDSWrapperWork</a>
|
||||||
<li>dmano
|
<li>dmano
|
||||||
@ -52,8 +54,6 @@
|
|||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#f28139846ae4022186db2e234457fdb7">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#f28139846ae4022186db2e234457fdb7">WDSWrapperWork</a>
|
||||||
<li>initparam
|
<li>initparam
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#e364e4c0e0ed9daac52a7bf6cd5df7f1">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#e364e4c0e0ed9daac52a7bf6cd5df7f1">WDSWrapperWork</a>
|
||||||
<li>mutex
|
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#4684ed4a9191d29d6cd767d8f2149eeb">WDSWrapperWork</a>
|
|
||||||
<li>restart
|
<li>restart
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#653600ec89df9559f389ebb75d55059e">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#653600ec89df9559f389ebb75d55059e">WDSWrapperWork</a>
|
||||||
<li>stack
|
<li>stack
|
||||||
@ -72,7 +72,7 @@
|
|||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#8f2f0f56b345fd070bf3bcacab9ae53e">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#8f2f0f56b345fd070bf3bcacab9ae53e">WDSWrapperWork</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -40,6 +40,8 @@
|
|||||||
<li>callback
|
<li>callback
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_initialize_param.html#c2f0a08327bbba12e43f785a19d78176">WDSWrapperInitializeParam</a>
|
: <a class="el" href="struct_w_d_s_wrapper_initialize_param.html#c2f0a08327bbba12e43f785a19d78176">WDSWrapperInitializeParam</a>
|
||||||
, <a class="el" href="struct_w_d_s_wrapper_callback_param.html#1b13b0035e008efd18b463f68e899ec9">WDSWrapperCallbackParam</a>
|
, <a class="el" href="struct_w_d_s_wrapper_callback_param.html#1b13b0035e008efd18b463f68e899ec9">WDSWrapperCallbackParam</a>
|
||||||
|
<li>callingback
|
||||||
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#755d91d393b30b81530e78204b07f8de">WDSWrapperWork</a>
|
||||||
<li>deliverinfo
|
<li>deliverinfo
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#1c0a7bef19fdb61fffd9f131643db80c">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#1c0a7bef19fdb61fffd9f131643db80c">WDSWrapperWork</a>
|
||||||
<li>dmano
|
<li>dmano
|
||||||
@ -52,8 +54,6 @@
|
|||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#f28139846ae4022186db2e234457fdb7">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#f28139846ae4022186db2e234457fdb7">WDSWrapperWork</a>
|
||||||
<li>initparam
|
<li>initparam
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#e364e4c0e0ed9daac52a7bf6cd5df7f1">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#e364e4c0e0ed9daac52a7bf6cd5df7f1">WDSWrapperWork</a>
|
||||||
<li>mutex
|
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#4684ed4a9191d29d6cd767d8f2149eeb">WDSWrapperWork</a>
|
|
||||||
<li>restart
|
<li>restart
|
||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#653600ec89df9559f389ebb75d55059e">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#653600ec89df9559f389ebb75d55059e">WDSWrapperWork</a>
|
||||||
<li>stack
|
<li>stack
|
||||||
@ -72,7 +72,7 @@
|
|||||||
: <a class="el" href="struct_w_d_s_wrapper_work.html#8f2f0f56b345fd070bf3bcacab9ae53e">WDSWrapperWork</a>
|
: <a class="el" href="struct_w_d_s_wrapper_work.html#8f2f0f56b345fd070bf3bcacab9ae53e">WDSWrapperWork</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -125,7 +125,7 @@
|
|||||||
: <a class="el" href="_w_d_s_wrapper_8h.html#0c6effbec49c715127e2b674ec3a59ff">WDSWrapper.h</a>
|
: <a class="el" href="_w_d_s_wrapper_8h.html#0c6effbec49c715127e2b674ec3a59ff">WDSWrapper.h</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -42,7 +42,7 @@
|
|||||||
: <a class="el" href="_w_d_s_wrapper_8h.html#79088e3207784ca6f790938a0da75140">WDSWrapper.h</a>
|
: <a class="el" href="_w_d_s_wrapper_8h.html#79088e3207784ca6f790938a0da75140">WDSWrapper.h</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -42,7 +42,7 @@
|
|||||||
: <a class="el" href="_w_d_s_wrapper_8h.html#0c6effbec49c715127e2b674ec3a59ff">WDSWrapper.h</a>
|
: <a class="el" href="_w_d_s_wrapper_8h.html#0c6effbec49c715127e2b674ec3a59ff">WDSWrapper.h</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -78,7 +78,7 @@
|
|||||||
: <a class="el" href="_w_d_s_wrapper_8h.html#0c6effbec49c715127e2b674ec3a59ffd9635041daca249d0b9172843d4bc5f0">WDSWrapper.h</a>
|
: <a class="el" href="_w_d_s_wrapper_8h.html#0c6effbec49c715127e2b674ec3a59ffd9635041daca249d0b9172843d4bc5f0">WDSWrapper.h</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -60,7 +60,7 @@
|
|||||||
, <a class="el" href="_w_d_s_wrapper_8h.html#dddf9ad0118cd79040f8cd77ad3f47ab">WDSWrapper.h</a>
|
, <a class="el" href="_w_d_s_wrapper_8h.html#dddf9ad0118cd79040f8cd77ad3f47ab">WDSWrapper.h</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -42,7 +42,7 @@
|
|||||||
: <a class="el" href="_w_d_s_wrapper_8h.html#c372630f28c9599a6df9e686e5f0af38">WDSWrapper.h</a>
|
: <a class="el" href="_w_d_s_wrapper_8h.html#c372630f28c9599a6df9e686e5f0af38">WDSWrapper.h</a>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -18,7 +18,7 @@
|
|||||||
<h1>WDSWrapper ドキュメント</h1>
|
<h1>WDSWrapper ドキュメント</h1>
|
||||||
<p>
|
<p>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -76,7 +76,7 @@ WDSラッパーが呼び出すコールバック関数に与えられる引数
|
|||||||
<hr>この構造体の説明は次のファイルから生成されました:<ul>
|
<hr>この構造体の説明は次のファイルから生成されました:<ul>
|
||||||
<li>include/<a class="el" href="_w_d_s_wrapper_8h.html">WDSWrapper.h</a></ul>
|
<li>include/<a class="el" href="_w_d_s_wrapper_8h.html">WDSWrapper.h</a></ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -136,7 +136,7 @@ WDSラッパーが使用するアロケータ
|
|||||||
<hr>この構造体の説明は次のファイルから生成されました:<ul>
|
<hr>この構造体の説明は次のファイルから生成されました:<ul>
|
||||||
<li>include/<a class="el" href="_w_d_s_wrapper_8h.html">WDSWrapper.h</a></ul>
|
<li>include/<a class="el" href="_w_d_s_wrapper_8h.html">WDSWrapper.h</a></ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -34,9 +34,6 @@
|
|||||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">OSThread </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#e70b0ba1a9b9c0ccc84865cd7efa827d">thread</a></td></tr>
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">OSThread </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#e70b0ba1a9b9c0ccc84865cd7efa827d">thread</a></td></tr>
|
||||||
|
|
||||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">WDSラッパーが使用するスレッド構造体 <a href="#e70b0ba1a9b9c0ccc84865cd7efa827d"></a><br></td></tr>
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">WDSラッパーが使用するスレッド構造体 <a href="#e70b0ba1a9b9c0ccc84865cd7efa827d"></a><br></td></tr>
|
||||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">OSMutex </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#4684ed4a9191d29d6cd767d8f2149eeb">mutex</a></td></tr>
|
|
||||||
|
|
||||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">WDSラッパーが使用するmutex <a href="#4684ed4a9191d29d6cd767d8f2149eeb"></a><br></td></tr>
|
|
||||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">u8 * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#8f2f0f56b345fd070bf3bcacab9ae53e">wdswork</a></td></tr>
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">u8 * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#8f2f0f56b345fd070bf3bcacab9ae53e">wdswork</a></td></tr>
|
||||||
|
|
||||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">WDSが使用するワークエリア <a href="#8f2f0f56b345fd070bf3bcacab9ae53e"></a><br></td></tr>
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">WDSが使用するワークエリア <a href="#8f2f0f56b345fd070bf3bcacab9ae53e"></a><br></td></tr>
|
||||||
@ -67,6 +64,9 @@
|
|||||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">OSDeliverArgInfo </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#1c0a7bef19fdb61fffd9f131643db80c">deliverinfo</a></td></tr>
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">OSDeliverArgInfo </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#1c0a7bef19fdb61fffd9f131643db80c">deliverinfo</a></td></tr>
|
||||||
|
|
||||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">TWL用アプリ間引数ワークエリア <a href="#1c0a7bef19fdb61fffd9f131643db80c"></a><br></td></tr>
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">TWL用アプリ間引数ワークエリア <a href="#1c0a7bef19fdb61fffd9f131643db80c"></a><br></td></tr>
|
||||||
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">BOOL </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_w_d_s_wrapper_work.html#755d91d393b30b81530e78204b07f8de">callingback</a></td></tr>
|
||||||
|
|
||||||
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">コールバック関数呼び出し中はTRUE <a href="#755d91d393b30b81530e78204b07f8de"></a><br></td></tr>
|
||||||
</table>
|
</table>
|
||||||
<hr><a name="_details"></a><h2>説明</h2>
|
<hr><a name="_details"></a><h2>説明</h2>
|
||||||
WDSラッパーのワーク領域 <hr><h2>構造体</h2>
|
WDSラッパーのワーク領域 <hr><h2>構造体</h2>
|
||||||
@ -102,23 +102,6 @@ WDSラッパーが使用するスタック
|
|||||||
WDSラッパーが使用するスレッド構造体
|
WDSラッパーが使用するスレッド構造体
|
||||||
<p>
|
<p>
|
||||||
|
|
||||||
</div>
|
|
||||||
</div><p>
|
|
||||||
<a class="anchor" name="4684ed4a9191d29d6cd767d8f2149eeb"></a><!-- doxytag: member="WDSWrapperWork::mutex" ref="4684ed4a9191d29d6cd767d8f2149eeb" args="" -->
|
|
||||||
<div class="memitem">
|
|
||||||
<div class="memproto">
|
|
||||||
<table class="memname">
|
|
||||||
<tr>
|
|
||||||
<td class="memname">OSMutex <a class="el" href="struct_w_d_s_wrapper_work.html#4684ed4a9191d29d6cd767d8f2149eeb">WDSWrapperWork::mutex</a> </td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<div class="memdoc">
|
|
||||||
|
|
||||||
<p>
|
|
||||||
WDSラッパーが使用するmutex
|
|
||||||
<p>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div><p>
|
</div><p>
|
||||||
<a class="anchor" name="8f2f0f56b345fd070bf3bcacab9ae53e"></a><!-- doxytag: member="WDSWrapperWork::wdswork" ref="8f2f0f56b345fd070bf3bcacab9ae53e" args="" -->
|
<a class="anchor" name="8f2f0f56b345fd070bf3bcacab9ae53e"></a><!-- doxytag: member="WDSWrapperWork::wdswork" ref="8f2f0f56b345fd070bf3bcacab9ae53e" args="" -->
|
||||||
@ -289,12 +272,29 @@ WDSラッパーのステート
|
|||||||
TWL用アプリ間引数ワークエリア
|
TWL用アプリ間引数ワークエリア
|
||||||
<p>
|
<p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div><p>
|
||||||
|
<a class="anchor" name="755d91d393b30b81530e78204b07f8de"></a><!-- doxytag: member="WDSWrapperWork::callingback" ref="755d91d393b30b81530e78204b07f8de" args="" -->
|
||||||
|
<div class="memitem">
|
||||||
|
<div class="memproto">
|
||||||
|
<table class="memname">
|
||||||
|
<tr>
|
||||||
|
<td class="memname">BOOL <a class="el" href="struct_w_d_s_wrapper_work.html#755d91d393b30b81530e78204b07f8de">WDSWrapperWork::callingback</a> </td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="memdoc">
|
||||||
|
|
||||||
|
<p>
|
||||||
|
コールバック関数呼び出し中はTRUE
|
||||||
|
<p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div><p>
|
</div><p>
|
||||||
<hr>この構造体の説明は次のファイルから生成されました:<ul>
|
<hr>この構造体の説明は次のファイルから生成されました:<ul>
|
||||||
<li>src/<a class="el" href="_w_d_s_wrapper_8c.html">WDSWrapper.c</a></ul>
|
<li>src/<a class="el" href="_w_d_s_wrapper_8c.html">WDSWrapper.c</a></ul>
|
||||||
</div>
|
</div>
|
||||||
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jun 26 22:00:52 2008に生成されました。
|
<hr size="1"><address style="text-align: right;"><small>WDSWrapperに対してThu Jul 3 18:05:09 2008に生成されました。
|
||||||
<a href="http://www.doxygen.org/index.html">
|
<a href="http://www.doxygen.org/index.html">
|
||||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user