IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ticket #1289: fpack.h

File fpack.h, 2.9 KB (added by Michael Wood-Vasey, 17 years ago)

fpack.h

Line 
1/* used by FPACK and FUNPACK
2 * R. Seaman, NOAO
3 */
4
5
6#include <string.h>
7#include <stdio.h>
8#include <stdlib.h>
9
10#include <unistd.h>
11#include <sys/stat.h>
12#include <sys/types.h>
13
14#define FPACK_VERSION "1.1.0 (August 2008)"
15#define FP_INIT_MAGIC 42
16#define FPACK 0
17#define FUNPACK 1
18
19#define DEF_QLEVEL 16.
20#define DEF_HCOMP_SCALE 0.
21#define DEF_HCOMP_SMOOTH 0
22#define DEF_RESCALE_NOISE 0
23
24#define SZ_STR 513
25#define SZ_CARD 81
26
27extern char tempfilename[SZ_STR];
28
29typedef struct
30{
31 int comptype;
32 float quantize_level;
33 float scale;
34 float rescale_noise;
35 int smooth;
36 long ntile[MAX_COMPRESS_DIM];
37
38 int to_stdout;
39 int listonly;
40 int clobber;
41 int delete_input;
42 int do_not_prompt;
43 int do_checksums;
44 int do_gzip_file;
45 int test_all;
46 int verbose;
47
48 char prefix[SZ_STR];
49 int delete_suffix;
50 char outfile[SZ_STR];
51 int firstfile;
52
53 int initialized;
54 int preflight_checked;
55} fpstate;
56
57typedef struct
58{
59 int n_nulls;
60 double minval;
61 double maxval;
62 double mean;
63 double sigma;
64 double noise1;
65 double noise3;
66} imgstats;
67
68int fp_get_param (int argc, char *argv[], fpstate *fpptr);
69void abort_fpack(int sig);
70int fp_usage (void);
71int fp_help (void);
72int fp_hint (void);
73int fp_init (fpstate *fpptr);
74int fp_list (int argc, char *argv[], fpstate fpvar);
75int fp_info (char *infits);
76int fp_info_hdu (fitsfile *infptr);
77int fp_preflight (int argc, char *argv[], int unpack, fpstate *fpptr);
78int fp_loop (int argc, char *argv[], int unpack, fpstate fpvar);
79int fp_pack (char *infits, char *outfits, fpstate fpvar, int *islossless);
80int fp_unpack (char *infits, char *outfits, fpstate fpvar);
81int fp_test (char *infits, char *outfits, char *outfits2, fpstate fpvar);
82int fp_pack_hdu (fitsfile *infptr, fitsfile *outfptr, fpstate fpvar,
83 int *islossless, int *status);
84int fp_unpack_hdu (fitsfile *infptr, fitsfile *outfptr, int *status);
85int fits_read_image_speed (fitsfile *infptr, float *whole_elapse,
86 float *whole_cpu, float *row_elapse, float *row_cpu, int *status);
87int fp_test_hdu (fitsfile *infptr, fitsfile *outfptr, fitsfile *outfptr2,
88 fpstate fpvar, int *status);
89int marktime(int *status);
90int gettime(float *elapse, float *elapscpu, int *status);
91int fits_read_image_speed (fitsfile *infptr, float *whole_elapse,
92 float *whole_cpu, float *row_elapse, float *row_cpu, int *status);
93
94int fp_i2stat(fitsfile *infptr, int naxis, long *naxes, int *status);
95int fp_i4stat(fitsfile *infptr, int naxis, long *naxes, int *status);
96int fp_r4stat(fitsfile *infptr, int naxis, long *naxes, int *status);
97int fp_i2rescale(fitsfile *infptr, int naxis, long *naxes, double rescale,
98 fitsfile *outfptr, int *status);
99int fp_i4rescale(fitsfile *infptr, int naxis, long *naxes, double rescale,
100 fitsfile *outfptr, int *status);
101
102int fp_msg (char *msg);
103int fp_version (void);
104int fp_noop (void);
105
106int fu_get_param (int argc, char *argv[], fpstate *fpptr);
107int fu_usage (void);
108int fu_hint (void);
109int fu_help (void);
110