From: <pan...@li...> - 2013-03-17 17:55:53
|
branch: details: http://panotools.hg.sourceforge.net/hgweb/panotools/panotools/hgroot/panotools/libpano/rev/3b87e44598ea changeset: 782:3b87e44598ea user: tmodes date: Sun Mar 17 18:55:57 2013 +0100 description: [Windows] Use __declspec(dllexport) instead of modul definition file Functions exported via modul definition file can't be compared with function points (needed by nona gpu). Function pointers works for functions exported with __declspec(dllexport). diffstat: CMakeLists.txt | 2 +- ColourBrightness.h | 30 +- PTcommon.h | 32 +- ZComb.h | 16 +- file.h | 27 +- filter.h | 592 +++++++++++++++++++++++++-------------------------- libpano13.def | 197 ----------------- pano13vc.def | 240 --------------------- panorama.h | 18 +- ptfeather.h | 2 +- ptstitch.h | 8 +- pttiff.h | 65 ++-- queryfeature.h | 11 +- tools/PToptimizer.c | 1 - 14 files changed, 402 insertions(+), 839 deletions(-) diffs (truncated from 1583 to 500 lines): diff -r 4b93725a1f29 -r 3b87e44598ea CMakeLists.txt --- a/CMakeLists.txt Sun Mar 17 08:08:09 2013 +0100 +++ b/CMakeLists.txt Sun Mar 17 18:55:57 2013 +0100 @@ -205,7 +205,6 @@ set(pano13_res pano13.rc - pano13vc.def ) set(pano13_src @@ -268,6 +267,7 @@ else() IF(BUILD_DLL) # Create and install shared library + ADD_DEFINITIONS(-DPANO13_DLL) add_library(pano13 SHARED ${pano13_hdr} ${pano13_res} ${pano13_src}) target_link_libraries(pano13 ${_common_libs}) set_target_properties(pano13 PROPERTIES VERSION "2.0.0" SOVERSION "2") diff -r 4b93725a1f29 -r 3b87e44598ea ColourBrightness.h --- a/ColourBrightness.h Sun Mar 17 08:08:09 2013 +0100 +++ b/ColourBrightness.h Sun Mar 17 18:55:57 2013 +0100 @@ -66,27 +66,27 @@ } calla_struct; -histograms_struct*ReadHistograms (fullPath *fullPathImages, int counterImages); -int ComputeColourBrightnessCorrection(calla_struct *calla); -int CorrectFileColourBrightness(fullPath *inPath, fullPath *outPath, magnolia_struct *magnolia, int parm3); -int FindNextCandidate(int candidates[], calla_struct *calla); +PANO13_IMPEX histograms_struct*ReadHistograms (fullPath *fullPathImages, int counterImages); +PANO13_IMPEX int ComputeColourBrightnessCorrection(calla_struct *calla); +PANO13_IMPEX int CorrectFileColourBrightness(fullPath *inPath, fullPath *outPath, magnolia_struct *magnolia, int parm3); +PANO13_IMPEX int FindNextCandidate(int candidates[], calla_struct *calla); -magnolia_struct *InitializeMagnolia(int numberImages, int size, calla_function parm2); -void ColourBrightness( fullPath *fullPathImages, fullPath *outFullPathImages, int counterImages, int indexReferenceImage, int parm3,int createCurvesType); -void CorrectImageColourBrigthness(Image *image, magnolia_struct *magnolia, int parm3); -void FreeHistograms(histograms_struct *ptrHistograms, int count); -void RemapHistogram(int *histogram, double *array, magnolia_struct *magnolia, int channel); -void ComputeAdjustmentCurve(double *sourceHistogram, double *targetHistogram, double *curve) ; +PANO13_IMPEX magnolia_struct *InitializeMagnolia(int numberImages, int size, calla_function parm2); +PANO13_IMPEX void ColourBrightness( fullPath *fullPathImages, fullPath *outFullPathImages, int counterImages, int indexReferenceImage, int parm3,int createCurvesType); +PANO13_IMPEX void CorrectImageColourBrigthness(Image *image, magnolia_struct *magnolia, int parm3); +PANO13_IMPEX void FreeHistograms(histograms_struct *ptrHistograms, int count); +PANO13_IMPEX void RemapHistogram(int *histogram, double *array, magnolia_struct *magnolia, int channel); +PANO13_IMPEX void ComputeAdjustmentCurve(double *sourceHistogram, double *targetHistogram, double *curve) ; unsigned char Unknown47(unsigned char parm0, unsigned char parm1, unsigned char parm2); unsigned char Unknown48(unsigned char parm0, unsigned char parm1, unsigned char parm2); unsigned char Unknown49(unsigned char parm0, unsigned char parm1, unsigned char parm2); -double MapFunction(double p[], double x, int n); -int RemapPoint(int value, double mapTable[]) ; +PANO13_IMPEX double MapFunction(double p[], double x, int n); +PANO13_IMPEX int RemapPoint(int value, double mapTable[]) ; -unsigned char panoColourComputeHue(unsigned char red, unsigned char green, unsigned char blue); -unsigned char panoColourComputeIntensity(unsigned char red, unsigned char green, unsigned char blue); -unsigned char panoColourComputeSaturation (unsigned char red, unsigned char green, unsigned char blue); +PANO13_IMPEX unsigned char panoColourComputeHue(unsigned char red, unsigned char green, unsigned char blue); +PANO13_IMPEX unsigned char panoColourComputeIntensity(unsigned char red, unsigned char green, unsigned char blue); +PANO13_IMPEX unsigned char panoColourComputeSaturation (unsigned char red, unsigned char green, unsigned char blue); /* The parameter createCurvesType indicates the type of output format: arbitrary map (.amp) or smooth map (.acv). diff -r 4b93725a1f29 -r 3b87e44598ea PTcommon.h --- a/PTcommon.h Sun Mar 17 08:08:09 2013 +0100 +++ b/PTcommon.h Sun Mar 17 18:55:57 2013 +0100 @@ -48,40 +48,38 @@ } pt_tiff_parms; -extern int ptQuietFlag; +PANO13_IMPEX extern int ptQuietFlag; -int panoVerifyTiffsAreCompatible(fullPath *tiffFiles, int filesCount, int optionalCheck); -int panoAddStitchingMasks(fullPath *inputFiles, fullPath *outputFiles, int numberImages, int featherSize); +PANO13_IMPEX int panoVerifyTiffsAreCompatible(fullPath *tiffFiles, int filesCount, int optionalCheck); +PANO13_IMPEX int panoAddStitchingMasks(fullPath *inputFiles, fullPath *outputFiles, int numberImages, int featherSize); /* defined in ptpicker.c, but never exported */ -int panoFlattenTIFF(fullPath *fullPathImages, int counterImageFiles, fullPath *outputFileName, int removeOriginals); - - +PANO13_IMPEX int panoFlattenTIFF(fullPath *fullPathImages, int counterImageFiles, fullPath *outputFileName, int removeOriginals); extern int quietFlag; -int panoPSDCreate( fullPath *fullPathImages, int, fullPath*, pano_flattening_parms*); -int panoCreateLayeredPSD( fullPath *fullPathImages, int, fullPath*, pano_flattening_parms*); +PANO13_IMPEX int panoPSDCreate( fullPath *fullPathImages, int, fullPath*, pano_flattening_parms*); +PANO13_IMPEX int panoCreateLayeredPSD( fullPath *fullPathImages, int, fullPath*, pano_flattening_parms*); -int panoCreatePanorama(fullPath ptrImageFileNames[], int counterImageFiles, fullPath *panoFileName, fullPath *scriptFileName); -void ARGtoRGBAImage(Image *im); -void panoReplaceExt(char* filename, char *extension); -int panoUnCropTiff(char *inputFile, char *outputFile); +PANO13_IMPEX int panoCreatePanorama(fullPath ptrImageFileNames[], int counterImageFiles, fullPath *panoFileName, fullPath *scriptFileName); +PANO13_IMPEX void ARGtoRGBAImage(Image *im); +PANO13_IMPEX void panoReplaceExt(char* filename, char *extension); +PANO13_IMPEX int panoUnCropTiff(char *inputFile, char *outputFile); -int StringtoFullPath (fullPath *path, char *filename); -void InsertFileName( fullPath *fp, char *fname ); -int ApplyFeather(fullPath * inputFile, fullPath * outputFile, +PANO13_IMPEX int StringtoFullPath(fullPath *path, char *filename); +PANO13_IMPEX void InsertFileName( fullPath *fp, char *fname ); +PANO13_IMPEX int ApplyFeather(fullPath * inputFile, fullPath * outputFile, int featherSize); /*****************/ #define PANO_CROPPING_UNCROP 1 #define PANO_CROPPING_CROP 2 -int panoCroppingMain(int argc,char *argv[], int operation, char *version,char *usage, char *defaultPrefix); +PANO13_IMPEX int panoCroppingMain(int argc,char *argv[], int operation, char *version,char *usage, char *defaultPrefix); -void panoPrintImage(char *msg, Image *im); +PANO13_IMPEX void panoPrintImage(char *msg, Image *im); #ifndef min #define min(a,b) ((a) <= (b) ? (a) : (b)) diff -r 4b93725a1f29 -r 3b87e44598ea ZComb.h --- a/ZComb.h Sun Mar 17 08:08:09 2013 +0100 +++ b/ZComb.h Sun Mar 17 18:55:57 2013 +0100 @@ -15,11 +15,11 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -void ZCombSetDisabled(void); -void ZCombSetEnabled(void); -void ZCombSetMaskType(int mt); -void ZCombSetFocusWindowHalfwidth(int fwh); -void ZCombSetSmoothingWindowHalfwidth(int swh); -void ZCombSetMaskFromFocusData(Image *im); -void ZCombSetGreenTo255(Image *im); -int ZCombSeeImage(Image *im, char *filename); +PANO13_IMPEX void ZCombSetDisabled(void); +PANO13_IMPEX void ZCombSetEnabled(void); +PANO13_IMPEX void ZCombSetMaskType(int mt); +PANO13_IMPEX void ZCombSetFocusWindowHalfwidth(int fwh); +PANO13_IMPEX void ZCombSetSmoothingWindowHalfwidth(int swh); +PANO13_IMPEX void ZCombSetMaskFromFocusData(Image *im); +PANO13_IMPEX void ZCombSetGreenTo255(Image *im); +PANO13_IMPEX int ZCombSeeImage(Image *im, char *filename); diff -r 4b93725a1f29 -r 3b87e44598ea file.h --- a/file.h Sun Mar 17 08:08:09 2013 +0100 +++ b/file.h Sun Mar 17 18:55:57 2013 +0100 @@ -32,17 +32,17 @@ #define __FILE_H__ // these are defined in file.c -int panoImageRead(Image * im, fullPath * sfile); -int panoFileMakeTemp(fullPath * path); +PANO13_IMPEX int panoImageRead(Image * im, fullPath * sfile); +PANO13_IMPEX int panoFileMakeTemp(fullPath * path); // and these are defined in bmp.c, jpeg.c, hdrfile.c, png.c, and ppm.c // but there is no point in creating a file for each one of them -int panoBMPRead(Image *im, fullPath *sfile ); -int panoJPEGRead(Image * im, fullPath * sfile); -int panoHDRRead(Image *im, fullPath *sfile ); -int panoPNGRead(Image *im, fullPath *sfile ); -int panoPPMRead(Image * im, fullPath * sfile); +PANO13_IMPEX int panoBMPRead(Image *im, fullPath *sfile ); +PANO13_IMPEX int panoJPEGRead(Image * im, fullPath * sfile); +PANO13_IMPEX int panoHDRRead(Image *im, fullPath *sfile ); +PANO13_IMPEX int panoPNGRead(Image *im, fullPath *sfile ); +PANO13_IMPEX int panoPPMRead(Image * im, fullPath * sfile); typedef struct { @@ -79,17 +79,16 @@ -extern char *psdBlendingModesNames[PSD_NUMBER_BLENDING_MODES]; +PANO13_IMPEX extern char *psdBlendingModesNames[PSD_NUMBER_BLENDING_MODES]; -extern char *psdBlendingModesInternalName[PSD_NUMBER_BLENDING_MODES]; +PANO13_IMPEX extern char *psdBlendingModesInternalName[PSD_NUMBER_BLENDING_MODES]; -int panoFileOutputNamesCreate(fullPath *ptrOutputFiles, int filesCount, char* outputPrefix); +PANO13_IMPEX int panoFileOutputNamesCreate(fullPath *ptrOutputFiles, int filesCount, char* outputPrefix); -char *panoFileExists(fullPath *ptrFiles, int filesCount); +PANO13_IMPEX char *panoFileExists(fullPath *ptrFiles, int filesCount); -int panoSingleFileExists(char * filename); +PANO13_IMPEX int panoSingleFileExists(char * filename); -int panoFileDeleteMultiple(fullPath* files, int filesCount); - +PANO13_IMPEX int panoFileDeleteMultiple(fullPath* files, int filesCount); #endif diff -r 4b93725a1f29 -r 3b87e44598ea filter.h --- a/filter.h Sun Mar 17 08:08:09 2013 +0100 +++ b/filter.h Sun Mar 17 18:55:57 2013 +0100 @@ -20,7 +20,6 @@ #ifndef FILTER_H #define FILTER_H - #include <math.h> #include <stdio.h> #include <stdarg.h> @@ -89,7 +88,7 @@ #define MAX_FISHEYE_FOV 179.0 extern int JavaUI; // Flag to indicate use of java dialogs -void JPrintError( char* text ); +PANO13_IMPEX void JPrintError( char* text ); #define FAST_TRANSFORM_STEP_NORMAL 40 #define FAST_TRANSFORM_STEP_MORPH 6 @@ -478,7 +477,7 @@ -void filter_main( TrformStr *TrPtr, sPrefs *spref); +PANO13_IMPEX void filter_main( TrformStr *TrPtr, sPrefs *spref); // Transformation function type (we have only one...) @@ -558,11 +557,11 @@ //---------------------------------- Functions identical in all platforms ------------------------ -void dispatch (TrformStr *TrPtr, sPrefs *s); // Entry into platform independent code -void DoTransForm (TrformStr *TrPtr, panoPrefs *p ); +PANO13_IMPEX void dispatch (TrformStr *TrPtr, sPrefs *s); // Entry into platform independent code +PANO13_IMPEX void DoTransForm (TrformStr *TrPtr, panoPrefs *p ); -void setLibToResFile ( void ); // MacOS: Get resources from shared lib -void unsetLibToResFile( void ); // MacOS: Don't get resources from shared lib +PANO13_IMPEX void setLibToResFile ( void ); // MacOS: Get resources from shared lib +PANO13_IMPEX void unsetLibToResFile( void ); // MacOS: Don't get resources from shared lib enum{ // Enumerates used by Progress and infoDlg _initProgress, // display message "argument" @@ -571,113 +570,112 @@ _idleProgress // do nothing; on Mac: call waitnextevent; }; -void PT_setProgressFcn(int (*ptr)(int, char *)); // set custom progress callback -int Progress( int command, char* argument ); // Progress Reporting -void PT_setInfoDlgFcn(int (*ptr)(int, char *)); // set custom info callback -int infoDlg ( int command, char* argument ); // Display info: same argumenmts as progress -void PT_setErrorFcn( void (*ptr)( char* , va_list va)); // set custom error function -void PrintError( char* fmt, ...); // Error Reporting -void dieWithError(char*fmt, ...); +PANO13_IMPEX void PT_setProgressFcn(int (*ptr)(int, char *)); // set custom progress callback +PANO13_IMPEX int Progress( int command, char* argument ); // Progress Reporting +PANO13_IMPEX void PT_setInfoDlgFcn(int (*ptr)(int, char *)); // set custom info callback +PANO13_IMPEX int infoDlg ( int command, char* argument ); // Display info: same argumenmts as progress +PANO13_IMPEX void PT_setErrorFcn( void (*ptr)( char* , va_list va)); // set custom error function +PANO13_IMPEX void PrintError( char* fmt, ...); // Error Reporting +PANO13_IMPEX void dieWithError(char*fmt, ...); -int ccommand( char ***argvPtr); // Shell for standalone programs +PANO13_IMPEX int ccommand( char ***argvPtr); // Shell for standalone programs // Panorama Tool functions -void perspective (TrformStr *TrPtr, pPrefs *p); -void correct (TrformStr *TrPtr, cPrefs *c); -void remap (TrformStr *TrPtr, rPrefs *r); -void adjust (TrformStr *TrPtr, aPrefs *a); -void pan (TrformStr *TrPtr, panControls *pc); - - - +PANO13_IMPEX void perspective (TrformStr *TrPtr, pPrefs *p); +PANO13_IMPEX void correct (TrformStr *TrPtr, cPrefs *c); +PANO13_IMPEX void remap (TrformStr *TrPtr, rPrefs *r); +PANO13_IMPEX void adjust (TrformStr *TrPtr, aPrefs *a); +PANO13_IMPEX void pan (TrformStr *TrPtr, panControls *pc); // Set Struct defaults -void SetPrefDefaults (panoPrefs *prPtr, int selector); -void SetCorrectDefaults ( cPrefs *p ); -void SetAdjustDefaults ( aPrefs *p ); -void SetRemapDefaults ( rPrefs *p ); -void SetPerspectiveDefaults ( pPrefs *p ); -void SetImageDefaults ( Image *im); -void SetOptDefaults ( optVars *opt ); -void SetPanDefaults ( panControls *pc); -void SetSizeDefaults ( sPrefs *pref); -void SetStitchDefaults ( stBuf *sbuf); -void SetVRPanoOptionsDefaults( VRPanoOptions *v); -void SettMatrixDefaults ( tMatrix *t ); -void SetCoordDefaults ( CoordInfo *c, int num); +PANO13_IMPEX void SetPrefDefaults (panoPrefs *prPtr, int selector); +PANO13_IMPEX void SetCorrectDefaults ( cPrefs *p ); +PANO13_IMPEX void SetAdjustDefaults ( aPrefs *p ); +PANO13_IMPEX void SetRemapDefaults ( rPrefs *p ); +PANO13_IMPEX void SetPerspectiveDefaults ( pPrefs *p ); +PANO13_IMPEX void SetImageDefaults ( Image *im); +PANO13_IMPEX void SetOptDefaults ( optVars *opt ); +PANO13_IMPEX void SetPanDefaults ( panControls *pc); +PANO13_IMPEX void SetSizeDefaults ( sPrefs *pref); +PANO13_IMPEX void SetStitchDefaults ( stBuf *sbuf); +PANO13_IMPEX void SetVRPanoOptionsDefaults( VRPanoOptions *v); +PANO13_IMPEX void SettMatrixDefaults ( tMatrix *t ); +PANO13_IMPEX void SetCoordDefaults ( CoordInfo *c, int num); -int SetAlignParams ( double *x ); -int SetLMParams ( double *x ); -void SetGlobalPtr ( AlignInfo *p ); +PANO13_IMPEX int SetAlignParams ( double *x ); +PANO13_IMPEX int SetLMParams ( double *x ); +PANO13_IMPEX void SetGlobalPtr ( AlignInfo *p ); +PANO13_IMPEX int CheckParams( AlignInfo *g ); +PANO13_IMPEX void setFcnPanoHuberSigma(double sigma); // Dialogs -int SetPrefs ( panoPrefs *p ); -int SetPanPrefs ( panControls *p ); -int SetCorrectPrefs ( cPrefs *p ); -int SetRadialOptions ( cPrefs *p ); -int SetHorizontalOptions ( cPrefs *p ); -int SetVerticalOptions ( cPrefs *p ); -int SetShearOptions ( cPrefs *p ); -int SetScaleOptions ( cPrefs *p ); -int SetLumOptions ( cPrefs *p ); -int setSizePrefs ( sPrefs *p, int can_resize ); -int SetRemapPrefs ( rPrefs *p ); -int SetPerspectivePrefs ( pPrefs *p ); -int SetAdjustPrefs ( aPrefs *p ); -int SetInterpolator ( sPrefs *p ); -int SetCreateOptions ( aPrefs *p ); -int SetCutOptions ( cPrefs *p ); -int SetFourierOptions ( cPrefs *p ); +PANO13_IMPEX int SetPrefs ( panoPrefs *p ); +PANO13_IMPEX int SetPanPrefs ( panControls *p ); +PANO13_IMPEX int SetCorrectPrefs ( cPrefs *p ); +PANO13_IMPEX int SetRadialOptions ( cPrefs *p ); +PANO13_IMPEX int SetHorizontalOptions ( cPrefs *p ); +PANO13_IMPEX int SetVerticalOptions ( cPrefs *p ); +PANO13_IMPEX int SetShearOptions ( cPrefs *p ); +PANO13_IMPEX int SetScaleOptions ( cPrefs *p ); +PANO13_IMPEX int SetLumOptions ( cPrefs *p ); +PANO13_IMPEX int setSizePrefs ( sPrefs *p, int can_resize ); +PANO13_IMPEX int SetRemapPrefs ( rPrefs *p ); +PANO13_IMPEX int SetPerspectivePrefs ( pPrefs *p ); +PANO13_IMPEX int SetAdjustPrefs ( aPrefs *p ); +PANO13_IMPEX int SetInterpolator ( sPrefs *p ); +PANO13_IMPEX int SetCreateOptions ( aPrefs *p ); +PANO13_IMPEX int SetCutOptions ( cPrefs *p ); +PANO13_IMPEX int SetFourierOptions ( cPrefs *p ); // File I/O -int readPrefs (char* p, int selector ); // Preferences, same selector as dispatch -void writePrefs (char* p, int selector ); // Preferences, same selector as dispatch +PANO13_IMPEX int readPrefs (char* p, int selector ); // Preferences, same selector as dispatch +PANO13_IMPEX void writePrefs (char* p, int selector ); // Preferences, same selector as dispatch -int LoadBufImage ( Image *image, char *fname, int mode); -int SaveBufImage ( Image *image, char *fname ); -int writeCroppedTIFF ( Image *im, fullPath *sfile, CropInfo *crop_info); -int writeTIFF ( Image *im, fullPath *fname); // On Mac: fname is FSSpec* -void SaveOptions ( struct correct_Prefs * thePrefs ); -int LoadOptions ( struct correct_Prefs * thePrefs ); -void FindScript ( struct adjust_Prefs *thePrefs ); -char* LoadScript ( fullPath* scriptFile ); -int WriteScript ( char* res, fullPath* scriptFile, int launch ); +PANO13_IMPEX int LoadBufImage ( Image *image, char *fname, int mode); +PANO13_IMPEX int SaveBufImage ( Image *image, char *fname ); +PANO13_IMPEX int writeCroppedTIFF ( Image *im, fullPath *sfile, CropInfo *crop_info); +PANO13_IMPEX int writeTIFF ( Image *im, fullPath *fname); // On Mac: fname is FSSpec* +PANO13_IMPEX void SaveOptions ( struct correct_Prefs * thePrefs ); +PANO13_IMPEX int LoadOptions ( struct correct_Prefs * thePrefs ); +PANO13_IMPEX void FindScript ( struct adjust_Prefs *thePrefs ); +PANO13_IMPEX char* LoadScript ( fullPath* scriptFile ); +PANO13_IMPEX int WriteScript ( char* res, fullPath* scriptFile, int launch ); // Write PSB and PSD files -int writePS ( Image *im, fullPath* fname, Boolean bBig ); // On Mac: fname is FSSpec* -int writePSD ( Image *im, fullPath* fname ); -int readPSD ( Image *im, fullPath* fname, int mode); // Can handle both PSD and PSB -int writePSwithLayer ( Image *im, fullPath *fname, Boolean bBig); -int writePSDwithLayer ( Image *im, fullPath *fname); -int addLayerToFile ( Image *im, fullPath* sfile, fullPath* dfile, stBuf *sB); //works with PSD & PSB -int readPSDMultiLayerImage( MultiLayerImage *mim, fullPath* sfile); -int FindFile ( fullPath *fname ); -int SaveFileAs ( fullPath *fname, char *prompt, char *name ); -void ConvFileName ( fullPath *fname,char *string); -void showScript ( fullPath* scriptFile ); -void MakeTempName ( fullPath *fspec, char *fname ); -void makePathForResult ( fullPath *path ); -int makePathToHost ( fullPath *path ); -void open_selection ( fullPath *path ); -int GetFullPath (fullPath *path, char *filename); // Somewhat confusing, for compatibility easons -int StringtoFullPath (fullPath *path, char *filename); -int IsTextFile ( char* fname ); -int readPositions ( char* script, transformCoord *tP ); -int readJPEG ( Image *im, fullPath *sfile ); -int readTIFF ( Image *im, fullPath *sfile ); -int writeJPEG ( Image *im, fullPath *sfile, int quality, int progressive ); -int writePNG ( Image *im, fullPath *sfile ); -int readPNG ( Image *im, fullPath *sfile ); -int LaunchAndSendScript(char* application, char* script); -aPrefs* readAdjustLine( fullPath *theScript ); +PANO13_IMPEX int writePS ( Image *im, fullPath* fname, Boolean bBig ); // On Mac: fname is FSSpec* +PANO13_IMPEX int writePSD ( Image *im, fullPath* fname ); +PANO13_IMPEX int readPSD ( Image *im, fullPath* fname, int mode); // Can handle both PSD and PSB +PANO13_IMPEX int writePSwithLayer ( Image *im, fullPath *fname, Boolean bBig); +PANO13_IMPEX int writePSDwithLayer ( Image *im, fullPath *fname); +PANO13_IMPEX int addLayerToFile ( Image *im, fullPath* sfile, fullPath* dfile, stBuf *sB); //works with PSD & PSB +PANO13_IMPEX int readPSDMultiLayerImage( MultiLayerImage *mim, fullPath* sfile); +PANO13_IMPEX int FindFile ( fullPath *fname ); +PANO13_IMPEX int SaveFileAs ( fullPath *fname, char *prompt, char *name ); +PANO13_IMPEX void ConvFileName ( fullPath *fname,char *string); +PANO13_IMPEX void showScript ( fullPath* scriptFile ); +PANO13_IMPEX void MakeTempName ( fullPath *fspec, char *fname ); +PANO13_IMPEX void makePathForResult ( fullPath *path ); +PANO13_IMPEX int makePathToHost ( fullPath *path ); +PANO13_IMPEX void open_selection ( fullPath *path ); +PANO13_IMPEX int GetFullPath (fullPath *path, char *filename); // Somewhat confusing, for compatibility easons +PANO13_IMPEX int StringtoFullPath (fullPath *path, char *filename); +PANO13_IMPEX int IsTextFile ( char* fname ); +PANO13_IMPEX int readPositions ( char* script, transformCoord *tP ); +PANO13_IMPEX int readJPEG ( Image *im, fullPath *sfile ); +PANO13_IMPEX int readTIFF ( Image *im, fullPath *sfile ); +PANO13_IMPEX int writeJPEG ( Image *im, fullPath *sfile, int quality, int progressive ); +PANO13_IMPEX int writePNG ( Image *im, fullPath *sfile ); +PANO13_IMPEX int readPNG ( Image *im, fullPath *sfile ); +PANO13_IMPEX int LaunchAndSendScript(char* application, char* script); +PANO13_IMPEX aPrefs* readAdjustLine( fullPath *theScript ); #ifdef __Mac__ @@ -687,232 +685,232 @@ #endif //int readtif(Image *im, TIFF* tif); -void getCropInformation(char *filename, CropInfo *c); +PANO13_IMPEX void getCropInformation(char *filename, CropInfo *c); // Read and Write Radiance HDR files -int writeHDR ( Image *im, fullPath *sfile ); -int readHDR ( Image *im, fullPath *sfile ); +PANO13_IMPEX int writeHDR ( Image *im, fullPath *sfile ); +PANO13_IMPEX int readHDR ( Image *im, fullPath *sfile ); #define FullPathtoString( path, string ) GetFullPath( path, string) -int ReadMorphPoints( char *script, AlignInfo *gl, int nIm ); +PANO13_IMPEX int ReadMorphPoints( char *script, AlignInfo *gl, int nIm ); // Image manipulation -void addAlpha ( Image *im ); -void transForm ( TrformStr *TrPtr, fDesc *fD, int color); -void transFormEx ( TrformStr *TrPtr, fDesc *fD, fDesc *finvD, int color, int imageNum); -void filter ( TrformStr *TrPtr, flfn func, flfn16 func16, void* params, int color); -void CopyImageData ( Image *dest, Image *src ); -void laplace ( Image *im ); -void blurr ( Image *im ); -void MakePano ( TrformStr *TrPtr, aPrefs *aP); -void MyMakePano ( TrformStr *TrPtr, aPrefs *aP, int imageNum ); -void ExtractStill ( TrformStr *TrPtr , aPrefs *p ); -int HaveEqualSize ( Image *im1, Image *im2 ); -int merge ( Image *dst, Image *src, int feather, int showprogress, int seam ); -void mergeAlpha ( Image *im, unsigned char *alpha, int feather, PTRect *theRect ); -void SetEquColor ( cPrefs *p ); -void CopyPosition ( Image *to, Image *from ); -int isColorSpecific ( cPrefs *p ); -void ThreeToFourBPP ( Image *im ); -void FourToThreeBPP ( Image *im ); -int SetUpGamma ( double pgamma, unsigned int psize); -int cutTheFrame ( Image *dest, Image *src, int width, int height, int showprogress ); -int PositionCmp ( Image *im1, Image *im2 ); -int MorphImage ( Image *src, Image *dst, PTTriangle *ts, PTTriangle *td, int nt ); -int MorphImageFile ( fullPath *sfile, fullPath *dfile, AlignInfo *g,int nIm ); -int blendImages ( fullPath *f0, fullPath *f1, fullPath *result, double s ); -int InterpolateImage ( Image *src, Image *dst, PTTriangle *ts, PTTriangle *td, int nt ); -int InterpolateTrianglesPerspective( AlignInfo *g, int nIm, double s, PTTriangle** t ); -int InterpolateImageFile( fullPath *sfile, fullPath *dfile, AlignInfo *g,int nIm ); -void OneToTwoByte ( Image *im ); -void TwoToOneByte ( Image *im ); -void SetMakeParams ( struct fDesc *stack, struct MakeParams *mp, Image *im , Image *pn, int color ); -void SetInvMakeParams ( struct fDesc *stack, struct MakeParams *mp, Image *im , Image *pn, int color ); +PANO13_IMPEX void addAlpha ( Image *im ); +PANO13_IMPEX void transForm ( TrformStr *TrPtr, fDesc *fD, int color); +PANO13_IMPEX void transFormEx ( TrformStr *TrPtr, fDesc *fD, fDesc *finvD, int color, int imageNum); +PANO13_IMPEX void filter ( TrformStr *TrPtr, flfn func, flfn16 func16, void* params, int color); +PANO13_IMPEX void CopyImageData ( Image *dest, Image *src ); |