{$X+,I-,R-}

Unit DLL30;

{Copyright Jan Dekkers / Kevin Adams of SkyLine Tools}

interface
{------------------------------------------------------------------------}

uses
  WinProcs, WinTypes, Graphics, SYSUtils, Dialogs,
  Classes, Controls, StdCtrls, ExtCtrls, Messages;

{------------------------------------------------------------------------}
type
 TCallBackFunction = function (I : Integer) : Integer cdecl;
{------------------------------------------------------------------------}

Type
  PBitmapInfoHeader = ^TBitmapInfoHeader;     { Ptr to Win 3.x DIB header }
  PBitmapCoreHeader = ^TBitmapCoreHeader;     { Ptr to OS/2 1.x DIB header }
{------------------------------------------------------------------------}

type
  TResolution = (Color16, Color256, ColorTrue);
{------------------------------------------------------------------------}

Const
  WM_Trigger =  WM_USER + 1;
  WM_CTrigger = WM_USER + 2;
{------------------------------------------------------------------------}

{Credit Message call}
Function ReadCreditFromFile(Fn       : TFilename;
                        Var Font     : TFont;
                        Var Speed    : Integer;
                        Var BColor   : Tcolor;
                        Var MsgList  : TStringList) : Boolean;
{------------------------------------------------------------------------}
{Credit Message call}
Function ReadCreditFromStream(TSM      : TStream;
                          Var Font     : TFont;
                          Var Speed    : Integer;
                          Var BColor   : Tcolor;
                          Var MsgList  : TStringList) : Boolean;
{------------------------------------------------------------------------}

{Credit Message call}
procedure WriteCreditToFile(Fn       : TFilename;
                            Font     : TFont;
                            Speed    : Integer;
                            BColor   : Tcolor;
                            MsgList  : TStringList);
{------------------------------------------------------------------------}
{Credit Message call}
Function  WriteCreditToStream(Font   : TFont;
                              Speed  : Integer;
                              BColor : Tcolor;
                              MsgList: TStringList;
                              Po     : PChar) : Integer;
{------------------------------------------------------------------------}

{Scrolling Message call}
Function ReadMessageFromFile(Fn       : TFilename;
                         Var Font     : TFont;
                         Var Speed    : Integer;
                         Var BColor   : Tcolor;
                         Var Msg      : String) : Boolean;
{------------------------------------------------------------------------}

{Scrolling Message call}
procedure WriteMessageToFile(Fn       : TFilename;
                             Font     : TFont;
                             Speed    : Integer;
                             BColor   : Tcolor;
                             Msg      : String);
{------------------------------------------------------------------------}

{Scrolling Message call}
Function ReadMessageFromStream(TSM    : TStream;
                           Var Font   : TFont;
                           Var Speed  : Integer;
                           Var BColor : Tcolor;
                           Var Msg    : String) : Boolean;
{------------------------------------------------------------------------}

{Scrolling Message call}
Function  WriteMessageToStream(Font   : TFont;
                               Speed  : Integer;
                               BColor : Tcolor;
                               Msg    : String;
                               Po     : PChar) : Integer;
{------------------------------------------------------------------------}

{Pascal type String to pChar}
Function PasStr( PStr : String) : PChar;

{------------------------------------------------------------------------}

