aboutsummaryrefslogtreecommitdiff
path: root/sys/qpoe/gen/qpaddr.x
blob: ec367ab73dac8e7e2d97a3889b2320f35e5dd23b (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
# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.

include	"../qpoe.h"

# QP_ADD -- Set the value of a parameter, creating the parameter if it does
# not already exist.  This works for the most common case of simple scalar
# valued header parameters, although any parameter may be written into it it
# already exists.  Additional control over the parameter attributes is possible
# if the parameter is explicitly created with qp_addf before being written into.

procedure qp_addr (qp, param, value, comment)

pointer	qp			#I QPOE descriptor
char	param[ARB]		#I parameter name
real	value			#I parameter value
char	comment[ARB]		#I comment field, if creating parameter

char	datatype[1]
errchk	qp_accessf, qp_addf
string	dtypes SPPTYPES
int	qp_accessf()

begin
	if (qp_accessf (qp, param) == NO) {
	    datatype[1] = dtypes[TY_REAL]
	    call qp_addf (qp, param, datatype, 1, comment, 0)
	}
	call qp_putr (qp, param, value)
end