File Annotation

Not logged in
13b7203622 2011-02-23        kinaba: // NoahAM.h
13b7203622 2011-02-23        kinaba: //-- CNoahArchiverManager -- control many archiver routines --
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #ifndef AFX_NOAHAM_H__CCE30761_D91B_4570_931A_6C165B19B22F__INCLUDED_
13b7203622 2011-02-23        kinaba: #define AFX_NOAHAM_H__CCE30761_D91B_4570_931A_6C165B19B22F__INCLUDED_
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #include "Archiver.h"
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: class CNoahArchiverManager
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: public: //-- 外向けインターフェイス ------------
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	// 初期化
13b7203622 2011-02-23        kinaba: 	void init();
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	// ファイルリストを記憶
13b7203622 2011-02-23        kinaba: 	unsigned long set_files( const cCharArray& files );
13b7203622 2011-02-23        kinaba: 	unsigned long file_num() { return m_FName.len(); }
13b7203622 2011-02-23        kinaba: 	const kiPath& get_basepath() { return m_BasePath; }
13b7203622 2011-02-23        kinaba: 	bool map_melters( int mode );
13b7203622 2011-02-23        kinaba: 	bool map_compressor( const char* ext, const char* method, bool sfx );
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	// 解凍( 解凍先Dir以外の情報は中で勝手に取得します )
13b7203622 2011-02-23        kinaba: 	void do_melting( kiPath& destdir );
13b7203622 2011-02-23        kinaba: 	// 閲覧( 解凍先Dir以外の情報は中で勝手に取得します )
13b7203622 2011-02-23        kinaba: 	void do_listing( kiPath& destdir );
13b7203622 2011-02-23        kinaba: 	// 圧縮
13b7203622 2011-02-23        kinaba: 	void do_compressing( kiPath& destdir, bool each );
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	// バージョン情報
13b7203622 2011-02-23        kinaba: 	void get_version( kiStr& str );
13b7203622 2011-02-23        kinaba: 	// 圧縮形式リスト
13b7203622 2011-02-23        kinaba: 	void get_cmpmethod( const char* set, int& def_mhd, StrArray& mhd_list, bool need_ext=false, cCharArray* ext_list=NULL );
13b7203622 2011-02-23        kinaba: 	// b2eが一個以上読み込まれていればtrue
13b7203622 2011-02-23        kinaba: 	bool b2e_enabled() { return m_b2e; }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: private: //-- 内部処理 ---------------------------
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	// 2重フォルダ解消など
13b7203622 2011-02-23        kinaba: 	bool break_ddir( kiPath& dir, bool onlydir );
13b7203622 2011-02-23        kinaba: 	CArchiver* fromExt( const char* ext );
13b7203622 2011-02-23        kinaba: 	void generate_dirname( const char* src, kiPath& dst, bool rmn );
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	kiPath   m_BasePath;
13b7203622 2011-02-23        kinaba: 	wfdArray m_FName;
13b7203622 2011-02-23        kinaba: 	kiArray<CArchiver*> m_AList;
13b7203622 2011-02-23        kinaba: 	kiArray<kiPath> m_BasePathList;
13b7203622 2011-02-23        kinaba: 	bool m_b2e;
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	// 解凍用割り当て
13b7203622 2011-02-23        kinaba: 	kiArray<CArchiver*> m_Melters;
13b7203622 2011-02-23        kinaba: 	// 圧縮用割り当て
13b7203622 2011-02-23        kinaba: 	CArchiver* m_Compressor;
13b7203622 2011-02-23        kinaba: 	int        m_Method;
13b7203622 2011-02-23        kinaba: 	bool       m_Sfx;
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: public:
13b7203622 2011-02-23        kinaba: 	~CNoahArchiverManager()
13b7203622 2011-02-23        kinaba: 		{
13b7203622 2011-02-23        kinaba: 			for( unsigned int i=0; i!=m_AList.len(); i++ )
13b7203622 2011-02-23        kinaba: 				delete m_AList[i];
13b7203622 2011-02-23        kinaba: 		}
13b7203622 2011-02-23        kinaba: };
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #endif