aboutsummaryrefslogtreecommitdiff
path: root/noao/digiphot/apphot/phot/appfree.x
blob: 6d588f8ac72ddecf8ea6389f701eaab690ec61ae (plain) (blame)
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
include "../lib/apphotdef.h"
include "../lib/photdef.h"

# APFREE -- Free the apphot structure.

procedure appfree (ap)

pointer	ap		# pointer to the apphot structure

begin
	if (ap == NULL)
	    return
	if (AP_NOISE(ap) != NULL)
	    call ap_noisecls (ap)
	if (AP_PCENTER(ap) != NULL)
	    call ap_ctrcls (ap)
	if (AP_PDISPLAY(ap) != NULL)
	    call ap_dispcls (ap)
	if (AP_POLY(ap) != NULL)
	    call ap_ycls (ap)
	if (AP_PPHOT(ap) != NULL)
	    call ap_photcls (ap)
	if (AP_PPSF(ap) != NULL)
	    call ap_psfcls (ap)
	if (AP_PSKY(ap) != NULL)
	    call ap_skycls (ap)
	if (AP_IMBUF(ap) != NULL)
	    call mfree (AP_IMBUF(ap), TY_REAL)
	if (AP_MW(ap) != NULL)
	    call mw_close (AP_MW(ap))
	call mfree (ap, TY_STRUCT)
end


# AP_PHOTCLS -- Procedure to close up the photometry structure and arrays.

procedure ap_photcls (ap)

pointer	ap		# pointer to apphot structure

pointer	phot

begin
	if (AP_PPHOT(ap) == NULL)
	    return
	phot = AP_PPHOT(ap)
	if (AP_APERTS(phot) != NULL)
	    call mfree (AP_APERTS(phot), TY_REAL)
	if (AP_MAGS(phot) != NULL)
	    call mfree (AP_MAGS(phot), TY_REAL)
	if (AP_MAGERRS(phot) != NULL)
	    call mfree (AP_MAGERRS(phot), TY_REAL)
	if  (AP_SUMS(phot) != NULL)
	    call mfree (AP_SUMS(phot), TY_DOUBLE)
	if (AP_AREA(phot) != NULL)
	    call mfree (AP_AREA(phot), TY_DOUBLE)

	#if (AP_APIX(phot) != NULL)
	    #call mfree (AP_APIX(phot), TY_REAL)
	#if (AP_XAPIX(phot) != NULL)
	    #call mfree (AP_XAPIX(phot), TY_REAL)
	#if (AP_YAPIX(phot) != NULL)
	    #call mfree (AP_YAPIX(phot), TY_REAL)

	call mfree (AP_PPHOT(ap), TY_STRUCT)
end