DAS  3.1.6 - 18/09/2017
Dil.h
Go to the documentation of this file.
1 // ****************************************************************************
2 // ****************************************************************************
3 // ** **
4 // ** D T A I M A G I N G L I B R A R Y **
5 // ** ----------------------------------- **
6 // ** (C) 1997-2002 DTA, All Rights Reserved **
7 // ** **
8 // ** **
9 // ** Develope contributes: Manuele Turini **
10 // ** **
11 // ** Revision history: **
12 // ** **
13 // ** Rev. 2.14 Beta 29/11/2002 **
14 // ** Rev. 2.18 Beta 16/12/2002 **
15 // ** Rev. 2.20 Beta 24/12/2002 **
16 // ** **
17 // ****************************************************************************
18 // ****************************************************************************
19 
20 #include "dildef.h"
21 
23 
24 // ****************************************************************************
25 // Basic & Control ************************************************************
26 // ****************************************************************************
27 
28 C_DEF int DI_Init(int mod);
29  // Return the library revision
30 C_DEF int DI_Ver(char *ver);
31 C_DEF void DI_ColorPick(int mod, int *R, int *G, int *B);
32 C_DEF int DI_LoadColor(char *name);
33 C_DEF int DI_SaveColor(char *name);
34 C_DEF void DI_MFore(int w, MOBJECT obj);
35 C_DEF void DI_MBack(int w, MOBJECT obj);
36 C_DEF void DI_MColor(int w, MOBJECT obj);
37 C_DEF void DI_Color(MOBJECT obj);
38 
39 
40 // ****************************************************************************
41 // Handle of image file format ************************************************
42 // ****************************************************************************
43 
44 C_DEF int DI_RAWSave(char *fname, int s);
45 C_DEF int DI_RAWLoad(char *fname, int dx, int dy, U32 head, int size, int byte);
46 
47  // Load a RAW image file
48  //
49  // Parameters:
50  // s = image server
51  // dx,dy = image dimension
52  // head = offset to skip header
53  // size = 0: byte, 1: word, 2: float
54  // byte = 0: Low Byte - High Byte (PC), 1: High Byte - Low Byte (MAC)
55 C_DEF int DI_RAWLoading(int s, int dx, int dy, U32 head, int size, int byte, char *fname);
56 
57 C_DEF int DI_ASCSave(char *fname, int s);
58 C_DEF int DI_IMGLoad(char *f);
59 C_DEF int DI_DIFSave(char *f, int s, int mod);
60 C_DEF int DI_DIFLoad(char *f, int mod);
61 
62  // Load a DIF file into a specified server
63  //
64  // Return:
65  // 0 = ok
66  // 1 = error
67 C_DEF int DI_DIFLoadBin(char *f, int s);
68 C_DEF int DI_DIFLoadInfo(char *f, int s);
69 
70 C_DEF int DI_FITSLoad(char *fi, int mode, void *mat);
71 C_DEF int DI_FITSSave(char *fname, int s);
72 C_DEF void DI_FITSKey(void);
73 C_DEF int DI_InputPGM_PPM(char *fname);
74 C_DEF int DI_LoadImage(char *tit, int type); // Generic image load procedure
75 C_DEF int DI_ImportImage(char *path, char *name, int type, int mode);
76 
77 
78 // ****************************************************************************
79 // Warning procedures *********************************************************
80 // ****************************************************************************
81 
82 C_DEF void DI_Warning(int w, char *tit);
83 C_DEF int DI_WarnSel(char *tit);
84 C_DEF MOBJECT DI_Message(char *tit, char *msg);
85 C_DEF void DI_MsgClose(MOBJECT sh);
86 C_DEF void DI_MsgRaise(MOBJECT sh);
87 
88  // Return codes
89  // 1 = yes
90  // 0 = no
91 C_DEF int DI_QuestionSel(char *tit, char *quest, char *bmp);
92 C_DEF int DI_QuestionSelXY(char *tit, char *quest, char *bmp, int x, int y);
93 
94 
95 // ****************************************************************************
96 // File procedures ************************************************************
97 // ****************************************************************************
98 
99 C_DEF int DI_FileCopy(char *src, char *dst);
100 C_DEF void DI_FileShow(char *tit, char *file);
101 C_DEF MOBJECT DI_FileShowCreate(char *tit, char *file, WM_CLOSE_CB cb);
102 C_DEF int DI_FileExist(char *tit);
103  // Return: 1 if PATH exist, else return 0
104 C_DEF int DI_PathExist(char *path);
105 C_DEF char * DI_FullName(char *dir, char *name);
106 C_DEF void DI_SplitName(char *fullname, char *fpath, char *fname);
107 C_DEF void DI_FindExtName(char *fullname, char *fext);
108 C_DEF void DI_FindDirName(char *fullname, char *fdir);
109 C_DEF int DI_FindDrive(char *fullname);
110 C_DEF int DI_ExtNameCode(char *fext);
111 C_DEF int DI_FileManager(char *dir, char *_fname, U16 *fmt, int mode);
112 C_DEF void DI_FileObjectOpen(MOBJECT shell, const char *ext, char *fname, char *dname);
113 C_DEF void DI_FileObjectGetFullName(char *name);
114 C_DEF void DI_FileObjectGetPath(char *path);
115 C_DEF void DI_FileObjectGetFile(char *fname);
116 C_DEF void DI_FileObjectUpdate(void);
117 
118 // ****************************************************************************
119 // Math functions on Image ****************************************************
120 // ****************************************************************************
121  /*
122  * Open a ghost image (used only as matrix).
123  * dx = X matrix dimension
124  * dy = Y matrix dimension
125  * ifmt = matrix format
126  * 0 = 16 bit unsigned
127  * 1 = 16 bit RGB
128  * 2 = float (4 bytes)
129  * Return an image identifier (id) 0 to n
130  * A negative value indicate an error
131  * Errors:
132  * -1 = Memory allocation error
133  * -2 = Type inexistent/Format inexistent
134  * -3 = Too matrix open at the same time
135  */
136 C_DEF int DI_OpenMatrix(U16 dx, U16 dy, U16 ifmt);
137 
138  // Close the selected matrix
139 C_DEF void DI_CloseMatrix(int s);
140 
141 C_DEF double DI_Sigma(double media, int w);
142 C_DEF double DI_ScanMaxMin(int w, float *mx, float *mi);
143 C_DEF void DI_ScanMaxMinColor(int w);
144 
145  // Math operation between images, also with different types and size
146  // Parameters:
147  // dst = destination and first operand image
148  // src = 2nd operand image
149  // op = math operation to be prform
150  // xof, yof = requested shift for the 2nd operand
151  // dscal, sscal = scale factor for 1st and 2nd operand
152  // Return:
153  // 0 = ok, operation performed
154  // 1 = error, 2nd operand don't exist
155  // 2 = error, 1st operand don't exist
156 C_DEF int DI_MathMerge(int dst, int src, int op, int xof, int yof, float dscal, float sscal);
157 
158 C_DEF int DI_Centroid(int s, float *px, float *py, int w, int h, float *dvx);
159 C_DEF float DI_PeakMedia(int s, int x, int y, int wx, int wy);
160 C_DEF void DI_AddMultiply(int srv, double add, double mul);
161 C_DEF void DI_Log(int srv);
162 
163  // Build a color image from 3 monochrome images
164  // Parameters:
165  // type = image type: DIF, FIT, IMG, .....
166  // _abuf = Filename of the red part
167  // _bbuf = Filename of the green part
168  // _cbuf = Filename of the blue part
169  // rx, ry = shift value for red image
170  // gx, gy = shift value for green image
171  // bx, by = shift value for blue image
172  // kr, kg, kb = constant multiplier for each channel
173  // Return:
174  // >= 0 Build done, return image server
175  // < -10 Loading error
176  // -10 different size in image channel
177 C_DEF int DI_BuildRGBMerge(int type, char *_abuf, char *_bbuf, char *_cbuf, int rx, int ry, int gx, int gy, int bx, int by, float kr, float kg, float kb);
178 
179 C_DEF void DI_ROIAnalyze(int srv, roi *r);
180 C_DEF int DI_GaussFitBuffer(int srv, float *i0, float *sigma, int x0, int y0, int wi, int he, float bgvalue);
181 C_DEF void DI_Statistics(int server);
182 
183  // Set coefficent (com = 1), Execute range adjustment (com = 0)
184 C_DEF float DI_DataAdj(int s, int com, float data);
185 
186  // Return the media value of the selected image
187 C_DEF float DI_ImageMedia(int s);
188 
189  // Calibrate an image (s)
190  // dark = image server of the dark image
191  // flat = image server of the flat image
192  // df = image server of the dark of the flat image
193  // kdark, kflat, kdflat = Constant multiplier for each calibration images
194  // Return:
195  // 0 = ok
196  // 1 = error
197 C_DEF int DI_ImageCalibrate(int s, int dark, int flat, int df, float kdark, float kflat, float kdflat);
198 
199  // Perform a math operation between two operands
200 C_DEF float DI_MathOperand(int oper, float dv, float sv);
201 
202  // Perform a math operation between value and contents of the memory at x,y coord
203  // Parameters:
204  // oper: math operation
205  // server: image server where the first parameter and the result will be place
206  // tdata: data type
207  // x,y: location in the image
208  // value: 2nd operand
209 C_DEF void DI_WrMath(int oper, int server, int tdata, int x, int y, float value);
210 
211  // Normalize image server [s] to [0 - norm] value
212 C_DEF int DI_ImageNormalize(int s, float norm);
213 
214  // Execute vertical binning of a selected area
215  // Parameters:
216  // s = image server
217  // sx, sy = start of window
218  // dx, dy = window dimension
219  // data = output of the line
220  //
221  // Return:
222  // 0 = done
223  // 1 = error
224 C_DEF int DI_VertBin(int s, int sx, int sy, int dx, int dy, double *data);
225 
226  // Read a segment of image
227  // Parameters:
228  // s = Image server
229  // mod = 0: Horiz., 1: Vert. direction
230  // sx, sy = start of window
231  // dx, dy = window dimension
232  // data = output of the line
233  //
234  // Return:
235  // 0 = done
236  // 1 = error
237 C_DEF int DI_ReadSegment(int s, int mod, int sx, int sy, int dx, int dy, double *data);
238 
239  // Rotate an image clockwise or counterclockwise
240  // Parameters:
241  // rot = 0: CW, 1: CCW, rotation
242  // s = image server
243  //
244  // Return:
245  // Image server of the rotated image
246  // < 0 error
247 C_DEF int DI_ImageRotate90(int s, int rot);
248 
249  // Rotate an image some arbitrary angle
250  // New pixels are generated using bilinear interpolation
251  // Parameters:
252  // s = Image server
253  // ang = angle of rotation 0 - 360
254  // xc, yc = Center of rotation
255  // fill = Filling value
256  // Return:
257  // >= 0: Image server, < 0 Error
258 C_DEF int DI_ImageRotate(int s, int xc, int yc, float ang, float fill);
259 
260  // Build a histogram of an image region
261  // data is compressed into 16 bit
262  // Return:
263  // 0 = ok
264  // 1 = fail
265 C_DEF int DI_ImageHistogram(int s, int sx, int sy, int dx, int dy, double range, double *data);
266 
267  // Perform vertical or horizontal profile projection
268  // Parameters:
269  // s = image server
270  // dir = 0: horizontal, 1: vertical
271  // sx, sy = start coordinates
272  // dx, dy = window dimension
273  // data = output of the profile
274  // Return:
275  // 0 = ok
276  // 1 = error
277 C_DEF int DI_ProjProfile(int s, int dir, int sx, int sy, int dx, int dy, double *data);
278 
279  // Build a density map
280  // Parameters:
281  // s = image server
282  // sx, sy = start coordinates
283  // dx, dy = window dimension
284  // Return:
285  // >= 0 Image server of the map
286  // < 0 error
287 C_DEF int DI_ImageDensity(int s, int sx, int sy, int dx, int dy);
288 
289 C_DEF int DI_ImageScanMaxMin(int s, float *hig, float *low, int sx, int sy, int dx, int dy);
290 
291  // Build an isophotal image form a source image server
292  // Parameters:
293  // s = image server
294  // kfilt = Set kernel filter 0: No filter
295  // sx, sy: Start of window
296  // dx, dy: Window dimension
297  // qtz : Quantization level, accepted range 2-256
298  // max,min: min/max value for the range
299  // Return:
300  // < 0 : error
301  // >= 0: Image server with isophotal
302 C_DEF int DI_ImageIsophotal(int s, int kfilt, int sx, int sy, int dx, int dy, int qtz, float min, float max);
303 
304  // Image convolution
305  // Parameters:
306  // s = image server
307  // kdx,kdy = kernel dimension
308  // kern = kernel pointer
309  // sx,sy = source of window
310  // dx,dy = window dimension
311  // Return:
312  // 0 = Operation performed
313  // 1 = Image don't exist
314  // 2 = Kernel is bigger then image
315  // 3 = Kernel have not odd dimension
316  // 4 = Can't open temporary matrix
317 C_DEF int DI_ImageConvolution(int s, int kdx, int kdy, float *kern[], int sx, int sy, int dx, int dy);
318 
319  // Collection of kernels
320  // Parameter:
321  // kern = kernel identifier
322  // Return:
323  // size: kernel size
324  // kernel: convolution matrix
325 C_DEF int DI_ConvolutionList(int kern, int *size, float *kernel[]);
326 
327  // Perform a matrix convolution on the selected image server
328  // Parameters:
329  // s: Image server
330  // kern: Kernel to be used
331  // sx,sy: Source window, if set it -1 operation will be performed on full image
332  // dx,dy: Window dimension
333  // Return:
334 C_DEF int DI_Convolution(int s, int kern, int sx, int sy, int dx, int dy);
335 
336  // Build a test pattern image
337  // Parameters:
338  // dx, dy: Image dimension
339  // type: INTIMG, RGBIMG, FLTIMG
340  // function: SQUARE, SIN, LOG, ...
341  // period: Period of the function, for trigonometric function this value is an angle (degree)
342  // rotation: Angle of view (0-359)
343  // Return:
344  // >= 0 Image server
345 C_DEF int DI_ImageTest(int dx, int dy, int type, int function, float period, float rotation);
346 
347  // Slow Fourier transform procedures
348 C_DEF void DI_SFTcexp(COMPLEX z1, COMPLEX *res);
349 C_DEF void DI_SFTcmult(COMPLEX z1, COMPLEX z2, COMPLEX *res);
350 C_DEF void DI_SFTcsum(COMPLEX z1, COMPLEX z2, COMPLEX *res);
351 C_DEF void DI_SFTcmplx(double rp, double ip, COMPLEX *z);
352 C_DEF double DI_SFTcnorm(COMPLEX z);
353 C_DEF void DI_SlowFT(double *data, COMPLEX *dft, int num);
354 
355  // Convert a REAL/COMPLEX into real number with log for display
356  // mode = 1: Log output, 0: Lin output
357 C_DEF void DI_SlowFTConvert(int mode, double *data, COMPLEX *dft, int num, double vmin, double vmax);
358 
359  // Find max/min value into specified array
360 C_DEF void DI_ArrayScanMaxMin(double *data, int num, double *dmin, double *dmax);
361 
362  // Calc the frequency response of selected filter kernel
363 C_DEF int DI_FrequencyResponse(int kernel);
364 
365  // Build an image mediana from an image sequence
366  // Use AlfaTrim filter
367  // Parameters:
368  // prefix = file name prefix (with path name)
369  // imgtype = image file format
370  // num = number of frames
371  // media = num. of frame of central window, to be used in media
372  // Return:
373  // >= 0 = Image server of the mediana
374  // -10 = Num. of frames ecceeds max num. of opened images at the same time
375  // -11 = Can't open image mediana
376 C_DEF int DI_Mediana(char *prefix, int imgtype, int num, int media);
377 
378 C_DEF int DI_Mandelbrot(char *tit, int xd, int yd, int depth, double infx, double supx, double infy, double supy);
379 
380 
381 // ****************************************************************************
382 // Direct acces to the image or matrix ****************************************
383 // ****************************************************************************
384 
385 C_DEF float DI_RdMat(int server, int tdata, int x, int y);
386 C_DEF void DI_WrMat(int server, int tdata, int x, int y, float value);
387 
388 /* Useful macros defined in dildef.h for matrix access
389  *
390  * void UWrMat(int server, int x, int y, U16 v); Write for INTIMG
391  * void RWrMat(int server, int x, int y, U16 v); Write for RED channel RGBIMG
392  * void GWrMat(int server, int x, int y, U16 v); Write for GREEN channel RGBIMG
393  * void BWrMat(int server, int x, int y, U16 v); Write for BLUE channel RGBIMG
394  * void FWrMat(int server, int x, int y, float v); Write for FLTIMG
395  * void _WrMat(int server, int x, int y, float v); Write for complex in FLTIMG
396  *
397  * Simmetrical macros for read
398  *
399  * U16 URdMat(int server, int x, int y);
400  * U16 RRdMat(int server, int x, int y);
401  * U16 GRdMat(int server, int x, int y);
402  * U16 BRdMat(int server, int x, int y);
403  * float FRdMat(int server, int x, int y);
404  * float _RdMat(int server, int x, int y);
405  */
406 
407 
408 // ****************************************************************************
409 // Image control **************************************************************
410 // ****************************************************************************
411 
412 C_DEF void DI_RunHisto(void);
413 C_DEF void DI_Regen(int s);
414 C_DEF void DI_SetName(int s, char *name);
415 C_DEF void DI_ImgActivate(int s);
416 C_DEF int DI_OpenImage(U16 dx, U16 dy, U16 ifmt, U16 type, char *tit);
417  /*
418  * pix = pixel zoom (only integer values)
419  * mode = 0: 1:1, 1 = forced size, 2 = Fit from frame window
420  * wx,wy = requested image dimension
421  */
422 C_DEF int DI_ImageProperties(int srv, U16 dx, U16 dy, U16 wx, U16 wy, U16 ifmt, U16 sts, char *tit, int pix, int pixy, int mode);
423  /*
424  * pix = pixel zoom (only integer values)
425  * mode = 0: 1:1, 1 = forced size, 2 = Fit from frame window
426  * wx,wy = requested image dimension
427  * lx, ly = Window position into the screen
428  */
429 C_DEF int DI_ImagePropertiesPos(int srv, U16 dx, U16 dy, U16 wx, U16 wy, U16 ifmt, U16 sts, char *tit, int pixx, int pixy, int mode, int lx, int ly);
430 C_DEF void DI_ImageDraw(int srv, int mode, MIMAGE mim, MOBJECT img, int startx, int starty, int dimx, int dimy, int pixx, int pixy);
431 
432  // Protected close image
433 C_DEF int DI_CloseImage(int s);
434 
435  // Unprotected close image
436 C_DEF int DI_UnpCloseImage(int s);
437 
438  // Lens operation
439 C_DEF void DI_Lens(void);
440  // Return: 1 = Lens active, 0 = Lens off
441 C_DEF int DI_LensStatus(void);
442  // Redraw lens contents
443 C_DEF void DI_LensRedraw(void);
444 C_DEF void DI_LensClose(void);
445 
446 C_DEF void DI_GraphExec(int srv);
447 C_DEF void DI_ImageEditInfo(int s);
448 C_DEF void DI_ImagesManager(void);
449 
450  // Check the presence of the selected image server, 1 = present, 0 = absent
451 C_DEF int DI_ImageExist(int s);
452 
453  // Check the size of two image server, 0 = same size, 1 = different
454 C_DEF int DI_ImageSizeCheck(int dst, int src);
455 
456  // Return (x & y) the image server dimension, return code specify the error (1)
457 C_DEF int DI_ImageSize(int s, int *x, int *y);
458 
459  // Copy the contents of src image server into dst image server. Return 1 for an error
460  // The image server must have the same size, but different types are accepted
461 C_DEF int DI_ImageCopy(int dst, int src);
462 
463  // Copy partial image contents to another image with automatic channel select
464 C_DEF int DI_ImageCopyPar(int dst, int src, int sx, int sy, int dx, int dy);
465 
466  // Return the image type
467  // INTIMG 0 16 bit unsigned image
468  // RGBIMG 1 Color image (RGB)
469  // FLTIMG 2 float image
470 C_DEF int DI_ImageType(int s);
471 
472  // From image type to default channel, s = image server
473 C_DEF int DI_ImageChan(int s);
474 
475  // From image chan return the possible image type
476 C_DEF int DI_ChanToType(int chan);
477 
478  // Save selected image in undo directory
479 C_DEF int DI_DoUndo(int s);
480 
481  // Restore selected image from undo directory
482 C_DEF int DI_DoRedo(int s);
483 
484  // Check if two images have the same dimension
485  // Return:
486  // 0 = ok, same size
487  // 1 = different
488 C_DEF int DI_CheckImageSize(int s, int d);
489 
490  // Arrange all image windows
491 C_DEF void DI_ImageArrange(void);
492 
493 
494 // ****************************************************************************
495 // Window operations on the image *********************************************
496 // ****************************************************************************
497 
498  // Procedure to retrive window parameters
499 C_DEF int DI_WindowPar(char *tit, int *ixs, int *iys, int *ixd, int *iyd);
500 
501  // Return the active window
502 C_DEF int DI_ActiveWindow(int s);
503 
504  // Find the first available window identifier
505 C_DEF int DI_LookFreeWindow(int s);
506 
507  // Find the first created window identifier
508 C_DEF int DI_LookFirstWindow(int s);
509 
510  // Num. of present windows
511 C_DEF int DI_NumOfWindow(int s);
512 
513  // Create a new window
514 C_DEF int DI_SetNewWindow(int s, int sx, int sy, int dx, int dy);
515 
516  // Change the parameter of a window
517 C_DEF int DI_ChangeWindow(int s, int win, int sx, int sy, int dx, int dy);
518 
519  // Delete a window
520 C_DEF int DI_DeleteWindow(int s, int win);
521 
522  // Delete all windows
523 C_DEF void DI_ClearAllWindow(int s);
524 
525  // Retrive window parameters
526 C_DEF int DI_GetWindowPar(int s, int win, int *sx, int *sy, int *dx, int *dy);
527 
528  // Check the presence of windows (ok = 1, No = 0)
529 C_DEF int DI_WinOn(int s);
530 
531  // Duplicate a window
532 C_DEF int DI_DupWindow(int s, int win);
533 
534  // Activate a created window
535 C_DEF int DI_ActivateWindow(int s, int win);
536 
537  // Copy window parameters into the clipboard
538 C_DEF int DI_CopyWindow(int s, int win);
539 
540  // Paste window, from clipboard info, into selected image
541 C_DEF int DI_PasteWindow(int s);
542 
543  // Copy the contents of the selected window
544 C_DEF int DI_CopyWindowContents(int s, int win);
545 
546  // Paste the window contents
547 C_DEF int DI_PasteWindowContents(int s, int oper, int win, int chan);
548 
549  // Edit the window data
550 C_DEF int DI_EditWindowContents(int s, int win);
551 
552  // Paste the window contents to an image
553 C_DEF int DI_PasteWindowToImage(void);
554 
555  // Glue selected windo
556 C_DEF int DI_GlueWindow(int s, int win);
557 
558  // UnGlue selected windo
559 C_DEF int DI_UnGlueWindow(int s, int win);
560 
561  // Fill the window with data
562 C_DEF int DI_FillWindow(int s, int win, int chan, float data);
563 
564 
565 // ****************************************************************************
566 // Flag procedures ************************************************************
567 // ****************************************************************************
568 
569  // Plot a flag on the image
570 C_DEF void DI_PlotFlag(int x, int y, int num, MOBJECT draw, MTColor col, MTFont font, int mode);
571 
572  // Create a new flag
573 C_DEF int DI_SetNewFlag(int s, int x, int y);
574 
575  // Return the active flag on specified image
576 C_DEF int DI_ActiveFlag(int s);
577 
578  // Remove all flags from selected image server
579 C_DEF void DI_ClearAllFlag(int s);
580 
581  // Delete selected flag
582 C_DEF int DI_DeleteFlag(int s, int f);
583 
584  // Return the num. of active flag on the selected image server
585 C_DEF int DI_NumOfFlag(int s);
586 
587  // Return location of selected flag
588 C_DEF int DI_LocationFlag(int s, int f, int *x, int *y);
589 
590 
591 
592 // ****************************************************************************
593 // Image Edit functions *******************************************************
594 // ****************************************************************************
595 
596 C_DEF void DI_Shift(int w, int vx, int vy, float med);
597 C_DEF int DI_Dup(int s); // Duplicate selected image
598 
599  // Copy the image info from source server (s) to destination server (d)
600 C_DEF int DI_CopyImageInfo(int d, int s);
601 
602  // Copy all image attributes from an image server to another
603  // Info & palettes
604 C_DEF void DI_ImageCopyAttribute(int dst, int src);
605 
606 
607  // Change the aspect ratio of the image
608 C_DEF int DI_ImageFloatResize(int srv, double ix, double iy);
609 C_DEF int DI_ImageResize(int s, int x, int y, int w, int h, int dx, int dy, int ox, int oy, float vm);
610 C_DEF int DI_DilContr(int s, int vx, int vy, float fill);
611 C_DEF void DI_MirrorX(int w);
612 C_DEF void DI_MirrorY(int w);
613 C_DEF void DI_Negate(int w);
614 
615  // Horiz. rotation of a line
616  // Parameters:
617  // s = image server
618  // y = selected row
619  // dir = 0 left, 1 right
620  // shift = num of shift
621  // Return:
622  // 0 = ok
623  // 1 = error
624 C_DEF int DI_LineRotate(int s, int y, int dir, int shift);
625 
626  // Block of Horiz. line rotation
627  // Parameters:
628  // s = image server
629  // sy = start row
630  // dy = end row
631  // dir = 0 left, 1 right
632  // shift = num of shift
633  // Return:
634  // 0 = ok
635  // 1 = error
636 C_DEF int DI_LineBlockRotate(int s, int sy, int dy, int dir, int shift);
637 
638 
639  // Split a color image into 3 image components
640 C_DEF int DI_SplitImage(int s);
641 
642  // Merge a color image into a monochrome
643  // mod = 0 Average (R + G + B) / 3
644  // mod = 1 NTSC (R * 0.299 + G * 0.587 + B * 0.114)
645 C_DEF int DI_MergeColorToMono(int s, int mod);
646 
647  // Edit data of a region of interest
648 C_DEF int DI_ImageEdit(int s, int xs, int ys, int wx, int wy);
649 
650  // Image square for FFT
651  // s = Image server
652  // win = Selected window
653  // com = 1: Upper full image, 2: Lower full image, 3: Upper window, 4: Lower window
654  // Return:
655  // -10 = window not present
656  // -11 = image dimension out of range
657 C_DEF int DI_ImageSquare(int s, int win, int com, float media);
658 
659  // Convert a selected image (s) to a new data format (type).
660  // Parameter chan is used when the new type is an RGB image,
661  // you can choose a selective channel (RGB) or in average mode.
662 C_DEF int DI_ImageConvert(int s, int type, int schan, int tchan);
663 
664  // Fill an image region
665  // Parameters:
666  // s: Image server
667  // ch: Image channel
668  // sx,sy = source of window
669  // dx,dy = window dimension
670  // Return:
671  // 0 = Operation performed
672  // 1 = Image don't exist
673 C_DEF int DI_ImageFill(int s, int ch, int sx, int sy, int dx, int dy, float data);
674 
675  // Copy partial image contents to another image with selected channel
676  // Parameters:
677  // dst = Destination image server
678  // src = Source image server
679  // schan = Source channel
680  // dchan = Destination channel
681  // sx,sy = Source of window
682  // dx,dy = Window dimension
683 C_DEF int DI_ImageCopyParChan(int dst, int src, int dchan, int schan, int sx, int sy, int dx, int dy);
684 
685 // ***************************************************************************
686 // Status bar ****************************************************************
687 // ***************************************************************************
688 
689 C_DEF void VRange( char *str, int val);
690 
691 
692 // ***************************************************************************
693 // Generic Input/Output Functions ********************************************
694 // ***************************************************************************
695 
696 C_DEF int DI_MInput(char *tit, int x, int y, int *len, char *name[], char *pre[], char *out[]);
697 C_DEF int DI_Ask(char *tit, char *bmp, char *label, char *pre, int len);
698 C_DEF void DI_Grab(MOBJECT w, int type, void *out);
699 C_DEF void DI_VarSetRes(int num, char *tit, char *label[], U32 *var);
700 C_DEF int DI_ExcelExport(int num, double *data, char *title, char *format, char *fname);
701 C_DEF char * DI_Parse(FILE *fd, char tok);
702 C_DEF void DI_HexEdit(char *fname);
703 
704  // Build a radio button list,
705  // n = number of items
706  // x = number of horizonthal items
707  // list = list of name for each item
708  // sel = associated code for each item (-1 are reserved)
709  // return = -1 if items > 64, else the selected item
710 C_DEF int DI_RadioButton(int n, int x, char *title, char *list[], int sel[]);
711 
712  // Select an RGB channel
713  // RMAT 1 Red channel matrix
714  // GMAT 2 Green channel matrix
715  // BMAT 3 Blue channel matrix
716  // ARGB 6 RGB average
717 C_DEF int DI_RGB_SelectChannel(void);
718 
719  // Select an image type
720  // Return:
721  // INTIMG = 0 16 bit unsigned image
722  // RGBIMG = 1 Color image (RGB)
723  // FLTIMG = 2 float image
724 C_DEF int DI_SelectImageType(void);
725 
726  // Choosing menu for math operations
727  // Return:
728  // 0 = Adding
729  // 1 = Subtract
730  // 2 = Dark mode
731  // 3 = Average
732  // 4 = Multiply
733  // 5 = Divide
734  // 6 = And
735  // 7 = Or
736  // 8 = Xor
737  // 9 = Move
738 C_DEF int DI_ChooseMathOper(void);
739 
740  // Select a dynamic range
741  // Return:
742  // 1 = 8 bit
743  // 2 = 10 bit
744  // 3 = 12 bit
745  // 4 = 14 bit
746  // 5 = 15 bit
747  // 6 = 16 bit
748 C_DEF int DI_SelectRange(void);
749 
750  // Build a radio button list,
751  // n = number of items
752  // x = number of horizonthal items
753  // list = list of name for each item
754  // return = -1 if items > 64, else the selected item
755 C_DEF int DI_PushButton(int n, int x, char *title, char *label, char *list[]);
756 
757 
758 // ****************************************************************************
759 // Graphics *******************************************************************
760 // ****************************************************************************
761 
762 C_DEF int DI_2DPlotOpen(char *title, int num, double *data, int dx, int dy, char *config, int mode);
763 C_DEF void DI_2DPlotRegen(int plot);
764 C_DEF void DI_2DPlotLoad(int plot, double *data);
765 C_DEF void DI_2DPlotClose(int plot);
766 C_DEF int DI_AnimateOpen(char *prefix, int type, int num, MOBJECT pix, int sx, int sy, int width, int height, int dx, int dy);
767 C_DEF void DI_AnimateStart(void);
768 C_DEF void DI_AnimateClose(void);
769 C_DEF int DI_2DLoadConfig(char *name, int p);
770 C_DEF void DI_WriteDigit(MOBJECT *pix, char *fmt);
771 
772 
773 // ****************************************************************************
774 // Console operation **********************************************************
775 // ****************************************************************************
776 
777 C_DEF int DI_ConsoleOpen(char *title, int col, int row, int display, int scroll);
778 C_DEF void DI_ConsoleClear(int n);
779 C_DEF void DI_ConsoleRaise(int n);
780 C_DEF void DI_ConsoleClose(int n);
781 C_DEF void DI_ConsoleScroll(int n);
782 C_DEF void DI_ConsolePrint(char *str, int n);
783  // Enable (dsp = 1) or disable (dsp = 0) display
784 C_DEF void DI_ConsoleMode(int n, int dsp);
785 C_DEF void DI_ConsoleDisplay(int n);
786 C_DEF void DI_ConsoleLocate(int x, int y, int n);
787 C_DEF void DI_ConsoleInput(char *title, int type, int n, void *out);
788 
789 // ****************************************************************************
790 // Palette operation **********************************************************
791 // ****************************************************************************
792 
793 // Call palette editor
794 C_DEF void DI_PaletteMan(void);
795 
796 // Deallocate MTColor for image palette
797 C_DEF void DI_PaletteDeAlloc(MTColor *iPAL);
798 
799 // Allocate a palette (MTColor)
800 C_DEF void DI_PaletteAlloc(MTColor *iPAL, pal *Pal);
801 
802 // Create a new palette from math function
803 C_DEF void DI_PaletteCreate(pal *Pal, int *seed, int func, int level);
804 
805 // Copy a palette from one source to another
806 C_DEF void DI_PaletteCopy(pal *dst, pal *src);
807 
808 // Invert palette position
809 C_DEF void DI_PaletteReverse(pal *src);
810 
811 // Rotate of n position (with direction +/- shift) a palette
812 C_DEF void DI_PaletteRotate(pal *src, int shift, int chan);
813 
814 // Load a palette from file
815 C_DEF int DI_PaletteLoad(pal *Pal, char *dir);
816 
817 // Load a palette from a binary file
818 C_DEF int DI_PaletteLoadBin(pal *Pal, int fd);
819 
820 // Save a palette to a file
821 C_DEF int DI_PaletteSave(pal *Pal, char *dir);
822 
823 // Save a palette to a binary file
824 C_DEF int DI_PaletteSaveBin(pal *Pal, int fd);
825 
826 // ****************************************************************************
827 // DIL Internal use ***********************************************************
828 // ****************************************************************************
829 
830 C_DEF int MWriteGIFFile(int s, char *fname);
831 C_DEF void DI_ShowMIM(MIMAGE mpd, char *name); // Show bitmap
832 C_DEF void DI_MObjectSetPopupHelp(MOBJECT obj, const char *str, int delay, int duration);
833 C_DEF int FindKEY(char *buf);
834 C_DEF void DI_OpenDigit(void);
835 C_DEF void HistoClose(void);
C_DEF void DI_ConsoleRaise(int n)
C_DEF int DI_CheckImageSize(int s, int d)
C_DEF float DI_PeakMedia(int s, int x, int y, int wx, int wy)
Definition: Dildef.h:277
C_DEF void DI_ScanMaxMinColor(int w)
C_DEF void DI_WrMat(int server, int tdata, int x, int y, float value)
C_DEF void DI_SFTcsum(COMPLEX z1, COMPLEX z2, COMPLEX *res)
C_DEF int DI_ImageConvert(int s, int type, int schan, int tchan)
C_DEF int DI_DoUndo(int s)
C_DEF void DI_SetName(int s, char *name)
C_DEF void DI_PaletteAlloc(MTColor *iPAL, pal *Pal)
C_DEF void DI_AnimateStart(void)
C_DEF int DI_WindowPar(char *tit, int *ixs, int *iys, int *ixd, int *iyd)
C_DEF int DI_FindDrive(char *fullname)
C_DEF void DI_PaletteMan(void)
C_DEF void DI_PaletteCopy(pal *dst, pal *src)
C_DEF int DI_DeleteWindow(int s, int win)
C_DEF void DI_PaletteDeAlloc(MTColor *iPAL)
C_DEF int DI_Centroid(int s, float *px, float *py, int w, int h, float *dvx)
C_DEF int DI_ImageCopyParChan(int dst, int src, int dchan, int schan, int sx, int sy, int dx, int dy)
C_DEF int DI_LoadImage(char *tit, int type)
C_DEF void DI_FileObjectGetPath(char *path)
#define C_DEF
Definition: Dildef.h:221
Definition: Dildef.h:382
C_DEF int DI_QuestionSel(char *tit, char *quest, char *bmp)
C_DEF void DI_Regen(int s)
C_DEF int DI_ChooseMathOper(void)
C_DEF double DI_ScanMaxMin(int w, float *mx, float *mi)
C_DEF int DI_ImageCopy(int dst, int src)
C_DEF void DI_ConsoleScroll(int n)
C_DEF int DI_SplitImage(int s)
C_DEF int DI_DoRedo(int s)
C_DEF int DI_FrequencyResponse(int kernel)
C_DEF int DI_ActiveFlag(int s)
C_DEF int DI_ActivateWindow(int s, int win)
C_DEF int DI_LookFreeWindow(int s)
C_DEF float DI_ImageMedia(int s)
C_DEF void DI_MBack(int w, MOBJECT obj)
C_DEF void DI_ConsoleMode(int n, int dsp)
C_DEF int DI_CopyImageInfo(int d, int s)
C_DEF void DI_PaletteReverse(pal *src)
C_DEF int DI_BuildRGBMerge(int type, char *_abuf, char *_bbuf, char *_cbuf, int rx, int ry, int gx, int gy, int bx, int by, float kr, float kg, float kb)
C_DEF int DI_SelectImageType(void)
C_DEF int DI_FileManager(char *dir, char *_fname, U16 *fmt, int mode)
C_DEF int DI_ExcelExport(int num, double *data, char *title, char *format, char *fname)
C_DEF void DI_MsgClose(MOBJECT sh)
C_DEF void DI_ImgActivate(int s)
C_DEF void DI_FileObjectOpen(MOBJECT shell, const char *ext, char *fname, char *dname)
C_DEF int DI_DIFLoadInfo(char *f, int s)
C_DEF int DI_GlueWindow(int s, int win)
C_DEF void DI_ConsoleInput(char *title, int type, int n, void *out)
C_DEF char * DI_FullName(char *dir, char *name)
C_DEF void DI_MirrorY(int w)
C_DEF void DI_Shift(int w, int vx, int vy, float med)
C_DEF int DI_ImageScanMaxMin(int s, float *hig, float *low, int sx, int sy, int dx, int dy)
C_DEF int DI_FileCopy(char *src, char *dst)
C_DEF int DI_LookFirstWindow(int s)
Definition: Dildef.h:392
C_DEF dil DIL
Definition: Dil.h:22
C_DEF int DI_ImageSize(int s, int *x, int *y)
C_DEF void DI_ImagesManager(void)
C_DEF void DI_FileObjectGetFile(char *fname)
C_DEF void DI_Log(int srv)
C_DEF void DI_MObjectSetPopupHelp(MOBJECT obj, const char *str, int delay, int duration)
Definition: Dildef.h:434
C_DEF void DI_PaletteCreate(pal *Pal, int *seed, int func, int level)
C_DEF int DI_CloseImage(int s)
C_DEF double DI_SFTcnorm(COMPLEX z)
C_DEF void DI_Color(MOBJECT obj)
C_DEF int FindKEY(char *buf)
C_DEF int DI_ImagePropertiesPos(int srv, U16 dx, U16 dy, U16 wx, U16 wy, U16 ifmt, U16 sts, char *tit, int pixx, int pixy, int mode, int lx, int ly)
C_DEF int DI_RAWLoading(int s, int dx, int dy, U32 head, int size, int byte, char *fname)
C_DEF void DI_ImageEditInfo(int s)
C_DEF void DI_ClearAllFlag(int s)
C_DEF int DI_FITSLoad(char *fi, int mode, void *mat)
C_DEF void DI_ImageDraw(int srv, int mode, MIMAGE mim, MOBJECT img, int startx, int starty, int dimx, int dimy, int pixx, int pixy)
C_DEF void DI_CloseMatrix(int s)
C_DEF int DI_QuestionSelXY(char *tit, char *quest, char *bmp, int x, int y)
C_DEF int DI_RadioButton(int n, int x, char *title, char *list[], int sel[])
static double ch
Definition: SOLPOS.C:120
C_DEF int DI_ImageRotate(int s, int xc, int yc, float ang, float fill)
C_DEF void DI_SFTcexp(COMPLEX z1, COMPLEX *res)
CARD32 MTColor
Definition: Mguidefs.h:183
C_DEF int DI_ImageDensity(int s, int sx, int sy, int dx, int dy)
C_DEF int DI_ImageResize(int s, int x, int y, int w, int h, int dx, int dy, int ox, int oy, float vm)
C_DEF char * DI_Parse(FILE *fd, char tok)
C_DEF int DI_RGB_SelectChannel(void)
C_DEF void DI_VarSetRes(int num, char *tit, char *label[], U32 *var)
short unsigned U16
2 byte without sign, range 0-65535
Definition: dcldef.h:375
C_DEF float DI_MathOperand(int oper, float dv, float sv)
C_DEF void DI_ConsoleLocate(int x, int y, int n)
C_DEF void DI_OpenDigit(void)
C_DEF int DI_2DPlotOpen(char *title, int num, double *data, int dx, int dy, char *config, int mode)
C_DEF void DI_MirrorX(int w)
C_DEF int DI_ImageHistogram(int s, int sx, int sy, int dx, int dy, double range, double *data)
C_DEF int DI_ChangeWindow(int s, int win, int sx, int sy, int dx, int dy)
C_DEF int DI_ImageCopyPar(int dst, int src, int sx, int sy, int dx, int dy)
C_DEF void DI_FileShow(char *tit, char *file)
C_DEF int DI_PasteWindow(int s)
C_DEF int DI_PaletteLoad(pal *Pal, char *dir)
unsigned int data[576]
Conversion data buffer 64 samples * 8 channels * 2 bytes.
C_DEF void DI_2DPlotClose(int plot)
C_DEF int DI_SelectRange(void)
C_DEF void DI_SplitName(char *fullname, char *fpath, char *fname)
Definition: Dildef.h:226
unsigned long U32
4 byte without sign, range 0-4294967295
Definition: dcldef.h:376
C_DEF int DI_ImageIsophotal(int s, int kfilt, int sx, int sy, int dx, int dy, int qtz, float min, float max)
C_DEF int DI_FITSSave(char *fname, int s)
MTFont font
Definition: DAS_Spatram.h:3066
C_DEF int DI_Ask(char *tit, char *bmp, char *label, char *pre, int len)
C_DEF void DI_ShowMIM(MIMAGE mpd, char *name)
C_DEF int DI_ImportImage(char *path, char *name, int type, int mode)
C_DEF float DI_DataAdj(int s, int com, float data)
C_DEF int DI_ConvolutionList(int kern, int *size, float *kernel[])
C_DEF int DI_PaletteSaveBin(pal *Pal, int fd)
C_DEF void DI_ColorPick(int mod, int *R, int *G, int *B)
C_DEF void DI_FindDirName(char *fullname, char *fdir)
C_DEF void DI_SlowFT(double *data, COMPLEX *dft, int num)
int MTFont
Definition: Mguidefs.h:175
C_DEF int DI_CopyWindow(int s, int win)
C_DEF int DI_UnGlueWindow(int s, int win)
C_DEF void DI_MFore(int w, MOBJECT obj)
C_DEF int DI_VertBin(int s, int sx, int sy, int dx, int dy, double *data)
C_DEF int DI_WinOn(int s)
C_DEF int DI_Mandelbrot(char *tit, int xd, int yd, int depth, double infx, double supx, double infy, double supy)
C_DEF void DI_SlowFTConvert(int mode, double *data, COMPLEX *dft, int num, double vmin, double vmax)
C_DEF void DI_FileObjectUpdate(void)
C_DEF int DI_Ver(char *ver)
void delay(unsigned long d)
Pauses for a specified number of milliseconds. .
Definition: Dxl.c:1113
Image description.
Definition: Mguidefs.h:436
C_DEF int DI_NumOfFlag(int s)
C_DEF void DI_PlotFlag(int x, int y, int num, MOBJECT draw, MTColor col, MTFont font, int mode)
C_DEF void HistoClose(void)
C_DEF int DI_WarnSel(char *tit)
C_DEF void DI_SFTcmult(COMPLEX z1, COMPLEX z2, COMPLEX *res)
C_DEF int DI_ImageExist(int s)
C_DEF void DI_LensClose(void)
C_DEF int DI_ImageFloatResize(int srv, double ix, double iy)
C_DEF void DI_MColor(int w, MOBJECT obj)
C_DEF void DI_ConsoleClear(int n)
C_DEF int MWriteGIFFile(int s, char *fname)
C_DEF int DI_DIFLoadBin(char *f, int s)
C_DEF int DI_RAWLoad(char *fname, int dx, int dy, U32 head, int size, int byte)
C_DEF int DI_ImageRotate90(int s, int rot)
C_DEF int DI_DIFSave(char *f, int s, int mod)
C_DEF int DI_ActiveWindow(int s)
C_DEF int DI_Dup(int s)
C_DEF void DI_Statistics(int server)
C_DEF MOBJECT DI_Message(char *tit, char *msg)
C_DEF int DI_GetWindowPar(int s, int win, int *sx, int *sy, int *dx, int *dy)
C_DEF void DI_Grab(MOBJECT w, int type, void *out)
C_DEF void DI_Warning(int w, char *tit)
C_DEF void DI_2DPlotLoad(int plot, double *data)
C_DEF void DI_RunHisto(void)
C_DEF int DI_LoadColor(char *name)
C_DEF int DI_ExtNameCode(char *fext)
C_DEF int DI_LensStatus(void)
C_DEF int DI_InputPGM_PPM(char *fname)
C_DEF int DI_FillWindow(int s, int win, int chan, float data)
C_DEF int DI_Convolution(int s, int kern, int sx, int sy, int dx, int dy)
C_DEF int DI_Init(int mod)
C_DEF void DI_LensRedraw(void)
C_DEF int DI_ChanToType(int chan)
static double p
Definition: SOLPOS.C:131
C_DEF int DI_ImageTest(int dx, int dy, int type, int function, float period, float rotation)
C_DEF void VRange(char *str, int val)
C_DEF int DI_DIFLoad(char *f, int mod)
C_DEF void DI_ConsoleDisplay(int n)
C_DEF int DI_PasteWindowToImage(void)
C_DEF int DI_SaveColor(char *name)
C_DEF int DI_ASCSave(char *fname, int s)
C_DEF int DI_ConsoleOpen(char *title, int col, int row, int display, int scroll)
C_DEF int DI_PushButton(int n, int x, char *title, char *label, char *list[])
C_DEF int DI_AnimateOpen(char *prefix, int type, int num, MOBJECT pix, int sx, int sy, int width, int height, int dx, int dy)
Definition: Dildef.h:674
C_DEF void DI_AddMultiply(int srv, double add, double mul)
C_DEF double DI_Sigma(double media, int w)
C_DEF void DI_MsgRaise(MOBJECT sh)
C_DEF void DI_GraphExec(int srv)
C_DEF void DI_ImageArrange(void)
C_DEF void DI_ArrayScanMaxMin(double *data, int num, double *dmin, double *dmax)
C_DEF MOBJECT DI_FileShowCreate(char *tit, char *file, WM_CLOSE_CB cb)
C_DEF int DI_SetNewFlag(int s, int x, int y)
C_DEF int DI_ImageEdit(int s, int xs, int ys, int wx, int wy)
C_DEF int DI_2DLoadConfig(char *name, int p)
C_DEF int DI_DilContr(int s, int vx, int vy, float fill)
C_DEF int DI_EditWindowContents(int s, int win)
C_DEF void DI_FileObjectGetFullName(char *name)
C_DEF void DI_FITSKey(void)
void * MOBJECT
Definition: Mguidefs.h:192
C_DEF void DI_WriteDigit(MOBJECT *pix, char *fmt)
C_DEF void DI_WrMath(int oper, int server, int tdata, int x, int y, float value)
C_DEF int DI_ImageNormalize(int s, float norm)
C_DEF int DI_PasteWindowContents(int s, int oper, int win, int chan)
C_DEF void DI_ConsolePrint(char *str, int n)
C_DEF int DI_DeleteFlag(int s, int f)
C_DEF int DI_ImageProperties(int srv, U16 dx, U16 dy, U16 wx, U16 wy, U16 ifmt, U16 sts, char *tit, int pix, int pixy, int mode)
C_DEF float DI_RdMat(int server, int tdata, int x, int y)
C_DEF void DI_FindExtName(char *fullname, char *fext)
C_DEF void DI_PaletteRotate(pal *src, int shift, int chan)
C_DEF int DI_PathExist(char *path)
Definition: Dildef.h:254
C_DEF int DI_ImageType(int s)
C_DEF void DI_SFTcmplx(double rp, double ip, COMPLEX *z)
C_DEF int DI_GaussFitBuffer(int srv, float *i0, float *sigma, int x0, int y0, int wi, int he, float bgvalue)
C_DEF void DI_ROIAnalyze(int srv, roi *r)
C_DEF int DI_UnpCloseImage(int s)
C_DEF int DI_OpenMatrix(U16 dx, U16 dy, U16 ifmt)
C_DEF int DI_CopyWindowContents(int s, int win)
C_DEF int DI_ImageChan(int s)
C_DEF int DI_Mediana(char *prefix, int imgtype, int num, int media)
C_DEF int DI_MInput(char *tit, int x, int y, int *len, char *name[], char *pre[], char *out[])
C_DEF int DI_LineBlockRotate(int s, int sy, int dy, int dir, int shift)
C_DEF int DI_PaletteLoadBin(pal *Pal, int fd)
C_DEF int DI_FileExist(char *tit)
C_DEF int DI_MergeColorToMono(int s, int mod)
C_DEF int DI_ImageSquare(int s, int win, int com, float media)
C_DEF int DI_ImageCalibrate(int s, int dark, int flat, int df, float kdark, float kflat, float kdflat)
C_DEF int DI_DupWindow(int s, int win)
C_DEF void DI_ImageCopyAttribute(int dst, int src)
C_DEF int DI_MathMerge(int dst, int src, int op, int xof, int yof, float dscal, float sscal)
C_DEF int DI_ImageConvolution(int s, int kdx, int kdy, float *kern[], int sx, int sy, int dx, int dy)
C_DEF int DI_SetNewWindow(int s, int sx, int sy, int dx, int dy)
C_DEF void DI_AnimateClose(void)
C_DEF int DI_ProjProfile(int s, int dir, int sx, int sy, int dx, int dy, double *data)
C_DEF int DI_ImageFill(int s, int ch, int sx, int sy, int dx, int dy, float data)
C_DEF void DI_HexEdit(char *fname)
C_DEF int DI_LocationFlag(int s, int f, int *x, int *y)
void(* WM_CLOSE_CB)(MOBJECT obj, void *odata, void *cdata)
Definition: Mguidefs.h:1459
C_DEF int DI_LineRotate(int s, int y, int dir, int shift)
C_DEF int DI_NumOfWindow(int s)
C_DEF void DI_Lens(void)
C_DEF void DI_Negate(int w)
C_DEF int DI_OpenImage(U16 dx, U16 dy, U16 ifmt, U16 type, char *tit)
C_DEF void DI_ConsoleClose(int n)
C_DEF void DI_2DPlotRegen(int plot)
C_DEF int DI_ImageSizeCheck(int dst, int src)
C_DEF int DI_PaletteSave(pal *Pal, char *dir)
C_DEF void DI_ClearAllWindow(int s)
C_DEF int DI_IMGLoad(char *f)
C_DEF int DI_RAWSave(char *fname, int s)
C_DEF int DI_ReadSegment(int s, int mod, int sx, int sy, int dx, int dy, double *data)
______________________________________________________________________________________
Generated on Mon Sep 18 2017 11:44:08 for DAS - Rel. 3.1.6 - 18/09/2017.