94 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
/*
 | 
						|
 * COPYENGN.H
 | 
						|
 *
 | 
						|
 *  Header file for ArchiveLib 1.0
 | 
						|
 *
 | 
						|
 *  Copyright (c) 1994 Greenleaf Software, Inc.
 | 
						|
 *  All Rights Reserved
 | 
						|
 *
 | 
						|
 * DESCRIPTION
 | 
						|
 *
 | 
						|
 *  This header file contains the class definition for the derived
 | 
						|
 *  class ALCopyEngine.
 | 
						|
 * 
 | 
						|
 * CLASS DEFINITIONS:
 | 
						|
 *
 | 
						|
 *  ALCopyEngine
 | 
						|
 *
 | 
						|
 * REVISION HISTORY
 | 
						|
 *
 | 
						|
 *  May 26, 1994  1.0A  : First release
 | 
						|
 *
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef _COPYENG_H
 | 
						|
#define _COPYENG_H
 | 
						|
 | 
						|
#include "arclib.h"
 | 
						|
 | 
						|
#if defined( __cplusplus )
 | 
						|
 | 
						|
#include "cmpengn.h"
 | 
						|
#include "storage.h"
 | 
						|
 | 
						|
/*
 | 
						|
 * class ALOpenInputFile 
 | 
						|
 *
 | 
						|
 * DESCRIPTION
 | 
						|
 *
 | 
						|
 * ALCopyEngine is a full fledged compression engine.  It just
 | 
						|
 * copies files from input to output, instead of doing something
 | 
						|
 * exciting like making them smaller.  Its principal virtue is that it
 | 
						|
 * is very fast.  If you are packing a bunch of files into an archive,
 | 
						|
 * and don't particularly need to compress them, you can use an instance of
 | 
						|
 * ALCopyEngine and get your work done quickly.
 | 
						|
 *
 | 
						|
 * DATA MEMBERS
 | 
						|
 *
 | 
						|
 *   None.
 | 
						|
 *
 | 
						|
 * MEMBER FUNCTIONS
 | 
						|
 *
 | 
						|
 *  ALCopyEngine()      : The one and only constructor.
 | 
						|
 *  ~ALCopyEngine()     : The virtual destructor.
 | 
						|
 *  operator new()      : Memory allocation operator, only used when the
 | 
						|
 *                        library is in a DLL.
 | 
						|
 *  Compress()          : The virtual compression function.
 | 
						|
 *  Decompress()        : The virtual decompression function.
 | 
						|
 *
 | 
						|
 * REVISION HISTORY
 | 
						|
 *
 | 
						|
 *  May 26, 1994  1.0A  : First release
 | 
						|
 *
 | 
						|
 */
 | 
						|
 | 
						|
class AL_CLASS_TYPE ALCopyEngine : public ALCompressionEngine {
 | 
						|
/*
 | 
						|
 * Constructors, destructors, declarations, friends
 | 
						|
 */
 | 
						|
    public :
 | 
						|
        AL_PROTO ALCopyEngine();
 | 
						|
        virtual AL_PROTO ~ALCopyEngine();
 | 
						|
#if defined( AL_USING_DLL ) || defined( AL_BUILDING_DLL )
 | 
						|
        void AL_DLL_FAR * AL_PROTO operator new( size_t size );
 | 
						|
#endif
 | 
						|
/*
 | 
						|
 * Member functions
 | 
						|
 */
 | 
						|
    public :
 | 
						|
        virtual int AL_PROTO Compress( ALStorage AL_DLL_FAR &input,
 | 
						|
                                       ALStorage AL_DLL_FAR &output );
 | 
						|
        virtual int AL_PROTO Decompress( ALStorage AL_DLL_FAR &input,
 | 
						|
                                         ALStorage AL_DLL_FAR &output,
 | 
						|
                                         long compressed_length = -1 );
 | 
						|
/*
 | 
						|
 * Data members
 | 
						|
 */
 | 
						|
    public :
 | 
						|
        AL_CLASS_TAG( _ALCompressedObjectTag );
 | 
						|
};
 | 
						|
 | 
						|
#endif /* #if defined( __cplusplus ) */
 | 
						|
 | 
						|
#endif /* #ifndef _COPYENG_H         */
 |