⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 graphiccompression.hpp

📁 骨灰盒规范化果腹
💻 HPP
字号:
// Borland C++ Builder
// Copyright (c) 1995, 1999 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'GraphicCompression.pas' rev: 5.00

#ifndef GraphicCompressionHPP
#define GraphicCompressionHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <SysUtils.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Graphiccompression
{
//-- type declarations -------------------------------------------------------
typedef Byte *PByte;

typedef Byte TByteStream[2147483647];

typedef Byte *PByteStream;

class DELPHICLASS TDecoder;
class PASCALIMPLEMENTATION TDecoder : public System::TObject 
{
	typedef System::TObject inherited;
	
public:
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize) = 0 ;
		
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts) = 0 ;
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TDecoder(void) : System::TObject() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TDecoder(void) { }
	#pragma option pop
	
};


class DELPHICLASS TTIFFLZW;
class PASCALIMPLEMENTATION TTIFFLZW : public TDecoder 
{
	typedef TDecoder inherited;
	
private:
	unsigned FCodeSize;
	unsigned FCodeMask;
	unsigned FFreeCode;
	unsigned FOldCode;
	unsigned FPrefix[4096];
	Byte FSuffix[4096];
	Byte FStack[4096];
	Byte *FStackPointer;
	Byte *FTarget;
	Byte FFirstChar;
	Word FClearCode;
	Word FEOICode;
	bool __fastcall DecodeLZW(unsigned Code);
	
public:
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize);
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TTIFFLZW(void) : TDecoder() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TTIFFLZW(void) { }
	#pragma option pop
	
};


class DELPHICLASS TPackbitsRLE;
class PASCALIMPLEMENTATION TPackbitsRLE : public TDecoder 
{
	typedef TDecoder inherited;
	
public:
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize);
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TPackbitsRLE(void) : TDecoder() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TPackbitsRLE(void) { }
	#pragma option pop
	
};


class DELPHICLASS TPCXRLE;
class PASCALIMPLEMENTATION TPCXRLE : public TDecoder 
{
	typedef TDecoder inherited;
	
public:
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize);
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TPCXRLE(void) : TDecoder() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TPCXRLE(void) { }
	#pragma option pop
	
};


class DELPHICLASS TSGIRLE;
class PASCALIMPLEMENTATION TSGIRLE : public TDecoder 
{
	typedef TDecoder inherited;
	
public:
	Byte SampleSize;
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize);
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TSGIRLE(void) : TDecoder() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TSGIRLE(void) { }
	#pragma option pop
	
};


class DELPHICLASS TCUTRLE;
class PASCALIMPLEMENTATION TCUTRLE : public TDecoder 
{
	typedef TDecoder inherited;
	
public:
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize);
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TCUTRLE(void) : TDecoder() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TCUTRLE(void) { }
	#pragma option pop
	
};


class DELPHICLASS TGIFLZW;
class PASCALIMPLEMENTATION TGIFLZW : public TDecoder 
{
	typedef TDecoder inherited;
	
private:
	unsigned FCodeSize;
	unsigned FCodeMask;
	unsigned FFreeCode;
	unsigned FOldCode;
	unsigned FPrefix[4096];
	Byte FSuffix[4096];
	Byte FStack[4096];
	Byte *FStackPointer;
	Byte *FTarget;
	Byte FFirstChar;
	Word FClearCode;
	Word FEOICode;
	bool __fastcall DecodeLZW(unsigned Code);
	
public:
	Byte InitialCodeSize;
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize);
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TGIFLZW(void) : TDecoder() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TGIFLZW(void) { }
	#pragma option pop
	
};


class DELPHICLASS TRLADecoder;
class PASCALIMPLEMENTATION TRLADecoder : public TDecoder 
{
	typedef TDecoder inherited;
	
public:
	virtual void __fastcall Decode(void * &Source, void * Dest, int PackedSize, int UnpackedSize);
	virtual void __fastcall Encode(void * Source, void * Dest, unsigned &FByteCounts);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TRLADecoder(void) : TDecoder() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TRLADecoder(void) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
static const Word NoLZWCode = 0x1000;
extern PACKAGE int __fastcall DecodeRLE(const void * Source, const void * Target, unsigned Count, unsigned 
	ColorDepth);
extern PACKAGE int __fastcall EncodeRLE(const void * Source, const void * Target, int Count, int BPP
	);

}	/* namespace Graphiccompression */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Graphiccompression;
#endif
#pragma option pop	// -w-
#pragma option pop	// -Vx

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// GraphicCompression

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -