1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
include <imhdr.h>
include "ccdtypes.h"
# CCDCHECK -- Check processing status.
bool procedure ccdcheck (im, ccdtype)
pointer im # IMIO pointer
int ccdtype # CCD type
real ccdmean, hdmgetr()
bool clgetb(), ccdflag()
long time
int hdmgeti()
begin
if (clgetb ("trim") && !ccdflag (im, "trim"))
return (true)
if (clgetb ("fixpix") && !ccdflag (im, "fixpix"))
return (true)
if (clgetb ("overscan") && !ccdflag (im, "overscan"))
return (true)
switch (ccdtype) {
case ZERO:
if (clgetb ("readcor") && !ccdflag (im, "readcor"))
return (true)
case DARK:
if (clgetb ("zerocor") && !ccdflag (im, "zerocor"))
return (true)
case FLAT:
if (clgetb ("zerocor") && !ccdflag (im, "zerocor"))
return (true)
if (clgetb ("darkcor") && !ccdflag (im, "darkcor"))
return (true)
if (clgetb ("scancor") && !ccdflag (im, "scancor"))
return (true)
iferr (ccdmean = hdmgetr (im, "ccdmean"))
return (true)
iferr (time = hdmgeti (im, "ccdmeant"))
time = IM_MTIME(im)
if (time < IM_MTIME(im))
return (true)
case ILLUM:
if (clgetb ("zerocor") && !ccdflag (im, "zerocor"))
return (true)
if (clgetb ("darkcor") && !ccdflag (im, "darkcor"))
return (true)
if (clgetb ("flatcor") && !ccdflag (im, "flatcor"))
return (true)
iferr (ccdmean = hdmgetr (im, "ccdmean"))
return (true)
default:
if (clgetb ("zerocor") && !ccdflag (im, "zerocor"))
return (true)
if (clgetb ("darkcor") && !ccdflag (im, "darkcor"))
return (true)
if (clgetb ("flatcor") && !ccdflag (im, "flatcor"))
return (true)
if (clgetb ("illumcor") && !ccdflag (im, "illumcor"))
return (true)
if (clgetb ("fringecor") && !ccdflag (im, "fringcor"))
return (true)
}
return (false)
end
|