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 */
|