190 lines
14 KiB
C++
190 lines
14 KiB
C++
// CodeGear C++Builder
|
|
// Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc.
|
|
// All rights reserved
|
|
|
|
// (DO NOT EDIT: machine generated header) 'iemiscplugins.pas' rev: 37.00 (Windows)
|
|
|
|
#ifndef iemiscpluginsHPP
|
|
#define iemiscpluginsHPP
|
|
|
|
#pragma delphiheader begin
|
|
#pragma option push
|
|
#if defined(__BORLANDC__) && !defined(__clang__)
|
|
#pragma option -w- // All warnings off
|
|
#pragma option -Vx // Zero-length empty class member
|
|
#endif
|
|
#pragma pack(push,8)
|
|
#include <System.hpp>
|
|
#include <SysInit.hpp>
|
|
#include <Winapi.Windows.hpp>
|
|
#include <Winapi.Messages.hpp>
|
|
#include <System.Classes.hpp>
|
|
#include <Vcl.Graphics.hpp>
|
|
#include <System.SysUtils.hpp>
|
|
#include <hyiedefs.hpp>
|
|
#include <imageenio.hpp>
|
|
#include <hyieutils.hpp>
|
|
#include <iesettings.hpp>
|
|
#include <iexBitmaps.hpp>
|
|
|
|
//-- user supplied -----------------------------------------------------------
|
|
|
|
namespace Iemiscplugins
|
|
{
|
|
//-- forward type declarations -----------------------------------------------
|
|
class DELPHICLASS TIEMiscPluginsImageMagick;
|
|
//-- type declarations -------------------------------------------------------
|
|
typedef System::StaticArray<System::WideString, 2> Iemiscplugins__1;
|
|
|
|
typedef System::StaticArray<System::WideString, 2> Iemiscplugins__2;
|
|
|
|
typedef void * TIEImageMagick_MagickWand;
|
|
|
|
typedef System::LongBool TIEImageMagick_MagickBooleanType;
|
|
|
|
typedef unsigned __int64 TIEImageMagick_size_t;
|
|
|
|
typedef __int64 TIEImageMagick_ssize_t;
|
|
|
|
typedef __int64 TIEImageMagick_MagickOffsetType;
|
|
|
|
typedef unsigned __int64 TIEImageMagick_MagickSizeType;
|
|
|
|
typedef void * TIEImageMagick_MagicInfo;
|
|
|
|
typedef void * TIEImageMagick_ExceptionInfo;
|
|
|
|
typedef int TIEImageMagick_ExceptionType;
|
|
|
|
typedef void * TIEImageMagick_PixelWand;
|
|
|
|
enum DECLSPEC_DENUM TIEImageMagick_StorageType : unsigned int { imck_UndefinedPixel, imck_CharPixel, imck_DoublePixel, imck_FloatPixel, imck_IntegerPixel, imck_LongPixel, imck_QuantumPixel, imck_ShortPixel };
|
|
|
|
enum DECLSPEC_DENUM TIEImageMagick_ChannelType : unsigned int { imck_UndefinedChannel, imck_RedChannel, imck_GrayChannel = 1, imck_CyanChannel = 1, imck_GreenChannel, imck_MagentaChannel = 2, imck_BlueChannel = 4, imck_YellowChannel = 4, imck_AlphaChannel = 8, imck_OpacityChannel = 8, imck_MatteChannel = 8, imck_BlackChannel = 32, imck_IndexChannel = 32, imck_CompositeChannels = 47, imck_AllChannels = 134217727, imck_TrueAlphaChannel = 64, imck_RGBChannels = 128, imck_GrayChannels = 128, imck_SyncChannels = 256, imck_DefaultChannels = 134217719 };
|
|
|
|
enum DECLSPEC_DENUM TIEImageMagick_ColorspaceType : unsigned int { imck_UndefinedColorspace, imck_RGBColorspace, imck_GRAYColorspace, imck_TransparentColorspace, imck_OHTAColorspace, imck_LabColorspace, imck_XYZColorspace, imck_YCbCrColorspace, imck_YCCColorspace, imck_YIQColorspace, imck_YPbPrColorspace, imck_YUVColorspace, imck_CMYKColorspace, imck_sRGBColorspace, imck_HSBColorspace, imck_HSLColorspace, imck_HWBColorspace, imck_Rec601LumaColorspace, imck_Rec601YCbCrColorspace, imck_Rec709LumaColorspace, imck_Rec709YCbCrColorspace, imck_LogColorspace, imck_CMYColorspace, imck_LuvColorspace, imck_HCLColorspace, imck_LCHColorspace, imck_LMSColorspace, imck_LCHabColorspace, imck_LCHuvColorspace, imck_scRGBColorspace, imck_HSIColorspace, imck_HSVColorspace,
|
|
imck_HCLpColorspace, imck_YDbDrColorspace };
|
|
|
|
enum DECLSPEC_DENUM TIEImageMagick_ResolutionType : unsigned int { imck_UndefinedResolution, imck_PixelsPerInchResolution, imck_PixelsPerCentimeterResolution };
|
|
|
|
enum DECLSPEC_DENUM TIEImageMagick_ImageType : unsigned int { imck_UndefinedType, imck_BilevelType, imck_GrayscaleType, imck_GrayscaleMatteType, imck_PaletteType, imck_PaletteMatteType, imck_TrueColorType, imck_TrueColorMatteType, imck_ColorSeparationType, imck_ColorSeparationMatteType, imck_OptimizeType, imck_PaletteBilevelMatteType };
|
|
|
|
typedef TIEImageMagick_MagickBooleanType __cdecl (*TIEImageMagick_MagickProgressMonitor)(char * text, TIEImageMagick_MagickOffsetType offset, TIEImageMagick_MagickSizeType span, void * client_data);
|
|
|
|
class PASCALIMPLEMENTATION TIEMiscPluginsImageMagick : public System::TObject
|
|
{
|
|
typedef System::TObject inherited;
|
|
|
|
public:
|
|
__classmethod bool __fastcall IsAvailable();
|
|
__classmethod void __fastcall Initialize(bool reinitialize = true);
|
|
__classmethod void __fastcall Finalize();
|
|
__classmethod void __fastcall RegisterPlugin();
|
|
|
|
private:
|
|
__classmethod Winapi::Windows::THandle __fastcall HandleWand(Winapi::Windows::THandle Handle = (unsigned __int64)(0ULL), bool Setup = false);
|
|
__classmethod Winapi::Windows::THandle __fastcall HandleMagick(Winapi::Windows::THandle Handle = (unsigned __int64)(0ULL), bool Setup = false);
|
|
__classmethod void __fastcall CheckCallWand(void * &exec, System::AnsiString name);
|
|
__classmethod void __fastcall CheckCallMagick(void * &exec, System::AnsiString name);
|
|
|
|
public:
|
|
__classmethod void __fastcall MagickWandGenesis();
|
|
__classmethod void __fastcall MagickWandTerminus();
|
|
__classmethod TIEImageMagick_MagickWand __fastcall NewMagickWand();
|
|
__classmethod TIEImageMagick_MagickWand __fastcall DestroyMagickWand(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickReadImage(TIEImageMagick_MagickWand wand, char * filename);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickReadImageBlob(TIEImageMagick_MagickWand wand, void * blob, TIEImageMagick_size_t length);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickPingImageBlob(TIEImageMagick_MagickWand wand, void * blob, TIEImageMagick_size_t length);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickPingImage(TIEImageMagick_MagickWand wand, char * filename);
|
|
__classmethod void __fastcall MagickResetIterator(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickNextImage(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetIteratorIndex(TIEImageMagick_MagickWand wand, TIEImageMagick_ssize_t index);
|
|
__classmethod void __fastcall MagickSetLastIterator(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_ssize_t __fastcall MagickGetIteratorIndex(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickExportImagePixels(TIEImageMagick_MagickWand wand, TIEImageMagick_ssize_t x, TIEImageMagick_ssize_t y, TIEImageMagick_size_t columns, TIEImageMagick_size_t rows, char * map, TIEImageMagick_StorageType storage, void * pixels);
|
|
__classmethod TIEImageMagick_size_t __fastcall MagickGetImageWidth(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_size_t __fastcall MagickGetImageHeight(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_size_t __fastcall MagickGetImageChannelDepth(TIEImageMagick_MagickWand wand, TIEImageMagick_ChannelType channel);
|
|
__classmethod TIEImageMagick_ColorspaceType __fastcall MagickGetImageColorspace(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetImageColorspace(TIEImageMagick_MagickWand wand, TIEImageMagick_ColorspaceType colorspace);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickTransformImageColorspace(TIEImageMagick_MagickWand wand, TIEImageMagick_ColorspaceType colorspace);
|
|
__classmethod TIEImageMagick_size_t __fastcall MagickGetImageDepth(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickGetImageResolution(TIEImageMagick_MagickWand wand, double &x, double &y);
|
|
__classmethod TIEImageMagick_ResolutionType __fastcall MagickGetImageUnits(TIEImageMagick_MagickWand wand);
|
|
__classmethod char * __fastcall MagickGetImageFormat(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_ImageType __fastcall MagickGetType(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetImageType(TIEImageMagick_MagickWand wand, TIEImageMagick_ImageType image_type);
|
|
__classmethod TIEImageMagick_ImageType __fastcall MagickIdentifyImageType(TIEImageMagick_MagickWand wand);
|
|
__classmethod TIEImageMagick_MagickProgressMonitor __fastcall MagickSetProgressMonitor(TIEImageMagick_MagickWand wand, TIEImageMagick_MagickProgressMonitor progress_monitor, void * client_data);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetImageProperty(TIEImageMagick_MagickWand wand, char * prop, char * value);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetOption(TIEImageMagick_MagickWand wand, char * key, char * value);
|
|
__classmethod char * __fastcall MagickGetException(TIEImageMagick_MagickWand wand, TIEImageMagick_ExceptionType &severity);
|
|
__classmethod void * __fastcall MagickRelinquishMemory(void * resource);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetColorspace(TIEImageMagick_MagickWand wand, TIEImageMagick_ColorspaceType colorspace);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetDepth(TIEImageMagick_MagickWand wand, TIEImageMagick_size_t depth);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetFormat(TIEImageMagick_MagickWand wand, char * format);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetResolution(TIEImageMagick_MagickWand wand, double x_resolution, double y_resolution);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickSetImageUnits(TIEImageMagick_MagickWand wand, TIEImageMagick_ResolutionType units);
|
|
__classmethod Winapi::Windows::PByte __fastcall MagickGetImageBlob(TIEImageMagick_MagickWand wand, TIEImageMagick_size_t &length);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickWriteImage(TIEImageMagick_MagickWand wand, char * filename);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickWriteImages(TIEImageMagick_MagickWand wand, char * filename, TIEImageMagick_MagickBooleanType adjoin);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickImportImagePixels(TIEImageMagick_MagickWand wand, TIEImageMagick_ssize_t x, TIEImageMagick_ssize_t y, TIEImageMagick_size_t columns, TIEImageMagick_size_t rows, char * map, TIEImageMagick_StorageType storage, void * pixels);
|
|
__classmethod TIEImageMagick_MagickBooleanType __fastcall MagickNewImage(TIEImageMagick_MagickWand wand, TIEImageMagick_size_t columns, TIEImageMagick_size_t rows, TIEImageMagick_PixelWand background);
|
|
__classmethod TIEImageMagick_PixelWand __fastcall NewPixelWand();
|
|
__classmethod TIEImageMagick_PixelWand __fastcall DestroyPixelWand(TIEImageMagick_PixelWand pixelWand);
|
|
__classmethod TIEImageMagick_MagicInfo __fastcall GetMagicInfo(void * magic, TIEImageMagick_size_t length, TIEImageMagick_ExceptionInfo exception);
|
|
__classmethod char * __fastcall GetMagicName(TIEImageMagick_MagicInfo magic_info);
|
|
__classmethod TIEImageMagick_ExceptionInfo __fastcall AcquireExceptionInfo();
|
|
__classmethod TIEImageMagick_ExceptionInfo __fastcall DestroyExceptionInfo(TIEImageMagick_ExceptionInfo e);
|
|
public:
|
|
/* TObject.Create */ inline __fastcall TIEMiscPluginsImageMagick() : System::TObject() { }
|
|
/* TObject.Destroy */ inline __fastcall virtual ~TIEMiscPluginsImageMagick() { }
|
|
|
|
};
|
|
|
|
|
|
//-- var, const, procedure ---------------------------------------------------
|
|
static _DELPHI_CONST System::Word iomscFITS = System::Word(0x2001);
|
|
static _DELPHI_CONST System::Word iomscPCD = System::Word(0x2002);
|
|
static _DELPHI_CONST System::Word iomscPCL = System::Word(0x2003);
|
|
static _DELPHI_CONST System::Word iomscPDF = System::Word(0x2004);
|
|
static _DELPHI_CONST System::Word iomscBIE = System::Word(0x2005);
|
|
static _DELPHI_CONST System::Word iomscCIN = System::Word(0x2006);
|
|
static _DELPHI_CONST System::Word iomscDDS = System::Word(0x2007);
|
|
static _DELPHI_CONST System::Word iomscDFONT = System::Word(0x2008);
|
|
static _DELPHI_CONST System::Word iomscDPX = System::Word(0x2009);
|
|
static _DELPHI_CONST System::Word iomscJBIG = System::Word(0x200a);
|
|
static _DELPHI_CONST System::Word iomscJNG = System::Word(0x200b);
|
|
static _DELPHI_CONST System::Word iomscM2V = System::Word(0x200c);
|
|
static _DELPHI_CONST System::Word iomscMAT = System::Word(0x200d);
|
|
static _DELPHI_CONST System::Word iomscMIFF = System::Word(0x200e);
|
|
static _DELPHI_CONST System::Word iomscMNG = System::Word(0x200f);
|
|
static _DELPHI_CONST System::Word iomscMP4 = System::Word(0x2010);
|
|
static _DELPHI_CONST System::Word iomscMSVG = System::Word(0x2011);
|
|
static _DELPHI_CONST System::Word iomscPES = System::Word(0x2012);
|
|
static _DELPHI_CONST System::Word iomscPS = System::Word(0x2013);
|
|
static _DELPHI_CONST System::Word iomscPSB = System::Word(0x2014);
|
|
static _DELPHI_CONST System::Word iomscPTIF = System::Word(0x2015);
|
|
static _DELPHI_CONST System::Word iomscSVG = System::Word(0x2016);
|
|
static _DELPHI_CONST System::Word iomscTIFF64 = System::Word(0x2017);
|
|
static _DELPHI_CONST System::Word iomscXCF = System::Word(0x2018);
|
|
static _DELPHI_CONST System::Word iomscXPS = System::Word(0x2019);
|
|
static _DELPHI_CONST System::Word Min_ImageMagick_Type = System::Word(0x2001);
|
|
static _DELPHI_CONST System::Word Max_ImageMagick_Type = System::Word(0x2019);
|
|
extern DELPHI_PACKAGE Iemiscplugins__1 IEIMAGEMAGICK_WAND_DLL_FILENAMES;
|
|
extern DELPHI_PACKAGE Iemiscplugins__2 IEIMAGEMAGICK_MAGICK_DLL_FILENAMES;
|
|
extern DELPHI_PACKAGE int __fastcall TIEMiscPluginsImageMagick_PDFFrameCount(System::Classes::TStream* Stream);
|
|
extern DELPHI_PACKAGE void __fastcall TIEMiscPluginsImageMagick_ReadImageStream(System::Classes::TStream* Stream, Iexbitmaps::TIEBitmap* Bitmap, Iexbitmaps::TIOParams* &IOParams, Hyiedefs::TProgressRec &Progress, bool Preview);
|
|
extern DELPHI_PACKAGE void __fastcall TIEMiscPluginsImageMagick_WriteImageStream(System::Classes::TStream* Stream, Iexbitmaps::TIEBitmap* Bitmap, Iexbitmaps::TIOParams* &IOParams, Hyiedefs::TProgressRec &Progress);
|
|
extern DELPHI_PACKAGE bool __fastcall TIEMiscPluginsImageMagick_TryImageStream(System::Classes::TStream* Stream, Hyieutils::TIOFileType TryingFormat);
|
|
} /* namespace Iemiscplugins */
|
|
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_IEMISCPLUGINS)
|
|
using namespace Iemiscplugins;
|
|
#endif
|
|
#pragma pack(pop)
|
|
#pragma option pop
|
|
|
|
#pragma delphiheader end.
|
|
//-- end unit ----------------------------------------------------------------
|
|
#endif // iemiscpluginsHPP
|