Solution46
AppTest::CAppTestMenuBase クラス

テストアプリケーションメニュー基底クラス [詳解]

#include "CAppTestMenuBase.h"

AppTest::CAppTestMenuBase の継承関係図
Inheritance graph
AppTest::CAppTestMenuBase 連携図
Collaboration graph

公開メンバ関数

 CAppTestMenuBase (SMenuInfo const *psMenuInfo) noexcept
 コンストラクタ [詳解]
 
virtual ~CAppTestMenuBase () noexcept
 デストラクタ [詳解]
 
- 基底クラス LibCommon::CConsoleMenu に属する継承公開メンバ関数
 CConsoleMenu (SMenuInfo const *psMenuInfo) noexcept
 コンストラクタ [詳解]
 
virtual ~CConsoleMenu () noexcept
 デストラクタ [詳解]
 
virtual bool IsExecMenu () noexcept
 実行状態取得関数 [詳解]
 
virtual bool StartMenu () noexcept
 メニュー開始関数 [詳解]
 
virtual bool ExecMenu () noexcept
 メニュー実行関数 [詳解]
 
virtual void StopMenu () noexcept
 メニュー中止要求関数 [詳解]
 
virtual bool WaitForMenuFinish (DWORD dwTime=INFINITE) noexcept
 メニュー終了待ち関数 [詳解]
 
virtual bool CanBeExit () const noexcept
 終了可能状態取得関数 [詳解]
 
virtual CConsoleMenuGetSubMenu () const noexcept
 サブメニュー取得関数 [詳解]
 
virtual bool MenuCallBackProc (bool bPreCallBack=false) noexcept
 メニューコールバック関数 [詳解]
 
- 基底クラス LibCommon::CMutex に属する継承公開メンバ関数
 CMutex () noexcept
 コンストラクタ [詳解]
 
virtual ~CMutex () noexcept
 デストラクタ [詳解]
 
virtual void Close () noexcept override
 クローズ関数 [詳解]
 
virtual bool Release () noexcept override
 リリース関数 [詳解]
 
virtual bool Lock (DWORD dwTime=INFINITE) noexcept override
 ロック関数 [詳解]
 
virtual bool Unlock () noexcept override
 ロック解除関数 [詳解]
 
virtual bool Create (wchar_t const *pszObjectName=nullptr) noexcept
 作成関数 [詳解]
 
virtual bool Open (wchar_t const *pszObjectName) noexcept
 オープン関数 [詳解]
 
- 基底クラス LibCommon::CSync に属する継承公開メンバ関数
 CSync () noexcept
 コンストラクタ [詳解]
 
virtual ~CSync () noexcept
 デストラクタ [詳解]
 
virtual HANDLE GetHandle () const noexcept
 オブジェクトハンドル取得関数 [詳解]
 
virtual bool IsCreate () const noexcept
 新規作成状態取得関数 [詳解]
 
virtual bool Wait (DWORD dwTime=INFINITE) noexcept
 ウェイト関数 [詳解]
 

静的公開メンバ関数

static bool OutputFinishMessage (wchar_t const *pszFormat,...) noexcept
 終了メッセージ出力関数 [詳解]
 

非公開メンバ関数

 CAppTestMenuBase (CAppTestMenuBase const &)=delete
 
CAppTestMenuBaseoperator= (CAppTestMenuBase const &)=delete
 

その他の継承メンバ

- 基底クラス LibCommon::CConsoleMenu に属する継承限定公開メンバ関数
virtual bool ExecSubThread () noexcept
 サブスレッド実行関数 [詳解]
 
- 基底クラス LibCommon::CConsoleMenu に属する継承静的限定公開メンバ関数
static DWORD WINAPI SubThreadProc (LPVOID lpParam) noexcept
 サブスレッド関数 [詳解]
 
- 基底クラス LibCommon::CConsoleMenu に属する継承限定公開変数類
SMenuInfo const * m_psMenuInfo
 メニュー定義情報構造体ポインタ [詳解]
 
CEvent m_cEventRequest
 要求イベント [詳解]
 
CEvent m_cEventNotify
 通知イベント [詳解]
 
CEvent m_cEventFinish
 終了イベント [詳解]
 
CThread m_cThreadSub
 サブスレッド [詳解]
 
int m_nMenuIndex
 メニュー項目インデックス [詳解]
 
int m_nRepeat
 リピートカウント [詳解]
 
