|
Solution46
|
コンソール入出力クラス [詳解]
#include "CConsole.h"


クラス | |
| struct | SInputRecord |
| 入力レコード構造体 [詳解] | |
公開メンバ関数 | |
| CConsole () noexcept | |
| コンストラクタ [詳解] | |
| virtual | ~CConsole () noexcept |
| デストラクタ [詳解] | |
| virtual int | GetInputCount () const noexcept |
| 入力レコード数取得関数 [詳解] | |
| virtual void | StopInput () noexcept |
| 入力中止要求関数 [詳解] | |
| virtual bool | OutputString (wchar_t const *pszString) noexcept override |
| 文字列出力関数 [詳解] | |
| virtual bool | InputChar (wchar_t &rCh) noexcept override |
| 1文字入力関数 [詳解] | |
| virtual int | InputString (wchar_t *pszBuffer, int nSize) noexcept override |
| 文字列入力関数 [詳解] | |
| virtual bool | InputChar (wchar_t &rCh, DWORD dwTime) noexcept |
| 1文字入力関数 [詳解] | |
| virtual int | InputString (wchar_t *pszBuffer, int nSize, DWORD dwTime) noexcept |
| 文字列入力関数 [詳解] | |
| virtual int | InputString (wchar_t *pszBuffer, int nSize, wchar_t const *pszString, DWORD dwTime=INFINITE) noexcept |
| 文字列入力関数 [詳解] | |
| virtual void | ClearInputBuffer () noexcept |
| 入力バッファクリア関数 [詳解] | |
| virtual bool | InputRecord (SInputRecord &rsRecord, DWORD dwTime) noexcept |
| 入力レコード取得関数 [詳解] | |
| virtual int | HitAnyKey (wchar_t const *pszString=nullptr, DWORD dwTime=INFINITE) noexcept |
| キー入力待ち関数 [詳解] | |
| virtual bool | YesNoKey (wchar_t const *pszString=nullptr, DWORD dwTime=INFINITE) 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 |
| ウェイト関数 [詳解] | |
基底クラス LibCommon::CStream に属する継承公開メンバ関数 | |
| virtual int | GetStreamSize () const noexcept |
| ストリームサイズ取得関数 [詳解] | |
| virtual int | GetStreamPoint () const noexcept |
| ストリームポインタ取得関数 [詳解] | |
| virtual bool | SetStreamPoint (int nPoint) noexcept |
| ストリームポインタ設定関数 [詳解] | |
| virtual bool | SetStreamEnd () noexcept |
| ストリーム終端設定関数 [詳解] | |
| virtual bool | IsStreamEnd () const noexcept |
| ストリーム終端状態取得関数 [詳解] | |
| virtual bool | SkipSpace () noexcept |
| 空白スキップ関数 [詳解] | |
| virtual bool | SkipChar (wchar_t ch, bool bIgnore=false) noexcept |
| 1文字スキップ関数 [詳解] | |
| virtual bool | SkipChar (wchar_t const *pszString, bool bIgnore=false) noexcept |
| 1文字スキップ関数 [詳解] | |
| virtual bool | PushStreamPoint (CArray< int > *pcPointerList) noexcept |
| ストリームポインタプッシュ関数 [詳解] | |
| virtual bool | PopStreamPoint (CArray< int > *pcPointerList, bool bResume) noexcept |
| ストリームポインタポップ数 [詳解] | |
基底クラス LibCommon::CStreamOut に属する継承公開メンバ関数 | |
| virtual bool | OutputChar (wchar_t ch) noexcept |
| 1文字出力関数 [詳解] | |
| virtual bool | OutputFormat (wchar_t const *pszFormat,...) noexcept |
| 書式設定文字列出力関数 [詳解] | |
| virtual bool | OutputArgs (wchar_t const *pszFormat, va_list vaArgs) noexcept |
| 引数リスト文字列出力関数 [詳解] | |
| virtual bool | OutputNewLine () noexcept |
| 改行出力関数 [詳解] | |
| virtual bool | OutputLineHeader () noexcept |
| 行ヘッダー出力関数 [詳解] | |
| virtual bool | UpdateLineNumber () noexcept |
| 行番号更新関数 [詳解] | |
| virtual int | GetLineNumber () noexcept |
| 行番号取得関数 [詳解] | |
| virtual int | GetIndentCount () noexcept |
| インデントカウント取得関数 [詳解] | |
| virtual bool | OutputIndent () noexcept |
| インデント出力関数 [詳解] | |
| virtual bool | Indent () noexcept |
| インデント関数 [詳解] | |
| virtual bool | Unindent () noexcept |
| アンインデント関数 [詳解] | |
| virtual bool | OutputLineString (wchar_t const *pszString, bool bHeader=true, bool bIndent=true) noexcept |
| 文字列行出力関数 [詳解] | |
| virtual bool | OutputLineFormat (wchar_t const *pszFormat,...) noexcept |
| 書式設定文字列行出力関数 [詳解] | |
| virtual bool | OutputLineArgs (wchar_t const *pszFormat, va_list vaArgs) noexcept |
| 引数リスト文字列行出力関数 [詳解] | |
| virtual bool | ExOutputLineFormat (bool bHeader, bool bIndent, wchar_t const *pszFormat,...) noexcept |
| 拡張書式設定文字列行出力関数 [詳解] | |
| virtual bool | ExOutputLineArgs (bool bHeader, bool bIndent, wchar_t const *pszFormat, va_list vaArgs) noexcept |
| 拡張引数リスト文字列行出力関数 [詳解] | |
静的公開メンバ関数 | |
| static CConsole & | GetInstance () noexcept |
| インスタンス取得関数 [詳解] | |
| static HANDLE | GetInputHandle () noexcept |
| 入力ハンドル取得関数 [詳解] | |
| static HANDLE | GetOutputHandle () noexcept |
| 出力ハンドル取得関数 [詳解] | |
| static HWND | GetWindowHandle () noexcept |
| ウィンドウハンドル取得関数 [詳解] | |
| static bool | GetFontSize (int &rnWidth, int &rnHeight) noexcept |
| フォントサイズ取得関数 [詳解] | |
| static bool | GetSize (int &rnWidth, int &rnHeight) noexcept |
| 出力バッファサイズ取得関数 [詳解] | |
| static bool | SetBufferSize (int nWidth, int nHeight) noexcept |
| 出力バッファサイズ設定関数 [詳解] | |
| static bool | GetBufferPosition (int &rnLeft, int &rnTop) noexcept |
| 出力バッファ表示位置取得関数 [詳解] | |
| static bool | SetBufferPosition (int nLeft, int nTop) noexcept |
| 出力バッファ表示位置設定関数 [詳解] | |
| static bool | GetBufferArea (int &rnLeft, int &rnTop, int &rnWidth, int &rnHeight) noexcept |
| 出力バッファ表示領域取得関数 [詳解] | |
| static bool | SetBufferArea (int nLeft, int nTop, int nWidth, int nHeight) noexcept |
| 出力バッファ表示領域設定関数 [詳解] | |
| static bool | GetWindowArea (int &rnLeft, int &rnTop, int &rnWidth, int &rnHeight) noexcept |
| ウィンドウ表示領域取得関数 [詳解] | |
| static bool | SetWindowArea (int nLeft, int nTop, int nWidth, int nHeight) noexcept |
| ウィンドウ表示領域設定関数 [詳解] | |
| static bool | GetCursorPosition (int &rnX, int &rnY) noexcept |
| カーソル位置取得関数 [詳解] | |
| static bool | SetCursorPosition (int nX, int nY) noexcept |
| カーソル位置設定関数 [詳解] | |
| static bool | GetCursor (COORD &rsCursor) noexcept |
| カーソル位置取得関数 [詳解] | |
| static bool | SetCursor (COORD const &rsCursor) noexcept |
| カーソル位置設定関数 [詳解] | |
| static bool | ScrollWindow (int nX, int nY) noexcept |
| ウィンドウスクロール関数 [詳解] | |
| static bool | InputDirect (wchar_t &rCh) noexcept |
| コンソール入力バッファ直接入力関数 [詳解] | |
| static bool | KbHitDirect () noexcept |
| コンソール入力バッファ直接検査関数 [詳解] | |
静的限定公開メンバ関数 | |
| static DWORD WINAPI | SubThreadProc (LPVOID lpParam) noexcept |
| サブスレッド関数 [詳解] | |
限定公開変数類 | |
| wchar_t | m_szBuffer [BUFFER_SIZE+1] |
| 文字列バッファ [詳解] | |
| SInputRecord | m_sRecordBuffer [RECORD_SIZE] |
| 入力レコードリングバッファ [詳解] | |
| int | m_nRecordPos |
| 入力レコード先頭位置 [詳解] | |
| int | m_nRecordCount |
| 入力レコードカウント [詳解] | |
| COORD | m_sMaxCursor |
| 最大カーソル位置 [詳解] | |
| CThread | m_cThreadSub |
| サブスレッド [詳解] | |
| bool | m_bStopInput |
| 入力中止要求フラグ [詳解] | |
基底クラス LibCommon::CMutex に属する継承限定公開変数類 | |
| DWORD | m_dwLockCount |
| ロックカウント [詳解] | |
基底クラス LibCommon::CSync に属する継承限定公開変数類 | |
| HANDLE | m_hObject |
| オブジェクトハンドル [詳解] | |
| bool | m_bIsCreate |
| 新規作成フラグ [詳解] | |
基底クラス LibCommon::CStreamOut に属する継承限定公開変数類 | |
| int | m_nLine |
| 行番号 [詳解] | |
| int | m_nIndent |
| インデントカウント [詳解] | |
静的限定公開変数類 | |
| static int const | BUFFER_SIZE = ( 512 - 1 ) |
| 文字列バッファサイズ [詳解] | |
| static int const | RECORD_SIZE = 512 |
| 入力レコードリングバッファサイズ [詳解] | |
| static int const | KBHIT_RECORD_SIZE = 32 |
| 直接入力検査レコードバッファサイズ [詳解] | |
| static CConsole | s_cInstance |
| 静的インスタンス [詳解] | |
基底クラス LibCommon::CMutex に属する継承静的限定公開変数類 | |
| static wchar_t const *const | OBJECT_NAME_EXT = L".CMutex" |
| オブジェクト名拡張子 [詳解] | |
基底クラス LibCommon::CStreamOut に属する継承静的限定公開変数類 | |
| static int const | FORMAT_BUFFER_SIZE = ( 2048 - 1 ) |
| 書式設定文字列バッファサイズ [詳解] | |
非公開メンバ関数 | |
| CConsole (CConsole const &)=delete | |
| CConsole & | operator= (CConsole const &)=delete |
その他の継承メンバ | |
基底クラス LibCommon::CStream に属する継承限定公開メンバ関数 | |
| CStream () noexcept | |
| コンストラクタ [詳解] | |
| virtual | ~CStream () noexcept |
| デストラクタ [詳解] | |
基底クラス LibCommon::CStreamOut に属する継承限定公開メンバ関数 | |
| CStreamOut () noexcept | |
| コンストラクタ [詳解] | |
| virtual | ~CStreamOut () noexcept |
| デストラクタ [詳解] | |
|
explicitnoexcept |
コンストラクタ
コンストラクタです。
| なし |
CConsole.cpp の 31 行目に定義があります。
参照先 LibCommon::CMutex::Create(), NotifyConstructor, NotifyFatalError, SubThreadProc().

