メインページ   名前空間一覧   クラス階層   アルファベット順一覧   構成   ファイル一覧   名前空間メンバ   構成メンバ   ファイルメンバ  

クラス KSCL::COutputTrace の解説

・トレース出力するクラスです。. より詳しく...

KSCL::COutputTraceに対する継承グラフ

Inheritance graph
[凡例]
KSCL::COutputTraceのコラボレーション図

Collaboration graph
[凡例]
すべてのメンバ一覧

公開メンバ

std::string OutputToFile ()
 ・ファイルに出力します。. より詳しく...

void OutputWin32ApiError (const std::string &p_rcFuncNameStr, const int p_iData, const int p_iLastError)
 ・ Win32 API エラーを出力します。. より詳しく...

void OutputThisAppError (const std::string &p_rcFuncNameStr, const std::string &p_rcMessageStr, const int p_iLastError)
 ・このアプリケーションでのエラーを出力します。. より詳しく...

void OutputMessage (const std::string &p_rcMsgStr, WPARAM p_wParam, LPARAM p_lParam)
 メッセージのトレースを出力します。. より詳しく...

void OutputThisLine (const char *const p_pchFile, const int p_iLine)
 ・行をトレースして出力します。. より詳しく...

void OutputString (const std::string &p_rcName1Str, const std::string &p_rcName2Str, const std::string &p_rcName3Str)
 ・文字列を出力します。. より詳しく...

void OutputNum (const std::string &p_rcNameStr, const int p_iData1, const int p_iData2)
 ・整数値を出力します。. より詳しく...


公開属性

friend COutputTraceCreater

非公開メンバ

 COutputTrace (const COutputTrace &)
void operator= (const COutputTrace &)
 COutputTrace (const int p_iQueueSize=1000, const std::string &p_rcFolderPathStr="", const std::string &p_rcFileSuffixStr=".log")
 ・コンストラクタ。. より詳しく...

virtual ~COutputTrace ()
 ・デストラクタ。. より詳しく...

virtual void SetOutputMessageInQueue (const std::string &p_rcMessageStr)
 ・出力情報をキューに追加します。. より詳しく...


非公開属性

CRITICAL_SECTION m_stCriticalSection
 クリティカルセクション用構造体。. より詳しく...


解説

・トレース出力するクラスです。.

 このクラスが提供する「トレース出力機能」とは、プログラムの中の流れをキューに 取っておき、エラーが発生した場合などに全部まとめて出力するというものです。
 このような機能は通常ログとして実現されますが、システムの関係上、常にログファイルに 出力すると処理の負担になったりログファイルのサイズ増大が問題になったりします。
 このトレース出力機能では、出力データをすべてメモリの中に取っておいて、必要な時に ファイルに出力できるようにしてあります。そのため、前述の問題はありません。また、 出力内容はキューに保存され最新のデータのみ管理するようになっているため、メモリを 余分に消費することもありません。
 唯一の問題点は、常にファイルに出力していない関係で、致命的エラーが発生した時に ログを出力することができないという場合があることですが、例外処理をうまく活用することで よっぽどのことがない限り出力できると思います。
 ちなみに、実際にはこのクラスは使用せず、 OUTPUT_WIN32API_ERROR() 等を使用することを お勧めします。


コンストラクタとデストラクタの解説

KSCL::COutputTrace::COutputTrace const COutputTrace &    [inline, private]
 

KSCL::COutputTrace::COutputTrace const int    p_iQueueSize = 1000,
const std::string &    p_rcFolderPathStr = "",
const std::string &    p_rcFileSuffixStr = ".log"
[private]
 

・コンストラクタ。.

 初期化を行います。

引数:
p_iQueueSize  キューのサイズ。
p_rcFolderPathStr  出力先フォルダのパス。
p_rcFileSuffixStr  出力ファイルのサフィックス。

KSCL::COutputTrace::~COutputTrace   [private, virtual]
 

・デストラクタ。.

 特に何もしません。


メンバ関数の解説

void KSCL::COutputTrace::operator= const COutputTrace &    [inline, private]
 

void KSCL::COutputTrace::SetOutputMessageInQueue const std::string &    p_rcMessageStr [private, virtual]
 

・出力情報をキューに追加します。.

 マルチスレッド用にロックを掛けて、キューにデータを追加します。

引数:
p_rcMessageStr  出力する文字列。

std::string KSCL::COutputTrace::OutputToFile  
 

・ファイルに出力します。.

 キューの中身すべてを、コンストラクタで指定されたファイルに出力します。

戻り値:
出力先ファイルパス。

void KSCL::COutputTrace::OutputWin32ApiError const std::string &    p_rcFuncNameStr,
const int    p_iData,
const int    p_iLastError
 

・ Win32 API エラーを出力します。.

引数:
p_rcFuncNameStr  発生した関数の名前。
p_iData  エラー値等の整数値データ。
p_iLastError  エラーコード。デフォルトは GetLastError() の値。

void KSCL::COutputTrace::OutputThisAppError const std::string &    p_rcFuncNameStr,
const std::string &    p_rcMessageStr,
const int    p_iLastError
 

・このアプリケーションでのエラーを出力します。.

引数:
p_rcFuncNameStr  発生した関数の名前。
p_rcMessageStr  エラーメッセージ
p_iLastError  エラーコード。デフォルトは GetLastError() の値。

void KSCL::COutputTrace::OutputMessage const std::string &    p_rcMsgStr,
WPARAM    p_wParam,
LPARAM    p_lParam
 

メッセージのトレースを出力します。.

引数:
p_rcMsgStr  メッセージ名。
p_wParam  渡された WPARAM 。
p_lParam  渡された LPARAM 。

void KSCL::COutputTrace::OutputThisLine const char *const    p_pchFile,
const int    p_iLine
 

・行をトレースして出力します。.

引数:
p_pchFile  ソースファイルのパス。
p_iLine  行番号。

void KSCL::COutputTrace::OutputString const std::string &    p_rcName1Str,
const std::string &    p_rcName2Str,
const std::string &    p_rcName3Str
 

・文字列を出力します。.

引数:
p_rcName1Str  文字列1。
p_rcName2Str  文字列2。
p_rcName3Str  文字列3。

void KSCL::COutputTrace::OutputNum const std::string &    p_rcNameStr,
const int    p_iData1,
const int    p_iData2
 

・整数値を出力します。.

引数:
p_rcNameStr  データの名前。
p_iData1  データ1。
p_iData2  データ2。


メンバの解説

CRITICAL_SECTION KSCL::COutputTrace::m_stCriticalSection [private]
 

クリティカルセクション用構造体。.

friend KSCL::COutputTrace::COutputTraceCreater
 


KSCL(KAB-studioClassLibrary)に対してThu Jun 12 09:55:47 2003に生成されました。 doxygen1.2.15