00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc. 00002 // 00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc., 00004 // and considered a trade secret as defined under civil and criminal statutes. 00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of 00006 // unauthorized use or misappropriation of its trade secrets. Use of this information 00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under 00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use. 00009 00010 #ifndef _HIO_UTILITY_LEADTOOLS_H 00011 #define _HIO_UTILITY_LEADTOOLS_H 00012 00013 #ifdef H_PACK_8 00014 #pragma pack(push) 00015 #pragma pack(8) 00016 #endif 00017 00018 #include "HTools.h" 00019 #include "HIOManager.h" 00020 00028 class HIOUtilityLeadTools: public HInputHandler, public HOutputHandler 00029 { 00030 00031 public: 00033 HIOUtilityLeadTools() { 00034 SetInputOps(HInputOpFileInputToImageKey); 00035 SetOutputOps(HOutputOpFileOutputFromImageKey); 00036 }; 00037 00038 ~HIOUtilityLeadTools() {;}; 00039 00041 void RegisterInputHandlerTypes() { 00042 // Here is a list of some of the file formats and some of the flavors LEAD supports for Import 00043 // add if you think your license of LEAD covers more formats 00044 HIORegisterInputType("jpeg",this); // JPEG 00045 HIORegisterInputType("jpg",this); // JPEG 00046 HIORegisterInputType("bmp",this); // Windows BMP, OS/2 BMP 00047 HIORegisterInputType("gif",this); // GIF (Embedded Text, Animated, Interlaced, Transparency), 00048 HIORegisterInputType("tif",this); // TIFF 6.0 (MPT, JPEG, Packbits, Huffman, RLE, LZW, CMYK, CCITT, CCITT G31D, CCITT G32D, CCITT G4, Bitonal, Grayscale, Palletized, RGB, YCbCr, CIELAB) 00049 HIORegisterInputType("tiff",this); // TIFF 6.0 (MPT, JPEG, Packbits, Huffman, RLE, LZW, CMYK, CCITT, CCITT G31D, CCITT G32D, CCITT G4, Bitonal, Grayscale, Palletized, RGB, YCbCr, CIELAB) 00050 HIORegisterInputType("wmf",this); // Windows Metafile (WMF) 00051 HIORegisterInputType("emf",this); // Enhanced Metafile (WMF) 00052 HIORegisterInputType("ico",this); // Windows Icon (ICO) 00053 HIORegisterInputType("cur",this); // Windows Cursor (CUR) 00054 HIORegisterInputType("ani",this); // Windows Animated Cursor (ANI) 00055 HIORegisterInputType("clp",this); // Windows Clipboard Cursor (CLP) 00056 HIORegisterInputType("avi",this); // Windows AVI(AVI) 00057 HIORegisterInputType("fpx",this); // FlashPix (FPX) 00058 HIORegisterInputType("exf",this); // Fuji Exif 2.0 (EXF) 00059 HIORegisterInputType("psd",this); // Adobe PhotoShop (PSD) 00060 HIORegisterInputType("pcd",this); // Kodak PhotoCD PCD, EPS, IOCA, MODCA 00061 HIORegisterInputType("cal",this); // CALS raster (CAL) 00062 HIORegisterInputType("pcx",this); // PC Paintbrush (PCX) 00063 HIORegisterInputType("wfx",this); // Winfax (WFX), MAC, VDA 00064 HIORegisterInputType("png",this); // CompuServe PNG 00065 HIORegisterInputType("tga",this); // Targa (TGA) 00066 HIORegisterInputType("ras",this); // Sun Raster (RAS) 00067 HIORegisterInputType("pct",this); // Macintosh PICT (PCT), LEAD CMP 00068 HIORegisterInputType("awd",this); // Microsoft FAX (AWD) 00069 HIORegisterInputType("wpg",this); // WordPerfect (WPG) 00070 HIORegisterInputType("msp",this); // Microsoft Paint (MSP) 00071 HIORegisterInputType("mac",this); // Machintosh Paint (MAC) 00072 HIORegisterInputType("cut",this); // Dr. Halo 00073 //HIORegisterInputType("DICOM",this); // DICOM - What's the extension 00074 //HIORegisterInputType("pdf",this); // Adobe Portable Document Format(PDF) - required PDF plugin 00075 }; 00076 00078 HInputHandlerStyle GetInputStyle() {return HInputHandlerStyleImage;}; 00079 00081 const char * GetInputTypesString() 00082 {return "jpeg;jpg;bmp;gif;tif;tiff;wmf;emf;ico;cur;ani;clp;avi;fpx;exf;psd;pcd;cal;pcx;wfx;png;tga;ras;pct;awd;wpg;msp;mac;cut";}; 00083 00084 00093 HFileInputResult FileInputToImageKey(const char * filename, HC_KEY *image_key, HC_KEY segment_key, HInputHandlerOptions * options); 00094 00096 void RegisterOutputHandlerTypes() { 00097 // Here is a list of some of the file formats and some of the flavors LEAD supports for Export 00098 // add if you think your license of LEAD covers more formats 00099 HIORegisterOutputType("jpeg",this); // JPEG 00100 HIORegisterOutputType("jpg",this); // JPEG 00101 HIORegisterOutputType("bmp",this); // Windows BMP, OS/2 BMP 00102 HIORegisterOutputType("gif",this); // GIF (Embedded Text, Animated, Interlaced, Transparency), 00103 HIORegisterOutputType("tif",this); // TIFF 6.0 (MPT, JPEG, Packbits, Huffman, RLE, LZW, CMYK, CCITT, CCITT G31D, CCITT G32D, CCITT G4, Bitonal, Grayscale, Palletized, RGB, YCbCr, CIELAB) 00104 HIORegisterOutputType("tiff",this); // TIFF 6.0 (MPT, JPEG, Packbits, Huffman, RLE, LZW, CMYK, CCITT, CCITT G31D, CCITT G32D, CCITT G4, Bitonal, Grayscale, Palletized, RGB, YCbCr, CIELAB) 00105 HIORegisterOutputType("wmf",this); // Windows Metafile (WMF) 00106 HIORegisterOutputType("emf",this); // Enhanced Metafile (WMF) 00107 HIORegisterOutputType("ico",this); // Windows Icon (ICO) 00108 HIORegisterOutputType("cur",this); // Windows Cursor (CUR) 00109 HIORegisterOutputType("ani",this); // Windows Animated Cursor (ANI) 00110 HIORegisterOutputType("clp",this); // Windows Clipboard Cursor (CLP) 00111 HIORegisterOutputType("avi",this); // Windows AVI(AVI) 00112 HIORegisterOutputType("fpx",this); // FlashPix (FPX) 00113 HIORegisterOutputType("exf",this); // Fuji Exif 2.0 (EXF) 00114 HIORegisterOutputType("psd",this); // Adobe PhotoShop (PSD) 00115 HIORegisterOutputType("pcd",this); // Kodak PhotoCD PCD, EPS, IOCA, MODCA 00116 HIORegisterOutputType("cal",this); // CALS raster (CAL) 00117 HIORegisterOutputType("pcx",this); // PC Paintbrush (PCX) 00118 HIORegisterOutputType("wfx",this); // Winfax (WFX), MAC, VDA 00119 HIORegisterOutputType("png",this); // CompuServe PNG 00120 HIORegisterOutputType("tga",this); // Targa (TGA) 00121 HIORegisterOutputType("ras",this); // Sun Raster (RAS) 00122 HIORegisterOutputType("pct",this); // Macintosh PICT (PCT), LEAD CMP 00123 HIORegisterOutputType("awd",this); // Microsoft FAX (AWD) 00124 HIORegisterOutputType("wpg",this); // WordPerfect (WPG) 00125 HIORegisterOutputType("msp",this); // Microsoft Paint (MSP) 00126 HIORegisterOutputType("mac",this); // Machintosh Paint (MAC) 00127 HIORegisterOutputType("cut",this); // Dr. Halo 00128 //HIORegisterOutputType("DICOM",this); // DICOM - What's the extension 00129 //HIORegisterOutputType("pdf",this); // Adobe Portable Document Format(PDF) - - required PDF plugin 00130 }; 00131 00133 HOutputHandlerStyle GetOutputStyle() {return HOutputHandlerStyleImage;}; 00134 00136 const char * GetOutputTypesString() 00137 {return "jpeg;jpg;bmp;gif;tif;tiff;wmf;emf;ico;cur;ani;clp;avi;fpx;exf;psd;pcd;cal;pcx;wfx;png;tga;ras;pct;awd;wpg;msp;mac;cut";}; 00138 00139 00148 HFileOutputResult FileOutputFromImageKey(const char * filename, HC_KEY image_key, HOutputHandlerOptions * options); 00149 00150 }; 00151 00152 00153 00154 #ifdef H_PACK_8 00155 #pragma pack(pop) 00156 #endif 00157 00158 #endif 00159 00160 00161 00162 00163 00164 00165