|
virtualnoexcept |
デストラクタ
デストラクタです。
| なし |
CConsole.cpp の 61 行目に定義があります。
参照先 LibCommon::CThread::Close(), m_cThreadSub, NotifyDestructor.

|
privatedelete |
|
inlinevirtualnoexcept |
|
inlinevirtualnoexcept |
|
overridevirtualnoexcept |
文字列出力関数
文字列出力関数です。
| [in] | pszString | 文字列ポインタ |
LibCommon::CStreamOutを実装しています。
CConsole.cpp の 73 行目に定義があります。
参照先 BUFFER_SIZE, GetCursor(), m_sMaxCursor, m_szBuffer.
参照元 HitAnyKey(), InputString(), YesNoKey().


|
inlineoverridevirtualnoexcept |
1文字入力関数
1文字入力関数です。
| [out] | rCh | 文字コード参照 |
LibCommon::CStreamを実装しています。
CConsole.h の 173 行目に定義があります。
参照先 InputChar().
参照元 HitAnyKey(), InputChar(), YesNoKey().


|
inlineoverridevirtualnoexcept |
文字列入力関数
文字列入力関数です。
| [in] | pszBuffer | 文字列バッファポインタ |
| [in] | nSize | バッファサイズ |
LibCommon::CStreamを再実装しています。
CConsole.h の 185 行目に定義があります。
参照先 InputString().
参照元 InputString().


|
virtualnoexcept |
1文字入力関数
1文字入力関数です。
| [out] | rCh | 文字コード参照 |
| [in] | dwTime | 待機時間 |
CConsole.cpp の 132 行目に定義があります。
参照先 InputRecord(), m_bStopInput, m_cThreadSub, LibCommon::CConsole::SInputRecord::m_sEvent, LibCommon::CTimer::Wait(), LibCommon::CSync::Wait().

|
inlinevirtualnoexcept |
文字列入力関数
文字列入力関数です。
| [in] | pszBuffer | 文字列バッファポインタ |
| [in] | nSize | バッファサイズ |
| [in] | dwTime | 待機時間 |
CConsole.h の 212 行目に定義があります。
参照先 InputString().
参照元 InputString().


|
virtualnoexcept |
文字列入力関数
文字列入力関数です。
| [in] | pszBuffer | 文字列バッファポインタ |
| [in] | nSize | バッファサイズ |
| [in] | pszString | 文字列ポインタ |
| [in] | dwTime | 待機時間 |
CConsole.cpp の 186 行目に定義があります。
参照先 GetCursor(), GetSize(), InputRecord(), LibCommon::CConsole::SInputRecord::m_bControl, m_bStopInput, LibCommon::CConsole::SInputRecord::m_sEvent, LibCommon::CStreamOut::OutputChar(), OutputString(), SetCursor().

|
virtualnoexcept |
入力バッファクリア関数
入力バッファクリア関数です。
| なし |
CConsole.cpp の 510 行目に定義があります。
参照先 LibCommon::CSync::GetHandle(), GetInputHandle(), m_cThreadSub, m_nRecordCount, m_nRecordPos.
参照元 HitAnyKey(), YesNoKey().


|
virtualnoexcept |
入力レコード取得関数
入力レコード取得関数です。
| [out] | rsRecord | 入力レコード参照 |
| [in] | dwTime | 待機時間 |
CConsole.cpp の 544 行目に定義があります。
参照先 m_cThreadSub, m_nRecordCount, m_nRecordPos, m_sRecordBuffer, RECORD_SIZE, LibCommon::CSync::Wait(), LibCommon::CTimer::Wait().
参照元 InputChar(), InputString().


|
virtualnoexcept |
キー入力待ち関数
キー入力待ち関数です。
| [in] | pszString | 文字列ポインタ |
| [in] | dwTime | 待機時間 |
CConsole.cpp の 596 行目に定義があります。
参照先 ClearInputBuffer(), InputChar(), OutputString().

|
virtualnoexcept |
確認入力待ち関数
確認入力待ち関数です。
| [in] | pszString | 文字列ポインタ |
| [in] | dwTime | 待機時間 |
CConsole.cpp の 626 行目に定義があります。
参照先 ClearInputBuffer(), ConsoleLine, ConsoleNewLine, InputChar(), OutputString().

|
inlinestaticnoexcept |
|
inlinestaticnoexcept |
入力ハンドル取得関数
入力ハンドル取得関数です。
| なし |
CConsole.h の 304 行目に定義があります。
参照元 ClearInputBuffer(), InputDirect(), KbHitDirect(), SubThreadProc().

|
inlinestaticnoexcept |
出力ハンドル取得関数
出力ハンドル取得関数です。
| なし |
CConsole.h の 315 行目に定義があります。
参照元 GetBufferArea(), GetBufferPosition(), GetCursor(), GetCursorPosition(), GetFontSize(), GetSize(), ScrollWindow(), SetBufferArea(), SetBufferPosition(), SetBufferSize(), SetCursor(), SetCursorPosition().

|
inlinestaticnoexcept |
ウィンドウハンドル取得関数
ウィンドウハンドル取得関数です。
| なし |
CConsole.h の 326 行目に定義があります。
参照元 GetWindowArea(), SetWindowArea(), SubThreadProc().

|
staticnoexcept |
フォントサイズ取得関数
フォントサイズ取得関数です。
| [out] | rnWidth | 水平サイズ参照 |
| [out] | rnHeight | 垂直サイズ参照 |
CConsole.cpp の 689 行目に定義があります。
参照先 GetOutputHandle().

|
staticnoexcept |
出力バッファサイズ取得関数
出力バッファサイズ取得関数です。
| [out] | rnWidth | 水平サイズ参照 |
| [out] | rnHeight | 垂直サイズ参照 |
CConsole.cpp の 714 行目に定義があります。
参照先 GetOutputHandle().
参照元 InputString().


|
staticnoexcept |
出力バッファサイズ設定関数
出力バッファサイズ設定関数です。
| [in] | nWidth | 水平サイズ |
| [in] | nHeight | 垂直サイズ |
CConsole.cpp の 739 行目に定義があります。
参照先 GetOutputHandle().

|
staticnoexcept |
出力バッファ表示位置取得関数
出力バッファ表示位置取得関数です。
| [out] | rnLeft | 左位置参照 |
| [out] | rnTop | 上位置参照 |
CConsole.cpp の 760 行目に定義があります。
参照先 GetOutputHandle().

|
staticnoexcept |
出力バッファ表示位置設定関数
出力バッファ表示位置設定関数です。
| [in] | nLeft | 左位置 |
| [in] | nTop | 上位置 |
CConsole.cpp の 785 行目に定義があります。
参照先 GetOutputHandle().
参照元 SubThreadProc().


|
staticnoexcept |
出力バッファ表示領域取得関数
出力バッファ表示領域取得関数です。
| [out] | rnLeft | 左位置参照 |
| [out] | rnTop | 上位置参照 |
| [out] | rnWidth | 水平サイズ参照 |
| [out] | rnHeight | 垂直サイズ参照 |
CConsole.cpp の 817 行目に定義があります。
参照先 GetOutputHandle().
参照元 SubThreadProc().


|
staticnoexcept |
出力バッファ表示領域設定関数
出力バッファ表示領域設定関数です。
| [in] | nLeft | 左位置 |
| [in] | nTop | 上位置 |
| [in] | nWidth | 水平サイズ |
| [in] | nHeight | 垂直サイズ |
CConsole.cpp の 844 行目に定義があります。
参照先 GetOutputHandle().

|
staticnoexcept |
ウィンドウ表示領域取得関数
ウィンドウ表示領域取得関数です。
| [out] | rnLeft | 左座標参照 |
| [out] | rnTop | 上座標参照 |
| [out] | rnWidth | 水平サイズ参照 |
| [out] | rnHeight | 垂直サイズ参照 |
CConsole.cpp の 869 行目に定義があります。
参照先 GetWindowHandle().

|
staticnoexcept |
ウィンドウ表示領域設定関数
ウィンドウ表示領域設定関数です。
| [in] | nLeft | 左座標 |
| [in] | nTop | 上座標 |
| [in] | nWidth | 水平サイズ |
| [in] | nHeight | 垂直サイズ |
CConsole.cpp の 896 行目に定義があります。
参照先 GetWindowHandle().

|
staticnoexcept |
カーソル位置取得関数
カーソル位置取得関数です。
| [out] | rnX | 水平位置参照 |
| [out] | rnY | 垂直位置参照 |
CConsole.cpp の 914 行目に定義があります。
参照先 GetOutputHandle().

|
staticnoexcept |
カーソル位置設定関数
カーソル位置設定関数です。
| [in] | nX | 水平位置 |
| [in] | nY | 垂直位置 |
CConsole.cpp の 939 行目に定義があります。
参照先 GetOutputHandle().

|
staticnoexcept |
カーソル位置取得関数
カーソル位置取得関数です。
| [out] | rsCursor | カーソル位置構造体参照 |
CConsole.cpp の 960 行目に定義があります。
参照先 GetOutputHandle().
参照元 InputString(), OutputString().


|
staticnoexcept |
カーソル位置設定関数
カーソル位置設定関数です。
| [in] | rsCursor | カーソル位置構造体参照 |
CConsole.cpp の 984 行目に定義があります。
参照先 GetOutputHandle().
参照元 InputString().


|
staticnoexcept |
ウィンドウスクロール関数
ウィンドウスクロール関数です。
| [in] | nX | 水平スクロール量 |
| [in] | nY | 垂直スクロール量 |
CConsole.cpp の 1004 行目に定義があります。
参照先 GetOutputHandle().
参照元 SubThreadProc().


|
staticnoexcept |
コンソール入力バッファ直接入力関数
コンソール入力バッファ直接入力関数です。
| [out] | rCh | 文字コード参照 |
CConsole.cpp の 1029 行目に定義があります。
参照先 GetInputHandle().

|
staticnoexcept |
コンソール入力バッファ直接検査関数
コンソール入力バッファ直接検査関数です。
| なし |
CConsole.cpp の 1069 行目に定義があります。
参照先 GetInputHandle(), KBHIT_RECORD_SIZE.

|
staticprotectednoexcept |
サブスレッド関数
サブスレッド関数です。
| [in] | lpParam | 引数ポインタ |
CConsole.cpp の 1115 行目に定義があります。
参照先 LibCommon::Bottom, LibCommon::Full, GetBufferArea(), GetInputHandle(), GetWindowHandle(), LibCommon::Left, LibCommon::CConsole::SInputRecord::m_bControl, LibCommon::CConsole::SInputRecord::m_bMenu, LibCommon::CConsole::SInputRecord::m_bShift, m_nRecordCount, m_nRecordPos, LibCommon::CConsole::SInputRecord::m_sEvent, m_sMaxCursor, m_sRecordBuffer, NotifyFatalError, RECORD_SIZE, LibCommon::Right, ScrollWindow(), SetBufferPosition(), LibCommon::SetWindowPosition(), LibCommon::Top (計21項目).
参照元 CConsole().


|
staticprotected |
|
staticprotected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
サブスレッド
CConsole.h の 588 行目に定義があります。
参照元 ClearInputBuffer(), InputChar(), InputRecord(), ~CConsole().
|
protected |
|
staticprotected |