File Annotation

Not logged in
13b7203622 2011-02-23        kinaba: #ifndef AFX_ARCCPT_H__B5D13025_2DA9_4489_8BCB_ACB84B908A84__INCLUDED_
13b7203622 2011-02-23        kinaba: #define AFX_ARCCPT_H__B5D13025_2DA9_4489_8BCB_ACB84B908A84__INCLUDED_
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #include "Archiver.h"
13b7203622 2011-02-23        kinaba: #include "SubDlg.h"
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: class CArcCpt : public CArchiver
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: public:
13b7203622 2011-02-23        kinaba: 	CArcCpt() : CArchiver("cpt.bin.") {}
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: private:
13b7203622 2011-02-23        kinaba: 	int  v_load(){return aCheck|aMelt|aList|aMeltEach;}
13b7203622 2011-02-23        kinaba: 	bool v_check( const kiPath& aname );
13b7203622 2011-02-23        kinaba: 	int  v_contents( const kiPath& aname, kiPath& dname );
13b7203622 2011-02-23        kinaba: 	int  v_melt( const arcname& aname, const kiPath& ddir, const aflArray* files );
13b7203622 2011-02-23        kinaba: 	bool v_list( const arcname& aname, aflArray& files );
13b7203622 2011-02-23        kinaba: 	kiStr v_name(const char*) const { return "CPT"; }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	CArcProgressDlg* pdlg;
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: //-- cpt archive operations ----------------
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	unsigned int m_nMacBinOffset;
13b7203622 2011-02-23        kinaba: 	unsigned int m_nIndexPos;
13b7203622 2011-02-23        kinaba: 	unsigned int dataULen, dataCLen;
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	kiFile cpt,out;
13b7203622 2011-02-23        kinaba: 	unsigned char tmp[270]; // temp
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	bool read_main_hdr();
13b7203622 2011-02-23        kinaba: 	bool check_index_crc();
13b7203622 2011-02-23        kinaba: 	bool operation_for_each( bool o_list=true, aflArray* files=NULL );
13b7203622 2011-02-23        kinaba: 	bool recurse( bool o_list, aflArray* files, kiPath& path, int base, int num );
13b7203622 2011-02-23        kinaba: 	void cptmelt( bool isRL );
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: //-- lzh - rle -------------------------------
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #define CIRCSIZE 8192
13b7203622 2011-02-23        kinaba: 	class sf_entry
13b7203622 2011-02-23        kinaba: 	{
13b7203622 2011-02-23        kinaba: 	public:
13b7203622 2011-02-23        kinaba: 		int Value;
13b7203622 2011-02-23        kinaba: 		int BitLength;
13b7203622 2011-02-23        kinaba: 	};
13b7203622 2011-02-23        kinaba: 	class node
13b7203622 2011-02-23        kinaba: 	{
13b7203622 2011-02-23        kinaba: 	public:
13b7203622 2011-02-23        kinaba: 		int flag, byte;
13b7203622 2011-02-23        kinaba: 		node *one, *zero;
13b7203622 2011-02-23        kinaba: 	};
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	void cpt_outch( unsigned char ch );
13b7203622 2011-02-23        kinaba: 	BYTE cpt_outstat,cpt_savechar;
13b7203622 2011-02-23        kinaba: 	void cpt_rle_lzh();
13b7203622 2011-02-23        kinaba: 	int cpt_get6bits();
13b7203622 2011-02-23        kinaba: 	int cpt_getbit();
13b7203622 2011-02-23        kinaba: 	void cpt_readHuff(int size,node* Hufftree);
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	int gethuffbyte(node* l_nodelist);
13b7203622 2011-02-23        kinaba: #define SLACK 6
13b7203622 2011-02-23        kinaba: 	node cpt_Hufftree[512 + SLACK],cpt_LZlength[128 + SLACK],cpt_LZoffs[256 + SLACK];
13b7203622 2011-02-23        kinaba: 	unsigned char cpt_LZbuff[CIRCSIZE];
13b7203622 2011-02-23        kinaba: 	unsigned int cpt_LZptr;
13b7203622 2011-02-23        kinaba: 	unsigned long cpt_newbits;
13b7203622 2011-02-23        kinaba: 	int cpt_bitsavail;
13b7203622 2011-02-23        kinaba: 	int cpt_blocksize;
13b7203622 2011-02-23        kinaba: };
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #endif