home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: Science / Science.zip / fblnk224.zip / functs.h < prev    next >
C/C++ Source or Header  |  1999-01-28  |  10KB  |  354 lines

  1. /*  functs.h for Fitsblink 2.x  */
  2. #ifndef _blink_functs
  3. #define _blink_functs
  4. #include <stdio.h>
  5. #include <forms.h>
  6. #include "formblink.h"
  7. #include "structs.h"
  8.  
  9. char *strdup(const char *);
  10.  
  11. /*****************/
  12. /*  BLINK.C      */
  13. /*****************/
  14. void *myalloc(unsigned int, char *, char *);
  15. void delay(int);
  16. int correct(BLINK_FRAME *, int, PIXEL);
  17. void draw_objects(BLINK_FRAME *, int);
  18. void set_image(BLINK_FRAME *, int);
  19. void set_lin(BLINK_FRAME *, int);
  20. int load_frame(BLINK_FRAME *, int);
  21. int remove_frame(BLINK_FRAME *, int);
  22. int load_file(char *);
  23.  
  24.  
  25. /*****************/
  26. /*  BLINKGUI.C   */
  27. /*****************/
  28. void draw_image(BLINK_FRAME *, int);
  29. void draw_zoom(BLINK_FRAME *, int, FL_OBJECT *, int, int);
  30. void show_left_offsets(BLINK_FRAME *, int);
  31. void show_right_offsets(BLINK_FRAME *, int);
  32. void show_frame_info(BLINK_FRAME *, int, int);
  33. void turnimageC(FL_OBJECT *, long);
  34. void loadC(FL_OBJECT *, long);
  35. void eraseC(FL_OBJECT *, long);
  36. void nameC(FL_OBJECT *, long);
  37. void fitsC(FL_OBJECT *, long);
  38. void greyC(FL_OBJECT *, long);
  39. void emptyC(FL_OBJECT *, long);
  40. void gammaC(FL_OBJECT *, long);
  41. int cmppixel(const void *, const void *);
  42. void autolevels(int n);
  43. void autoC(FL_OBJECT *, long);
  44. void invertC(FL_OBJECT *, long);
  45. void deltaxC(FL_OBJECT *, long);
  46. void deltayC(FL_OBJECT *, long);
  47. void quitC(FL_OBJECT *, long);
  48. void helpC(FL_OBJECT *, long);
  49. void info(void);
  50. void readme(FL_OBJECT *, int);
  51. void zoom1C(FL_OBJECT *, long);
  52. void zoom2C(FL_OBJECT *, long);
  53. void do_blink(void);
  54. void deltatC(FL_OBJECT *, long);
  55. void blinkC(FL_OBJECT *, long);
  56. void upC(FL_OBJECT *, long);
  57. void downC(FL_OBJECT *, long);
  58. void rightC(FL_OBJECT *, long);
  59. void leftC(FL_OBJECT *, long);
  60. void circleC(FL_OBJECT *, long);
  61. int define_colormap(void);
  62. int define_greymap(void);
  63. void tgui(int, char * []);
  64.  
  65.  
  66. /****************/
  67. /*  FITS.C      */
  68. /****************/
  69. int read_fits(char *, PIXEL **, int *, int *, FITSFILE *, char **);
  70.  
  71.  
  72. /******************/
  73. /*  FORMBLINK.C   */
  74. /******************/
  75. FD_setting *create_form_setting(void);
  76. FD_blinker *create_form_blinker(void);
  77. FD_Edit *create_form_Edit(void);
  78. FD_info *create_form_info(void);
  79.  
  80. /********************/
  81. /*  IMAGEACC.C      */
  82. /********************/
  83. void set_image_parameters(FITS_IMAGE *, int, int, PIXEL *);
  84. PIXEL video_point(FITS_IMAGE *, int, int);
  85. void set_point(FITS_IMAGE *, int, int, PIXEL);
  86. void xor_point(FITS_IMAGE *, int, int);
  87. float convolve(GAUSSF *, FITS_IMAGE *, int, int);
  88. void blur(FITS_IMAGE *);
  89. void set_gaussian_filter(GAUSSF *, float, float);
  90.  
  91. /********************/
  92. /*  SHADOW.C        */
  93. /********************/
  94. void reserve_shadow(SHADOW *, int, int, int, int);
  95. void free_shadow(SHADOW *shadow);
  96. int test(SHADOW *, int, int);
  97. void set(SHADOW *, int, int);
  98. void reverse(SHADOW *, int, int);
  99. void clear(SHADOW *, int, int);
  100. void clear_shadow(SHADOW *);
  101.  
  102.  
  103.  
  104. /*********************/
  105. /*  ERROR.C          */
  106. /*********************/
  107. void show_errors(int, char **); 
  108.  
  109. /*********************/
  110. /*  WCS.C            */
  111. /*********************/
  112. int worldpos(double, double, double, double, double, double, double, 
  113.             double, double, char *, double *, double *);
  114.  
  115. int xypix(double, double, double, double, double, double, double, 
  116.          double, double, char *, double *, double *);
  117.  
  118.  
  119. /********************/
  120. /* PARSECOOR.C      */
  121. /********************/
  122. void strlwr(char *);
  123. double parse_ra(char *);
  124. double parse_dec(char *);
  125. double parse_ra_c(char *);
  126. double parse_dec_c(char *);
  127. char *format_ra(double);
  128. char *format_dec(double);
  129. char *format_ra_mpc(double);
  130. char *format_dec_mpc(double);
  131. char *format_az(double);
  132.  
  133. /********************/
  134. /* midexposure.c    */
  135. /********************/
  136. void calculate_midexposure(FITSFILE *, int *, int *, int *, int *, int *, float *);
  137.  
  138. /********************/
  139. /* PARAMETERS.C      */
  140. /********************/
  141. void set_rainput(FL_OBJECT *, double);
  142. void set_decinput(FL_OBJECT *, double);
  143. void set_doubleval(FL_OBJECT *, char *, double);
  144. void edit_parameters(FL_OBJECT *, int);
  145.  
  146. /********************/
  147. /* REPORT.C         */
  148. /********************/
  149. void show_report(void);
  150. void hide_report(void);
  151.  
  152. /********************/
  153. /* MESSAGE.C        */
  154. /********************/
  155. void open_message(char *);
  156. void close_message(void);
  157. void write_message(char *);
  158.  
  159.  
  160. /*************************/
  161. /*  OPTIONS.C            */
  162. /*************************/
  163. void logfileC(FL_OBJECT *, long);
  164. void minconstC(FL_OBJECT *, long); 
  165. void initconstC(FL_OBJECT *, long); 
  166. void starconstC(FL_OBJECT *, long);
  167. void countsigmaC(FL_OBJECT *, long);
  168. void countminvalC(FL_OBJECT *, long);
  169. void starerrorC(FL_OBJECT *, long);
  170. void starminsizelC(FL_OBJECT *, long);
  171. void acceptoptionsC(FL_OBJECT *, long);
  172. void defaultoptionsC(FL_OBJECT *, long);
  173. void set_match_defaults(BLINK_FRAME *, int);
  174. void set_defvals(void);
  175. void edit_options(FL_OBJECT *, int);
  176.  
  177. float proc_sg_num(FL_OBJECT *, float);
  178. int proc_minbright(FL_OBJECT *, int);
  179. int proc_minstar(FL_OBJECT *, int);
  180. int proc_gridsize(FL_OBJECT *, int);
  181. int proc_border(FL_OBJECT *, int);
  182. float proc_inner(FL_OBJECT *, float, float);
  183. float proc_outer(FL_OBJECT *, float, float);
  184.  
  185. float proc_min(FL_OBJECT *, float, int);
  186. int proc_firstbright(FL_OBJECT *, int);
  187. int proc_nstar(FL_OBJECT *, int);
  188. float proc_poserrmax(FL_OBJECT *, float);
  189. float proc_maxres(FL_OBJECT *, float);
  190. float proc_minmag(FL_OBJECT *, float, float);
  191. float proc_maxmag(FL_OBJECT *, float, float);
  192.  
  193.  
  194. /********************/
  195. /* CATALOGS.C       */
  196. /********************/
  197. void check_catalogs(void);
  198. void edit_catalogs(FL_OBJECT *, int);
  199.  
  200. /********************/
  201. /* MAIL.C           */
  202. /********************/
  203. void edit_mail(FL_OBJECT *, int);
  204.  
  205.  
  206. /********************/
  207. /* MATCH_STARS.C    */
  208. /********************/
  209. int detect_stars(BLINK_FRAME *, int);
  210. int match_stars(BLINK_FRAME *, int);
  211. int star_list(BLINK_FRAME *, int);
  212. int load_star_list(BLINK_FRAME *, int);
  213.  
  214. /********************/
  215. /*  NEWCS.C         */
  216. /********************/
  217. void cal_new_wcs(TRANSROT, double, double, double, double, double, double, double, 
  218.         double *, double *, double *, double *, double *);
  219. void newwcs(BLINK_FRAME *, int, TRANSROT);
  220.  
  221. /********************/
  222. /*  SHOWSTAR.C      */
  223. /********************/
  224. int showstar(BLINK_FRAME *, int, STAR *, int, char *);
  225. int showcomet(BLINK_FRAME *, int, STAR *, int, char *);
  226.  
  227. /********************/
  228. /*  TELESCOPE.C     */
  229. /********************/
  230. void show_telescope_control(void);
  231.  
  232.  
  233. /********************/
  234. /*  TIME.C          */
  235. /********************/
  236. double julian_day(int, int, double);
  237. double make_a_day(int, int, int, double);
  238. double sidereal(double, double);
  239.  
  240. /********************/
  241. /*  MEDIAN.C        */
  242. /********************/
  243. void median(void *, int, int, int (*)(const void *, const void *));
  244.  
  245. /********************/
  246. /* SETTINGS.C       */
  247. /********************/
  248. void show_settings(FL_OBJECT *, int);
  249. int save_settings(void);
  250. int load_settings(void);
  251.  
  252. /**********************/
  253. /*  NONINTERACTIVE.C  */
  254. /**********************/
  255. int update_wcs(BLINK_FRAME *, int, TRANSROT);
  256. void starcount(int, char *[]);
  257. void make_catalog(int, char *[]);
  258.  
  259. /*************************/
  260. /*  READUSNO.C           */
  261. /*************************/
  262. int calculate_corners(MAP_IMAGE *, STAR *);
  263. int get_usno_stars(MAP_IMAGE *, STAR *, char *);
  264.  
  265.  
  266. /*************************/
  267. /*  READGUIDE.C           */
  268. /*************************/
  269. int get_guide_stars(MAP_IMAGE *, STAR *, char *, char *);
  270.  
  271. /*************/
  272. /*  GSCFITS  */
  273. /*************/
  274. int read_large_regions(char *, LARGE_REGION *);
  275. int read_small_regions(char *, SMALL_REGION *);
  276. int read_sky_region(char *, GUIDE_STAR **, int *, int);
  277.  
  278.  
  279.  
  280. /*************************/
  281. /*  STETJE.C             */
  282. /*************************/
  283. int background(FITS_IMAGE *, int, int);
  284. int above_threshold(FITS_IMAGE *, int, int, float *);
  285. int vrh1(FITS_IMAGE *, int, int); 
  286. int vrh2(FITS_IMAGE *, int, int, int); 
  287. int find_top(FITS_IMAGE *, SHADOW *, POINT *, int, int, int, OBJEKT *);
  288. int obhod(FITS_IMAGE *, SHADOW *, POINT *, int, int, int, OBJEKT *);
  289. int stetje(FITS_IMAGE, int *, STAR **);
  290. void rob(FITS_IMAGE *, int);
  291.  
  292. /**************************/
  293. /*  UTILITIES.C           */
  294. /**************************/
  295. void make_output_filename(char *, char **, char *);
  296. void trim_spaces(char *p);
  297. float **float_array(int, int);
  298. void free_float_array(float **, int);
  299. double fsqr(double);
  300.  
  301. /**************************/
  302. /*  POVPRECJA.C           */
  303. /**************************/
  304. int povprecja(FITS_IMAGE *, float **, float **, float *, float *);
  305.  
  306. /*************************/
  307. /*  APERTURE.C           */
  308. /*************************/
  309. double aperture(FITS_IMAGE *, double, double, double, double, 
  310.         double *, double *);
  311.  
  312.  
  313. /*  This should go out  */
  314. void nrerror(char []);
  315. float *vector(int, int);
  316. int *ivector(int, int);
  317. double *dvector(int, int);
  318. float **matrix(int, int, int, int);
  319. double **dmatrix(int, int, int, int);
  320. int **imatrix(int, int, int, int);
  321. float **submatrix(float **, int, int, int, int, int, int);
  322. void free_vector(float *, int, int);
  323. void free_ivector(int *, int, int);
  324. void free_dvector(double *, int, int);
  325. void free_matrix(float **, int, int, int, int);
  326. void free_dmatrix(double **, int, int, int, int);
  327. void free_imatrix(int **, int, int, int, int);
  328. void free_submatrix(float *, int, int, int, int);
  329. float **convert_matrix(float *, int, int, int, int);
  330. void free_convert_matrix(float **, int, int, int, int);
  331.  
  332. /******************/
  333. /* FIELD_COMPARE  */
  334. /******************/
  335. int field_compare(STARS *, STARS *, MATCH_OPTIONS, BLINK_FRAME *, int);
  336.  
  337. /********************/
  338. /*  KONSTELACIJE.C  */
  339. /********************/
  340. void constellations(STARS *, STARS *, int, TRANSROT *, MATCH_OPTIONS);
  341. int compare_star(const void *, const void *);
  342. int compare_starmag(const void *, const void *);
  343.  
  344. /****************/
  345. /*  TRANSROT.C  */
  346. /****************/
  347. float transrot(STAR_PAIR *, int *, TRANSROT *, MATCH_OPTIONS *match_options); 
  348. float transrot1(STAR_PAIR *, int *, TRANSROT *, MATCH_OPTIONS *match_options); 
  349.  
  350.  
  351. #endif
  352.  
  353.  
  354.