{interface call}
Function pngfile(Filename          : String;
                 Resolution        : Integer;
                 Dither            : Integer;
            var  Bitmap            : TBitmap;
         CallBackFunction          : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function jpgfile(Filename          : String;
                 Resolution        : Integer;
                 Dither            : Integer;
            var  Bitmap            : TBitmap;
           CallBackFunction        : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putjpgfile(Filename       : String;
                    Quality        : Integer;
                    Smooth         : Integer;
                    Bitmap         : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putbmpfile(Filename       : String;
                    Resolution     : Integer;
                    Bitmap         : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putpcxfile(Filename       : String;
                    Resolution     : Integer;
                    Bitmap         : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putpngfile(Filename       : String;
                    Resolution     : Integer;
                    Interlaced     : Integer;
                    Bitmap         : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putgiffile(Filename       : String;
                    Resolution     : Integer;
                    Bitmap         : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function giffile(Filename          : String;
                 Resolution        : Integer;
                 Dither            : Integer;
            var  Bitmap            : TBitmap;
         CallBackFunction          : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function bmpfile(Filename          : String;
                 Resolution        : Integer;
                 Dither            : Integer;
            var  Bitmap            : TBitmap;
         CallBackFunction          : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function pcxfile(Filename          : String;
                 Resolution        : Integer;
                 Dither            : Integer;
            var  Bitmap            : TBitmap;
         CallBackFunction          : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function jpgblob( FilePoint        : Pointer;
                  Size             : LongInt;
                  Resolution       : Integer;
                  Dither           : Integer;
             var  Bitmap           : TBitmap;
            CallBackFunction       : TCallBackFunction): Boolean;
{------------------------------------------------------------------------}

{interface call}
Function  gifblob(FilePoint        : Pointer;
                  Size             : LongInt;
                  Resolution       : Integer;
                  Dither           : Integer;
             var  Bitmap           : TBitmap;
            CallBackFunction       : TCallBackFunction): Boolean;
{------------------------------------------------------------------------}

{interface call}
Function  pcxblob(FilePoint        : Pointer;
                  Size             : LongInt;
                  Resolution       : Integer;
                  Dither           : Integer;
             var  Bitmap           : TBitmap;
            CallBackFunction       : TCallBackFunction): Boolean;
{------------------------------------------------------------------------}

{interface call}
Function  bmpblob(FilePoint        : Pointer;
                  Size             : LongInt;
                  Resolution       : Integer;
                  Dither           : Integer;
             var  Bitmap           : TBitmap;
            CallBackFunction       : TCallBackFunction): Boolean;
{------------------------------------------------------------------------}

{interface call}
Function  pngblob(FilePoint        : Pointer;
                  Size             : LongInt;
                  Resolution       : Integer;
                  Dither           : Integer;
             var  Bitmap           : TBitmap;
            CallBackFunction       : TCallBackFunction): Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putjpgblob(FilePoint      : Pointer;
                     var Size      : LongInt;
                      Quality      : Integer;
                       Smooth      : Integer;
                       Bitmap      : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putbmpblob(FilePoint      : Pointer;
                     var Size      : LongInt;
                   Resolution      : Integer;
                       Bitmap      : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putpcxblob(FilePoint      : Pointer;
                     var Size      : LongInt;
                   Resolution      : Integer;
                       Bitmap      : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putgifblob(FilePoint      : Pointer;
                     var Size      : LongInt;
                   Resolution      : Integer;
                       Bitmap      : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function putpngblob(FilePoint      : Pointer;
                     var Size      : LongInt;
                   Resolution      : Integer;
                   Interlaced      : Integer;
                       Bitmap      : TBitmap;
             CallBackFunction      : TCallBackFunction) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function GetBlobInfo(FilePoint     : Pointer;
                     Size          : LongInt;
                 var FileType      : String;
                 var Fwidth        : Integer;
                 var FHeight       : Integer;
                 var Fbitspixel    : Integer;
                 var Fplanes       : Integer;
                 var Fnumcolors    : Integer;
                 var Fcompression  : String) : Boolean;
{------------------------------------------------------------------------}

{interface call}
Function GetFileInfo(Filename      : String;
                 var FileType      : String;
                 var Fwidth        : Integer;
                 var FHeight       : Integer;
                 var Fbitspixel    : Integer;
                 var Fplanes       : Integer;
                 var Fnumcolors    : Integer;
                 var Fcompression  : String) : Boolean;
{------------------------------------------------------------------------}

{DLL call}
Function readpngfile(Filename      : pChar;
                     Resolution    : Integer;
                     Dither        : Integer;
                     Password      : Integer;
                 var hBMP          : HBitmap;
                 var HPAL          : HPalette;
                 CallBackFunction  : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function writepngfile(Filename     : pChar;
                      Resolution   : Integer;
                      Interlaced   : Integer;
                      Password     : Integer;
                      hBMP         : HBitmap;
                      HPAL         : HPalette;
              CallBackFunction     : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function  writepngstream(FilePoint : Pointer;
                     var Size      : LongInt;
                         Resolution: Integer;
                         Interlaced: Integer;
                         Password  : Integer;
                         hBMP      : HBitmap;
                         HPAL      : HPalette;
                  CallBackFunction : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readpngstream(FilePoint   : Pointer;
                       Size        : LongInt;
                       Resolution  : Integer;
                       Dither      : Integer;
                       Password    : Integer;
                   var hBMP        : HBitmap;
                   var HPAL        : HPalette;
                   CallBackFunction: TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;

 {------------------------------------------------------------------------}

{DLL call}
Function readjpgstream(FilePoint   : Pointer;
                       Size        : LongInt;
                       Resolution  : Integer;
                       Scale       : Integer;
                       Dither      : Integer;
                       Password    : Integer;
                   var hBMP        : HBitmap;
                   var HPAL        : HPalette;
                   CallBackFunction: TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readjpgfile(Filename      : pChar;
                     Resolution    : Integer;
                     Scale         : Integer;
                     Dither        : Integer;
                     Password      : Integer;
                 var hBMP          : HBitmap;
                 var HPAL          : HPalette;
                 CallBackFunction  : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function writejpgfile(Filename     : pChar;
                      Quality      : Integer;
                      Smooth       : Integer;
                      Password     : Integer;
                      hBMP         : HBitmap;
                      HPAL         : HPalette;
              CallBackFunction     : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function writebmpfile(Filename     : pChar;
                      Resolution   : Integer;
                      Password     : Integer;
                      hBMP         : HBitmap;
                      HPAL         : HPalette;
              CallBackFunction     : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function writegiffile(Filename     : pChar;
                      Resolution   : Integer;
                      Password     : Integer;
                      hBMP         : HBitmap;
                      HPAL         : HPalette;
              CallBackFunction     : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function writepcxfile(Filename     : pChar;
                      Resolution   : Integer;
                      Password     : Integer;
                      hBMP         : HBitmap;
                      HPAL         : HPalette;
              CallBackFunction     : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readgiffile(Filename      : pChar;
                     Resolution    : Integer;
                     Dither        : Integer;
                     Password      : Integer;
                 var hBMP          : HBitmap;
                 var HPAL          : HPalette;
                 CallBackFunction  : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readbmpfile(Filename      : pChar;
                     Resolution    : Integer;
                     Dither        : Integer;
                     Password      : Integer;
                 var hBMP          : HBitmap;
                 var HPAL          : HPalette;
                 CallBackFunction  : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readpcxfile(Filename      : pChar;
                     Resolution    : Integer;
                     Dither        : Integer;
                     Password      : Integer;
                 var hBMP          : HBitmap;
                 var HPAL          : HPalette;
                 CallBackFunction  : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readpcxstream(FilePoint   : Pointer;
                       Size        : LongInt;
                       Resolution  : Integer;
                       Dither      : Integer;
                       Password    : Integer;
                   var hBMP        : HBitmap;
                   var HPAL        : HPalette;
                   CallBackFunction: TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readbmpstream(FilePoint   : Pointer;
                       Size        : LongInt;
                       Resolution  : Integer;
                       Dither      : Integer;
                       Password    : Integer;
                   var hBMP        : HBitmap;
                   var HPAL        : HPalette;
                   CallBackFunction: TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function readgifstream(FilePoint   : Pointer;
                       Size        : LongInt;
                       Resolution  : Integer;
                       Dither      : Integer;
                       Password    : Integer;
                   var hBMP        : HBitmap;
                   var HPAL        : HPalette;
                   CallBackFunction: TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function streaminfo(FilePoint      : Pointer;
                    Size           : LongInt;
                    FileType       : PChar;
                var Fwidth         : Integer;
                var FHeight        : Integer;
                var Fbitspixel     : Integer;
                var Fplanes        : Integer;
                var Fnumcolors     : Integer;
                    Fcompression   : PChar;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function   fileinfo(Filename       : PChar;
                    FileType       : PChar;
                var Fwidth         : Integer;
                var FHeight        : Integer;
                var Fbitspixel     : Integer;
                var Fplanes        : Integer;
                var Fnumcolors     : Integer;
                    Fcompression   : PChar;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function writejpegstream(FilePoint : Pointer;
                     var Size      : LongInt;
                         Quality   : Integer;
                         Smooth    : Integer;
                         Password  : Integer;
                         hBMP      : HBitmap;
                         HPAL      : HPalette;
                  CallBackFunction : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function  writebmpstream(FilePoint : Pointer;
                     var Size      : LongInt;
                         Resolution: Integer;
                         Password  : Integer;
                         hBMP      : HBitmap;
                         HPAL      : HPalette;
                  CallBackFunction : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function  writegifstream(FilePoint : Pointer;
                     var Size      : LongInt;
                         Resolution: Integer;
                         Password  : Integer;
                         hBMP      : HBitmap;
                         HPAL      : HPalette;
                  CallBackFunction : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;
{------------------------------------------------------------------------}

{DLL call}
Function  writepcxstream(FilePoint : Pointer;
                     var Size      : LongInt;
                         Resolution: Integer;
                         Password  : Integer;
                         hBMP      : HBitmap;
                         HPAL      : HPalette;
                  CallBackFunction : TCallBackFunction;
                   ShowDllErrorMsg : Integer) : LongInt; Far;

{------------------------------------------------------------------------}

{DLL call}
Function REDUCEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function DIBTODDB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDJPGFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRJPEGFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDGIFFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDPCXFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDJPGSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDPCXSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDGIFSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRJPEGSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDBMPSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRBMPSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDBMPFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRBMPFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDPNGFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function RDPNGSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRPNGFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRPNGSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRGIFFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRGIFSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRPCXFILEDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function WRPCXSTREAMDIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{DLL call}
Function DDBTODIB : LongInt; Far;
{This DIB DLL Call is Not used in version 3.0}
{------------------------------------------------------------------------}

{ --- Utility Procedures --- }
function ValidMultiMedia(Name : PChar) : boolean;

{------------------------------------------------------------------------}

{Return the dll handle of the imagelib 3.0 dll}
Function GetLibHandle : THandle;

{------------------------------------------------------------------------}

{ --- Utility Procedures --- }
Procedure CalculateDIBData(DIBPtr            : PBitmapInfoHeader;
                       Var ColorTableEntries : Integer;
                       Var DIBImageBits      : Pointer);
{------------------------------------------------------------------------}

{ --- Utility Procedures --- }
function JustName(PathName : string) : string;
{------------------------------------------------------------------------}

{ --- Utility Procedures --- }
function JustFilename(PathName : string) : string;
{------------------------------------------------------------------------}


{Resource LoadBitMap Call}
Function Resfile(InstanceName      : String;
                 ResName           : String;
                 HW                : HWND;
            var  Bitmap            : TBitmap) : Boolean;
{------------------------------------------------------------------------}

Implementation

const
 ImageLibDLL = 'IMGLIB30';

{------------------------------------------------------------------------}
{Dll Index numbers}

const
 INDEX_FILEINFO          = 2;
 INDEX_STREAMINFO        = 3;
 INDEX_REDUCEDIB         = 4;
 INDEX_DIBTODDB          = 5;
 INDEX_READJPGFILE       = 6;
 INDEX_WRITEJPEGFILE     = 7;
 INDEX_READGIFFILE       = 8;
 INDEX_READPCXFILE       = 9;
 INDEX_READJPGSTREAM     = 10;
 INDEX_READPCXSTREAM     = 11;
 INDEX_READGIFSTREAM     = 12;
 INDEX_WRITEJPEGSTREAM   = 13;
 INDEX_READBMPSTREAM     = 14;
 INDEX_WRITEBMPSTREAM    = 15;
 INDEX_READBMPFILE       = 16;
 INDEX_WRITEBMPFILE      = 17;
 INDEX_READPNGFILE       = 18;
 INDEX_READPNGSTREAM     = 19;
 INDEX_WRITEPNGFILE      = 20;
 INDEX_WRITEPNGSTREAM    = 21;
 INDEX_WRITEGIFFILE      = 22;
 INDEX_WRITEGIFSTREAM    = 23;
 INDEX_WRITEPCXFILE      = 24;
 INDEX_WRITEPCXSTREAM    = 25;
 INDEX_RDJPGFILEDIB      = 26;
 INDEX_WRJPEGFILEDIB     = 27;
 INDEX_RDGIFFILEDIB      = 28;
 INDEX_RDPCXFILEDIB      = 29;
 INDEX_RDJPGSTREAMDIB    = 30;
 INDEX_RDPCXSTREAMDIB    = 31;
 INDEX_RDGIFSTREAMDIB    = 32;
 INDEX_WRJPEGSTREAMDIB   = 33;
 INDEX_RDBMPSTREAMDIB    = 34;
 INDEX_WRBMPSTREAMDIB    = 35;
 INDEX_RDBMPFILEDIB      = 36;
 INDEX_WRBMPFILEDIB      = 37;
 INDEX_RDPNGFILEDIB      = 38;
 INDEX_RDPNGSTREAMDIB    = 39;
 INDEX_WRPNGFILEDIB      = 40;
 INDEX_WRPNGSTREAMDIB    = 41;
 INDEX_WRGIFFILEDIB      = 42;
 INDEX_WRGIFSTREAMDIB    = 43;
 INDEX_WRPCXFILEDIB      = 44;
 INDEX_WRPCXSTREAMDIB    = 45;
 INDEX_DDBTODIB          = 46;

{------------------------------------------------------------------------}


Function fileinfo;         external ImageLibDLL index INDEX_FILEINFO;
Function streaminfo;       external ImageLibDLL index INDEX_STREAMINFO;
Function readjpgfile;      external ImageLibDLL index INDEX_READJPGFILE;
Function writejpgfile;     external ImageLibDLL index INDEX_WRITEJPEGFILE;
Function readgiffile;      external ImageLibDLL index INDEX_READGIFFILE;
Function readpcxfile;      external ImageLibDLL index INDEX_READPCXFILE;
Function readjpgstream;    external ImageLibDLL index INDEX_READJPGSTREAM;
Function readpcxstream;    external ImageLibDLL index INDEX_READPCXSTREAM;
Function readgifstream;    external ImageLibDLL index INDEX_READGIFSTREAM;
Function writejpegstream;  external ImageLibDLL index INDEX_WRITEJPEGSTREAM;
Function readbmpstream;    external ImageLibDLL index INDEX_READBMPSTREAM;
Function writebmpstream;   external ImageLibDLL index INDEX_WRITEBMPSTREAM;
Function readbmpfile;      external ImageLibDLL index INDEX_READBMPFILE;
Function writebmpfile;     external ImageLibDLL index INDEX_WRITEBMPFILE;
Function readpngfile;      external ImageLibDLL index INDEX_READPNGFILE;
Function readpngstream;    external ImageLibDLL index INDEX_READPNGSTREAM;
Function writepngfile;     external ImageLibDLL index INDEX_WRITEPNGFILE;
Function writepngstream;   external ImageLibDLL index INDEX_WRITEPNGSTREAM;
Function writegiffile;     external ImageLibDLL index INDEX_WRITEGIFFILE;
Function writegifstream;   external ImageLibDLL index INDEX_WRITEGIFSTREAM;
Function writepcxfile;     external ImageLibDLL index INDEX_WRITEPCXFILE;
Function writepcxstream;   external ImageLibDLL index INDEX_WRITEPCXSTREAM;
Function REDUCEDIB;        external ImageLibDLL index INDEX_REDUCEDIB;
Function DIBTODDB;         external ImageLibDLL index INDEX_DIBTODDB;
Function RDJPGFILEDIB;     external ImageLibDLL index INDEX_RDJPGFILEDIB;
Function WRJPEGFILEDIB;    external ImageLibDLL index INDEX_WRJPEGFILEDIB;
Function RDGIFFILEDIB;     external ImageLibDLL index INDEX_RDGIFFILEDIB;
Function RDPCXFILEDIB;     external ImageLibDLL index INDEX_RDPCXFILEDIB;
Function RDJPGSTREAMDIB;   external ImageLibDLL index INDEX_RDJPGSTREAMDIB;
Function RDPCXSTREAMDIB;   external ImageLibDLL index INDEX_RDPCXSTREAMDIB;
Function RDGIFSTREAMDIB;   external ImageLibDLL index INDEX_RDGIFSTREAMDIB;
Function WRJPEGSTREAMDIB;  external ImageLibDLL index INDEX_WRJPEGSTREAMDIB;
Function RDBMPSTREAMDIB;   external ImageLibDLL index INDEX_RDBMPSTREAMDIB;
Function WRBMPSTREAMDIB;   external ImageLibDLL index INDEX_WRBMPSTREAMDIB;
Function RDBMPFILEDIB;     external ImageLibDLL index INDEX_RDBMPFILEDIB;
Function WRBMPFILEDIB;     external ImageLibDLL index INDEX_WRBMPFILEDIB;
Function RDPNGFILEDIB;     external ImageLibDLL index INDEX_RDPNGFILEDIB;
Function RDPNGSTREAMDIB;   external ImageLibDLL index INDEX_RDPNGSTREAMDIB;
Function WRPNGFILEDIB;     external ImageLibDLL index INDEX_WRPNGFILEDIB;
Function WRPNGSTREAMDIB;   external ImageLibDLL index INDEX_WRPNGSTREAMDIB;
Function WRGIFFILEDIB;     external ImageLibDLL index INDEX_WRGIFFILEDIB;
Function WRGIFSTREAMDIB;   external ImageLibDLL index INDEX_WRGIFSTREAMDIB;
Function WRPCXFILEDIB;     external ImageLibDLL index INDEX_WRPCXFILEDIB;
Function WRPCXSTREAMDIB;   external ImageLibDLL index INDEX_WRPCXSTREAMDIB;
Function DDBTODIB;         external ImageLibDLL index INDEX_DDBTODIB;


