Solution46
|
コンソールメニュークラス [詳解]
#include "CConsoleMenu.h"
クラス | |
struct | SMenuInfo |
メニュー定義情報構造体 [詳解] | |
struct | SMenuItemInfo |
メニュー項目情報構造体 [詳解] | |
公開メンバ関数 | |
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 CConsoleMenu * | GetSubMenu () const noexcept |
サブメニュー取得関数 [詳解] | |
virtual bool | MenuCallBackProc (bool bPreCallBack=false) noexcept |
メニューコールバック関数 [詳解] | |
![]() | |
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 |
オープン関数 [詳解] | |
![]() | |
CSync () noexcept | |
コンストラクタ [詳解] | |
virtual | ~CSync () noexcept |
デストラクタ [詳解] | |
virtual HANDLE | GetHandle () const noexcept |
オブジェクトハンドル取得関数 [詳解] | |
virtual bool | IsCreate () const noexcept |
新規作成状態取得関数 [詳解] | |
virtual bool | Wait (DWORD dwTime=INFINITE) noexcept |
ウェイト関数 [詳解] | |
限定公開メンバ関数 | |
virtual bool | ExecSubThread () noexcept |
サブスレッド実行関数 [詳解] | |
静的限定公開メンバ関数 | |
static DWORD WINAPI | SubThreadProc (LPVOID lpParam) noexcept |
サブスレッド関数 [詳解] | |
限定公開変数類 | |
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 |
サブメニュー要求フラグ [詳解] | |
CConsoleMenu * | m_pcSubMenu |
サブメニューポインタ [詳解] | |
CConsoleMenu * | m_pcParent |
親メニューポインタ [詳解] | |
![]() | |
DWORD | m_dwLockCount |
ロックカウント [詳解] | |
![]() | |
HANDLE | m_hObject |
オブジェクトハンドル [詳解] | |
bool | m_bIsCreate |
新規作成フラグ [詳解] | |
静的限定公開変数類 | |
static wchar_t const *const | ITEM_KEY_LIST = L"123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" |
項目選択文字リスト [詳解] | |
static bool | s_bStopMenu = false |
メニュー中止要求フラグ [詳解] | |
![]() | |
static wchar_t const *const | OBJECT_NAME_EXT = L".CMutex" |
オブジェクト名拡張子 [詳解] | |
非公開メンバ関数 | |
CConsoleMenu (CConsoleMenu const &)=delete | |
CConsoleMenu & | operator= (CConsoleMenu const &)=delete |
|
explicitnoexcept |
コンストラクタ
コンストラクタです。
[in] | psMenuInfo | メニュー定義情報構造体ポインタ |
CConsoleMenu.cpp の 31 行目に定義があります。
参照先 NotifyFatalError.
|
inlinevirtualnoexcept |
|
privatedelete |
|
inlinevirtualnoexcept |
実行状態取得関数
実行状態取得関数です。
なし |
CConsoleMenu.h の 100 行目に定義があります。
参照元 ExecMenu(), StartMenu(), StopMenu(), AppTest::CAppTest::WmClose().
|
virtualnoexcept |
メニュー開始関数
メニュー開始関数です。
なし |
CConsoleMenu.cpp の 85 行目に定義があります。
参照先 LibCommon::CThread::Create(), IsExecMenu(), m_cEventFinish, m_cEventNotify, m_cEventRequest, m_cThreadSub, LibCommon::CEvent::Reset(), SubThreadProc().
参照元 AppTest::CAppTest::ExecApp(), ExecMenu().
|
virtualnoexcept |
メニュー実行関数
メニュー実行関数です。
なし |
CConsoleMenu.cpp の 152 行目に定義があります。
参照先 ExecMenu(), GetSubMenu(), IsExecMenu(), LibCommon::CSyncAuto::IsLock(), m_bRepeat, m_bSubMenu, m_cEventNotify, m_cEventRequest, m_pcParent, m_pcSubMenu, MenuCallBackProc(), LibCommon::CEvent::Set(), StartMenu(), LibCommon::CSync::Wait().
参照元 ExecMenu(), AppTest::CAppTest::IdleCallBackProc().
|
virtualnoexcept |
メニュー中止要求関数
メニュー中止要求関数です。
なし |
CConsoleMenu.cpp の 130 行目に定義があります。
参照先 ConsoleLine, ConsoleNewLine, ConsoleStopInput, IsExecMenu(), m_cEventFinish, s_bStopMenu, LibCommon::CSync::Wait().
参照元 AppTest::CAppTest::ExecApp(), AppTest::CAppTest::WmClose().
|
inlinevirtualnoexcept |
メニュー終了待ち関数
メニュー終了待ち関数です。
[in] | dwTime | 待機時間 |
CConsoleMenu.h の 153 行目に定義があります。
参照元 ExecSubThread().
|
inlinevirtualnoexcept |
終了可能状態取得関数
終了可能状態取得関数です。
なし |
CConsoleMenu.h の 166 行目に定義があります。
参照元 ExecSubThread().
|
inlinevirtualnoexcept |
サブメニュー取得関数
サブメニュー取得関数です。
なし |
AppTest::CAppTestMenuで再実装されています。
CConsoleMenu.h の 177 行目に定義があります。
参照元 ExecMenu().
|
inlinevirtualnoexcept |
メニューコールバック関数
メニューコールバック関数です。
[in] | bPreCallBack | 事前コールバックフラグ |
AppTest::CAppTestMenuConsole, AppTest::CAppTestMenuWindowで再実装されています。
CConsoleMenu.h の 190 行目に定義があります。
参照元 ExecMenu(), ExecSubThread().
|
protectedvirtualnoexcept |
サブスレッド実行関数
サブスレッド実行関数です。
なし |
CConsoleMenu.cpp の 226 行目に定義があります。
参照先 CanBeExit(), ConsoleInputChar, ConsoleLine, ConsoleNewLine, ConsoleString, ConsoleYesNo, ITEM_KEY_LIST, m_bRepeat, LibCommon::CConsoleMenu::SMenuItemInfo::m_bSubMenu, m_bSubMenu, m_cEventNotify, m_cEventRequest, LibCommon::CConsoleMenu::SMenuInfo::m_nCount, m_nMenuIndex, m_nRepeat, m_pcParent, m_pcSubMenu, LibCommon::CConsoleMenu::SMenuInfo::m_psItemInfo, m_psMenuInfo, LibCommon::CConsoleMenu::SMenuItemInfo::m_pszItemName, LibCommon::CConsoleMenu::SMenuInfo::m_pszName, MenuCallBackProc(), s_bStopMenu, LibCommon::CEvent::Set(), LibCommon::CSync::Wait(), WaitForMenuFinish() (計26項目).
参照元 SubThreadProc().
|
staticprotectednoexcept |
サブスレッド関数
サブスレッド関数です。
[in] | lpParam | 引数ポインタ |
CConsoleMenu.cpp の 456 行目に定義があります。
参照先 ExecSubThread(), ITEM_KEY_LIST, m_cEventFinish, NotifyFatalError, s_bStopMenu, LibCommon::CEvent::Set().
参照元 StartMenu().
|
privatedelete |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
staticprotected |