TNB Library
公開メンバ関数 | 限定公開メンバ関数 | 全メンバ一覧
CDeepFileFinderT< TYP > クラステンプレート

ディープファイル検索クラス [詳解]

#include <TnbDeepFileFinder.h>

公開メンバ関数

 CDeepFileFinderT (void)
 コンストラクタ [詳解]
 
DWORD Execute (LPCTSTR lpszPath)
 [実行] 検索開始. [詳解]
 

限定公開メンバ関数

void OndemandStop (DWORD result)
 [依頼] 停止依頼. [詳解]
 
virtual void OnFoundFile (LPCTSTR lpszFoundName, const WIN32_FIND_DATA &data, int depth)
 [通知] ファイル発見通知. [詳解]
 
virtual bool OnFoundFolder (LPCTSTR lpszFoundFolder, const WIN32_FIND_DATA &data, int depth)
 [通知] フォルダ発見通知. [詳解]
 
virtual void OnStartFindFolder (TYP &finder, LPCTSTR lpszTargetPath, int depth)
 [通知] フォルダ検索開始通知. [詳解]
 

詳解

template<typename TYP = CFileFinder>
class TNB::CDeepFileFinderT< TYP >

ディープファイル検索クラス

ディレクトリを深く掘り込んで検索するクラスです。
本クラスを継承し、 OnStartFindFolder() , OnFoundFolder() , OnFoundFile() に処理を実装します。
必要ファイル
TnbDeepFileFinder.h
日付
09/07/16 新規作成
09/09/29 OndemandStop() で指定した値が Execute() の戻り値にならないバグを修正。

TnbDeepFileFinder.h34 行目に定義があります。

構築子と解体子

◆ CDeepFileFinderT()

CDeepFileFinderT ( void  )

コンストラクタ

TnbDeepFileFinder.h39 行目に定義があります。

関数詳解

◆ Execute()

DWORD Execute ( LPCTSTR  lpszPath)

[実行] 検索開始.

引数
lpszPath検索を開始するパスを指定します。
戻り値
リザルト( OndemandStop() で指定した値)。

TnbDeepFileFinder.h53 行目に定義があります。

◆ OndemandStop()

void OndemandStop ( DWORD  result)
protected

[依頼] 停止依頼.

検索の停止を指示します。

覚え書き
OnStartFindFolder(), OnFoundFolder() , OnFoundFile() 内から、使用します。
引数
resultリザルト。 Execute() の戻り値を指定できます。

TnbDeepFileFinder.h70 行目に定義があります。

◆ OnFoundFile()

virtual void OnFoundFile ( LPCTSTR  lpszFoundName,
const WIN32_FIND_DATA &  data,
int  depth 
)
protectedvirtual

[通知] ファイル発見通知.

ファイルを発見すると通知します。

覚え書き
検索を停止したい場合、 OndemandStop() を呼び出してください。
引数
lpszFoundName発見したファイル名
data発見したファイルの情報
depth深さ。最初のフォルダ層が1で、以下深くなるごとに+1されます。

TnbDeepFileFinder.h114 行目に定義があります。

◆ OnFoundFolder()

virtual bool OnFoundFolder ( LPCTSTR  lpszFoundFolder,
const WIN32_FIND_DATA &  data,
int  depth 
)
protectedvirtual

[通知] フォルダ発見通知.

フォルダを発見すると通知します。

覚え書き
検索を停止したい場合、 OndemandStop() を呼び出してください。
引数
lpszFoundFolder発見したフォルダ名
data発見したフォルダの情報
depth深さ。最初のフォルダ層が1で、以下深くなるごとに+1されます。
戻り値
trueこのフォルダ内の検索を行う。
falseこのフォルダ内の検索は行わない。

TnbDeepFileFinder.h98 行目に定義があります。

◆ OnStartFindFolder()

virtual void OnStartFindFolder ( TYP &  finder,
LPCTSTR  lpszTargetPath,
int  depth 
)
protectedvirtual

[通知] フォルダ検索開始通知.

フォルダの検索開始を通知します。

覚え書き
検索を停止したい場合、 OndemandStop() を呼び出してください。
引数
[in,out]finder検索に使用するファインダー。必要に応じて設定をしてください。
[in]lpszTargetPath対象のフォルダ名
[in]depth深さ。最初のフォルダ層が1で、以下深くなるごとに+1されます。

TnbDeepFileFinder.h84 行目に定義があります。