aboutsummaryrefslogtreecommitdiff
path: root/sys/imio/imgnl.gx
blob: dde3d356bb2f7d0f006e78b1698823484321b4a1 (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	<imhdr.h>

# IMGNL -- Get the next line from an image of any dimension or datatype.
# This is a sequential operator.  The index vector V should be initialized
# to the first line to be read before the first call.  Each call increments
# the leftmost subscript by one, until V equals IM_LEN, at which time EOF
# is returned.

int procedure imgnl$t (imdes, lineptr, v)

pointer	imdes
pointer	lineptr				# on output, points to the pixels
long	v[IM_MAXDIM]			# loop counter
int	npix, dtype, imgnln()
errchk	imgnln

begin
	npix = imgnln (imdes, lineptr, v, TY_PIXEL)

	if (npix != EOF) {
	    dtype = IM_PIXTYPE(imdes)
	    if (dtype != TY_PIXEL)
		call imupk$t (Mem$t[lineptr], Mem$t[lineptr], npix, dtype)
	}

	return (npix)
end