campo-sirio/al/cpp_all/cxl_pkng.cpp
alex 714dd74636 Archive Library versione 2.00
git-svn-id: svn://10.65.10.50/trunk@5350 c028cbd2-c16b-5b4b-a496-9718f37d4682
1997-10-09 16:09:54 +00:00

255 lines
6.5 KiB
C++
Executable File

//
// CXL_PKNGN.CPP
//
// Source file for ArchiveLib 2.0
//
// Copyright (c) Greenleaf Software, Inc. 1994-1996
// All Rights Reserved
//
// CONTENTS
//
// ALPkCompressorLevel()
// ALPkDecompressorLevel()
// ALPkCompressorSetLevel()
//
// DESCRIPTION
//
// This file contains all the C translation layer routines that provide
// member access for class ALPkCompressor and class ALPkDecompressor.
//
// Functions that simply provide a translation layer for an existing C++
// function are always located in the same file as the C++ function. The
// functions in this file don't have any existing C functions to attach
// to, since they implement either pure virtual functions or member access
// routines.
//
// REVISION HISTORY
//
// February 14, 1996 2.0A : New release
//
#include "arclib.h"
#if !defined( AL_IBM )
#pragma hdrstop
#endif
#include "pkengn.h"
//
// NAME
//
// ALPkCompressorLevel()
//
// PLATFORMS/ENVIRONMENTS
//
// Console Windows PM
// C VB Delphi
//
// SHORT DESCRIPTION
//
// Get the compression level for a PKWare compression engine.
//
// C++ SYNOPSIS
//
// None, C++ programmers have public access to the option member
// of the compressor class, so no access function is needed.
//
// C SYNOPSIS
//
// #include "arclib.h"
// #include "pkengn.h"
//
// short int ALPkCompressorLevel( hALCompressor this_object )
//
// VB SYNOPSIS
//
// Declare Function ALPkCompressorLevel Lib "AL20LW"
// (ByVal this_object& ) As Integer
//
// DELPHI SYNOPSIS
//
// function ALPkCompressorLevel( this_object : hALCompressor ) : Integer;
//
// ARGUMENTS
//
// this_object : The compressor whose option member needs to be examined.
//
// DESCRIPTION
//
// This C/VB translation function provides access to the C++ data member
// ALPkCompressor::option. The function returns a number ranging from
// 0 to 4, whose values correspond to PKWare compression levels
// Copy, Normal, Maximum, Fast, and SuperFast.
//
// This function first tests its handle argument for correct type (when in
// debug mode), then casts and returns the data member. Note that I
// increment the member by 1 when returning it. I forget why.
//
// RETURNS
//
// The option integer stored in the compression engine.
//
// EXAMPLE
//
// SEE ALSO
//
// REVISION HISTORY
//
// February 14, 1996 2.0A : New release
//
extern "C" AL_LINKAGE short int AL_FUNCTION
ALPkCompressorLevel( hALCompressor this_object ) /* Tag public function */
{
AL_ASSERT_OBJECT( this_object, ALPkCompressor, "ALPkCompressorLevel" );
return (short int) ( ( (ALPkCompressor *) this_object )->option + 1 );
}
//
// NAME
//
// ALPkDecompressorLevel()
//
// PLATFORMS/ENVIRONMENTS
//
// Console Windows PM
// C VB Delphi
//
// SHORT DESCRIPTION
//
// Get the compression level for a PKWare decompression engine.
//
// C++ SYNOPSIS
//
// None, C++ programmers have public access to the option member
// of the decompressor class, so no access function is needed.
//
// C SYNOPSIS
//
// #include "arclib.h"
// #include "pkengn.h"
//
// short int ALPkDecompressorLevel( hALDecompressor this_object )
//
// VB SYNOPSIS
//
// Declare Function ALPkDecompressorLevel Lib "AL20LW"
// (ByVal this_object& ) As Integer
//
// DELPHI SYNOPSIS
//
// function ALPkDecompressorLevel( this_object : hALDecompressor ) : Integer;
//
// ARGUMENTS
//
// this_object : The handle of the decompressor whose option member
// needs to be examined.
//
// DESCRIPTION
//
// This C/VB translation function provides access to the C++ data member
// ALPkDecompressor::option. The function returns a number ranging from
// 0 to 4, whose values correspond to PKWare compression levels
// Copy, Normal, Maximum, Fast, and SuperFast.
//
// This function first tests its handle argument for correct type (when in
// debug mode), then casts and returns the data member. Note that I
// increment the member by 1 when returning it. I forget why.
//
// RETURNS
//
// The option integer stored in the decompression engine.
//
// EXAMPLE
//
// SEE ALSO
//
// REVISION HISTORY
//
// February 14, 1996 2.0A : New release
//
extern "C" AL_LINKAGE short int AL_FUNCTION
ALPkDecompressorLevel( hALDecompressor this_object ) /* Tag public function */
{
AL_ASSERT_OBJECT( this_object, ALPkDecompressor, "ALPkDecompressorLevel" );
return (short int) (( (ALPkDecompressor *) this_object )->option + 1);
}
//
// NAME
//
// ALPkCompressorSetLevel()
//
// PLATFORMS/ENVIRONMENTS
//
// Console Windows PM
// C VB Delphi
//
// SHORT DESCRIPTION
//
// Set the compression level for a PKWare compression engine.
//
// C++ SYNOPSIS
//
// None, C++ programmers have public access to the option member
// of the compressor class, so no access function is needed.
//
// C SYNOPSIS
//
// #include "arclib.h"
// #include "pkengn.h"
//
// void ALPkCompressorSetLevel( hALCompressor this_object,
// short int level )
//
// VB SYNOPSIS
//
// Declare Sub ALPkCompressorSetLevel Lib "AL20LW"
// (ByVal this_object&, ByVal level% ) As Integer
//
// DELPHI SYNOPSIS
//
// procedure ALPkCompressorSetLevel( this_object : hALCompressor;
// level : Integer );
//
// ARGUMENTS
//
// this_object : The handle of the Compressor whose option member
// needs to be modified.
//
// level : The new setting a number from 0 to 4.
//
// DESCRIPTION
//
// This C/VB translation function provides access to the C++ data member
// ALPkCompressor::option. The member is set to a number ranging from
// 0 to 4, whose values correspond to PKWare compression levels
// Copy, Normal, Maximum, Fast, and SuperFast.
//
// This function first tests its handle argument for correct type (when in
// debug mode), then modifies the data member. Note that I
// decrement the member by 1 when storing it. I forget why.
//
// RETURNS
//
// None.
//
// EXAMPLE
//
// SEE ALSO
//
// REVISION HISTORY
//
// February 14, 1996 2.0A : New release
//
extern "C" AL_LINKAGE void AL_FUNCTION
ALPkCompressorSetLevel( hALCompressor this_object, /* Tag public function */
short int level )
{
AL_ASSERT_OBJECT( this_object, ALPkCompressor, "ALPkCompressorSetLevel" );
((ALPkCompressor *) this_object )->option = (ALPkCompressor::_option) level;
}