bool m_bRepeat
 リピート実行フラグ [詳解]
 
bool m_bSubMenu
 サブメニュー要求フラグ [詳解]
 
CConsoleMenum_pcSubMenu
 サブメニューポインタ [詳解]
 
CConsoleMenum_pcParent
 親メニューポインタ [詳解]
 
- 基底クラス LibCommon::CMutex に属する継承限定公開変数類
DWORD m_dwLockCount
 ロックカウント [詳解]
 
- 基底クラス LibCommon::CSync に属する継承限定公開変数類
HANDLE m_hObject
 オブジェクトハンドル [詳解]
 
bool m_bIsCreate
 新規作成フラグ [詳解]
 
- 基底クラス LibCommon::CConsoleMenu に属する継承静的限定公開変数類
static wchar_t const *const ITEM_KEY_LIST = L"123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
 項目選択文字リスト [詳解]
 
static bool s_bStopMenu = false
 メニュー中止要求フラグ [詳解]
 
- 基底クラス LibCommon::CMutex に属する継承静的限定公開変数類
static wchar_t const *const OBJECT_NAME_EXT = L".CMutex"
 オブジェクト名拡張子 [詳解]
 

詳解

テストアプリケーションメニュー基底クラス

テストアプリケーションメニュー基底クラスです。

注意
なし

CAppTestMenuBase.h31 行目に定義があります。

構築子と解体子

AppTest::CAppTestMenuBase::CAppTestMenuBase ( SMenuInfo const *  psMenuInfo)
explicitnoexcept

コンストラクタ

コンストラクタです。

引数
[in]psMenuInfoメニュー定義情報構造体ポインタ
戻り値
なし
注意
なし

CAppTestMenuBase.cpp30 行目に定義があります。

参照元 ~CAppTestMenuBase().

32  : CConsoleMenu( psMenuInfo )
33  {}
CConsoleMenu(SMenuInfo const *psMenuInfo) noexcept
コンストラクタ

被呼び出し関係図:

virtual AppTest::CAppTestMenuBase::~CAppTestMenuBase ( )
inlinevirtualnoexcept

デストラクタ

デストラクタです。

引数
なし
戻り値
なし
注意
なし

CAppTestMenuBase.h55 行目に定義があります。

参照先 CAppTestMenuBase(), operator=(), OutputFinishMessage().

55 {}

呼び出し関係図:

AppTest::CAppTestMenuBase::CAppTestMenuBase ( CAppTestMenuBase const &  )
privatedelete

関数詳解

bool AppTest::CAppTestMenuBase::OutputFinishMessage ( wchar_t const *  pszFormat,
  ... 
)
staticnoexcept

終了メッセージ出力関数

終了メッセージ出力関数です。

引数
[in]pszFormat書式設定文字列ポインタ
[in]...可変長引数リスト
戻り値
実行結果
  • true 成功
  • false 失敗
注意
なし

CAppTestMenuBase.cpp39 行目に定義があります。

参照先 ConsoleLine, ConsoleNewLine, LibCommon::CString::FormatArgs().

参照元 AppTest::CAppTestMenuWindow::ShowWindowInfo(), ~CAppTestMenuBase().

39  {
40  // 引数リストを作成する
41  va_list vaArgs;
42  va_start( vaArgs, pszFormat );
43 
44  // 処理ブロック
45  bool result = false;
46  do {
47  // 書式設定文字列を展開する
48  CString cString;
49  wchar_t const* pszText = cString.FormatArgs( pszFormat, vaArgs );
50  if ( nullptr == pszText ) {
51  // 失敗!
52  break;
53  }
54 
55  // コンソールに行出力する
56  ConsoleLine( pszText );
58 
59  // 成功!
60  result = true;
61  } while ( false );
62 
63  // 引数リストを解放する
64  va_end( vaArgs );
65 
66  // 実行結果を返す
67  return result;
68  }
#define ConsoleNewLine()
改行出力マクロ
Definition: CConsole.h:29
#define ConsoleLine(...)
ヘッダインデントなし書式設定文字列行出力マクロ
Definition: CConsole.h:34

呼び出し関係図:

被呼び出し関係図:

CAppTestMenuBase& AppTest::CAppTestMenuBase::operator= ( CAppTestMenuBase const &  )
privatedelete

参照元 ~CAppTestMenuBase().

被呼び出し関係図:


このクラス詳解は次のファイルから抽出されました: