Solution46
|
生成消滅演算子ライブラリクラス [詳解]
#include "LibNewDel.h"
クラス | |
struct | SMappingInfo |
共有メモリ情報構造体 [詳解] | |
struct | SProcessInfo |
参照プロセス情報構造体 [詳解] | |
公開メンバ関数 | |
virtual bool & | GetLogOutFlag () noexcept |
ログ出力許可状態取得関数 [詳解] | |
virtual void | NotifyOperatorNew (void *pAddr, size_t uSize, wchar_t const *pszFuncName) noexcept |
生成演算子実行通知関数 [詳解] | |
virtual void | NotifyOperatorDelete (void *pAddr, size_t uSize, wchar_t const *pszFuncName) noexcept |
消滅演算子実行通知関数 [詳解] | |
![]() | |
CMapping () noexcept | |
コンストラクタ [詳解] | |
virtual | ~CMapping () noexcept |
デストラクタ [詳解] | |
virtual HANDLE | GetHandle () const noexcept override |
マッピングハンドル取得関数 [詳解] | |
virtual LPVOID | GetView () const noexcept |
ビューポインタ取得関数 [詳解] | |
virtual void | Close () noexcept override |
クローズ関数 [詳解] | |
virtual bool | Create (DWORD dwSize, wchar_t const *pszObjectName=nullptr) noexcept |
作成関数 [詳解] | |
virtual bool | Open (wchar_t const *pszObjectName) noexcept override |
オープン関数 [詳解] | |
![]() | |
CMutex () noexcept | |
コンストラクタ [詳解] | |
virtual | ~CMutex () noexcept |
デストラクタ [詳解] | |
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 |
作成関数 [詳解] | |
![]() | |
CSync () noexcept | |
コンストラクタ [詳解] | |
virtual | ~CSync () noexcept |
デストラクタ [詳解] | |
virtual bool | IsCreate () const noexcept |
新規作成状態取得関数 [詳解] | |
virtual bool | Wait (DWORD dwTime=INFINITE) noexcept |
ウェイト関数 [詳解] | |
静的公開メンバ関数 | |
static CLibNewDel & | GetInstance () noexcept |
インスタンス取得関数 [詳解] | |
static wchar_t const * | GetProjectType () noexcept |
プロジェクト種別取得関数 [詳解] | |
static HINSTANCE | GetInstanceHandle () noexcept |
インスタンスハンドル取得関数 [詳解] | |
限定公開メンバ関数 | |
CLibNewDel () noexcept | |
コンストラクタ [詳解] | |
virtual | ~CLibNewDel () noexcept |
デストラクタ [詳解] | |
virtual bool | UpdateProcessInfo (bool bCurrent=false) noexcept |
プロセス情報更新関数 [詳解] | |
virtual void | LogOutOperatorNewDelete (int nCount, void *pAddr, size_t uSize, LONGLONG nTotalSize, LONGLONG nMaxSize, wchar_t const *pszFuncName) noexcept |
生成消滅演算子ログ出力関数 [詳解] | |
限定公開変数類 | |
SMappingInfo * | m_psMappingInfo |
共有メモリ情報構造体ポインタ [詳解] | |
bool | m_bLogOut |
ログ出力許可フラグ [詳解] | |
![]() | |
HANDLE | m_hMapping |
マッピングハンドル [詳解] | |
LPVOID | m_pView |
ビューポインタ [詳解] | |
![]() | |
DWORD | m_dwLockCount |
ロックカウント [詳解] | |
![]() | |
HANDLE | m_hObject |
オブジェクトハンドル [詳解] | |
bool | m_bIsCreate |
新規作成フラグ [詳解] | |
静的限定公開変数類 | |
static int const | PROCESS_MAX = 256 |
最大参照プロセス数 [詳解] | |
static wchar_t const *const | OBJECT_NAME = L"LibNewDel::CLibNewDel" |
オブジェクト名 [詳解] | |
static CLibNewDel | s_cInstance |
静的インスタンス [詳解] | |
![]() | |
static wchar_t const *const | OBJECT_NAME_EXT = L".CMapping" |
オブジェクト名拡張子 [詳解] | |
![]() | |
static wchar_t const *const | OBJECT_NAME_EXT = L".CMutex" |
オブジェクト名拡張子 [詳解] | |
非公開メンバ関数 | |
CLibNewDel (CLibNewDel const &)=delete | |
CLibNewDel & | operator= (CLibNewDel const &)=delete |
|
explicitprotectednoexcept |
コンストラクタ
コンストラクタです。
なし |
LibNewDel.cpp の 36 行目に定義があります。
参照先 LibCommon::CMapping::Close(), LibCommon::CMapping::Create(), LibCommon::CMapping::GetView(), LibNewDel::CLibNewDel::SProcessInfo::m_dwProcessId, LibNewDel::CLibNewDel::SMappingInfo::m_nReffer, m_psMappingInfo, LibNewDel::CLibNewDel::SMappingInfo::m_sProcess, NotifyConstructor, NotifyFatalError, OBJECT_NAME, PROCESS_MAX.
|
protectedvirtualnoexcept |
デストラクタ
デストラクタです。
なし |
LibNewDel.cpp の 96 行目に定義があります。
参照先 NotifyDestructor, UpdateProcessInfo().
|
privatedelete |
|
inlinevirtualnoexcept |
|
virtualnoexcept |
生成演算子実行通知関数
生成演算子実行通知関数です。
[in] | pAddr | メモリアドレス |
[in] | uSize | メモリサイズ |
[in] | pszFuncName | 関数名 |
LibNewDel.cpp の 113 行目に定義があります。
参照先 LogOutOperatorNewDelete(), m_bLogOut, LibNewDel::CLibNewDel::SProcessInfo::m_dwProcessId, LibNewDel::CLibNewDel::SProcessInfo::m_nCount, LibNewDel::CLibNewDel::SMappingInfo::m_nCount, LibNewDel::CLibNewDel::SMappingInfo::m_nMaxSize, LibNewDel::CLibNewDel::SProcessInfo::m_nTotalSize, LibNewDel::CLibNewDel::SMappingInfo::m_nTotalSize, m_psMappingInfo, LibNewDel::CLibNewDel::SMappingInfo::m_sProcess, NotifyFatalError, PROCESS_MAX, UpdateProcessInfo().
|
virtualnoexcept |
消滅演算子実行通知関数
消滅演算子実行通知関数です。
[in] | pAddr | メモリアドレス |
[in] | uSize | メモリサイズ |
[in] | pszFuncName | 関数名 |
LibNewDel.cpp の 162 行目に定義があります。
参照先 LogOutOperatorNewDelete(), m_bLogOut, LibNewDel::CLibNewDel::SProcessInfo::m_dwProcessId, LibNewDel::CLibNewDel::SProcessInfo::m_nCount, LibNewDel::CLibNewDel::SMappingInfo::m_nCount, LibNewDel::CLibNewDel::SMappingInfo::m_nMaxSize, LibNewDel::CLibNewDel::SProcessInfo::m_nTotalSize, LibNewDel::CLibNewDel::SMappingInfo::m_nTotalSize, m_psMappingInfo, LibNewDel::CLibNewDel::SMappingInfo::m_sProcess, NotifyFatalError, PROCESS_MAX, UpdateProcessInfo().
|
protectedvirtualnoexcept |
プロセス情報更新関数
プロセス情報更新関数です。
[in] | bCurrent | カレントプロセス削除フラグ |
LibNewDel.cpp の 215 行目に定義があります。
参照先 LibCommon::CProcess::Close(), LogOutNoIndent, LibNewDel::CLibNewDel::SProcessInfo::m_dwProcessId, LibNewDel::CLibNewDel::SProcessInfo::m_nCount, LibNewDel::CLibNewDel::SMappingInfo::m_nCount, LibNewDel::CLibNewDel::SMappingInfo::m_nMaxSize, LibNewDel::CLibNewDel::SMappingInfo::m_nReffer, LibNewDel::CLibNewDel::SProcessInfo::m_nTotalSize, LibNewDel::CLibNewDel::SMappingInfo::m_nTotalSize, m_psMappingInfo, LibNewDel::CLibNewDel::SMappingInfo::m_sProcess, NotifyFatalError, LibCommon::CProcess::Open(), PROCESS_MAX, LibCommon::CSync::Wait() (計15項目).
参照元 NotifyOperatorDelete(), NotifyOperatorNew(), ~CLibNewDel().
|
protectedvirtualnoexcept |
生成消滅演算子ログ出力関数
生成消滅演算子ログ出力関数です。
[in] | nCount | 生成消滅カウント |
[in] | pAddr | メモリアドレス |
[in] | uSize | メモリサイズ |
[in] | nTotalSize | トータルメモリサイズ |
[in] | nMaxSize | 最大メモリサイズ |
[in] | pszFuncName | 関数名 |
LibNewDel.cpp の 304 行目に定義があります。
参照先 LogOutExeFile, LogOutNoIndent, m_bLogOut.
参照元 NotifyOperatorDelete(), NotifyOperatorNew().
|
inlinestaticnoexcept |
|
staticnoexcept |
プロジェクト種別取得関数
プロジェクト種別取得関数です。
なし |
LibNewDel.cpp の 316 行目に定義があります。
参照先 _PROJECT_TYPE.
参照元 AppTest::CAppTest::Main(), AppTest::CAppTestMenuConsole::ShowProjectInfo().
|
staticnoexcept |
インスタンスハンドル取得関数
インスタンスハンドル取得関数です。
なし |
LibNewDel.cpp の 323 行目に定義があります。
参照先 OBJECT_NAME, s_cInstance.
参照元 AppTest::CAppTest::Main(), AppTest::CAppTestMenuConsole::ShowProjectInfo().
|
privatedelete |
|
staticprotected |
最大参照プロセス数
LibNewDel.h の 181 行目に定義があります。
参照元 CLibNewDel(), NotifyOperatorDelete(), NotifyOperatorNew(), UpdateProcessInfo().
|
protected |
共有メモリ情報構造体ポインタ
LibNewDel.h の 217 行目に定義があります。
参照元 CLibNewDel(), NotifyOperatorDelete(), NotifyOperatorNew(), UpdateProcessInfo().
|
protected |
ログ出力許可フラグ
LibNewDel.h の 218 行目に定義があります。
参照元 LogOutOperatorNewDelete(), NotifyOperatorDelete(), NotifyOperatorNew().
|
staticprotected |
|
staticprotected |