scantree.hpp
来自「7Zip软件实现: 七种编码格式的压缩与解压缩功能。」· HPP 代码 · 共 53 行
HPP
53 行
#ifndef _RAR_SCANTREE_#define _RAR_SCANTREE_enum { RECURSE_NONE=0,RECURSE_ALWAYS,RECURSE_WILDCARDS };enum { SCAN_SKIPDIRS=0,SCAN_GETDIRS,SCAN_GETDIRSTWICE,SCAN_GETCURDIRS };enum { SCAN_SUCCESS,SCAN_DONE,SCAN_ERROR,SCAN_NEXT };#define MAXSCANDEPTH (NM/2)class CommandData;class ScanTree{ private: bool PrepareMasks(); int FindProc(FindData *FindData); FindFile *FindStack[MAXSCANDEPTH]; int Depth; int SetAllMaskDepth; StringList *FileMasks; int Recurse; bool GetLinks; int GetDirs; int Errors; char CurMask[NM]; wchar CurMaskW[NM]; char OrigCurMask[NM]; wchar OrigCurMaskW[NM]; bool SearchAllInRoot; bool FastFindFile; int SpecPathLength; int SpecPathLengthW; char ErrArcName[NM]; CommandData *Cmd; public: ScanTree(StringList *FileMasks,int Recurse,bool GetLinks,int GetDirs); ~ScanTree(); int GetNext(FindData *FindData); int GetSpecPathLength() {return(SpecPathLength);}; int GetSpecPathLengthW() {return(SpecPathLengthW);}; int GetErrors() {return(Errors);}; void SetErrArcName(const char *Name) {strcpy(ErrArcName,Name);} void SetCommandData(CommandData *Cmd) {ScanTree::Cmd=Cmd;}};#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?