NAME

image_store -- store and retrieve image sequences

PROTOTYPE

unitptr image_store( int iDx, int iDy, int iNumIm, char *tOpt, unitptr uHost)

ARGUMENTS

int iDx
image width
int iDy
image height
int iNumIm
number of images to store
char *tOpt
option string (see below)
unitptr uHost
host unit of created unit

INTERFACE:

in_i[iDx*iDy]:
i-th input image channel; i=0,1,2..iChannels-1; The number iChannels of input channels is determined by the option string tOpt (see below). If tOpt=NULL, iChannels=1.
CTL_in[2]:
storage mode (pin 0) and storage number of next accessed image (destination slot in storage mode, source slot in retrieval mode).
out_i[iDx*iDy]:
output image channels; i=0,1,2..iChannels-1.
out_j[1]:
storage number of currently output image.

OPTIONSTRING:

tOpt:
A string of letters from the set "cm". Each "m" causes the creation of one monochrome channel (one input and one matching output field), each "c" the creation of three channels interpreted as rgb-triple.

DESCRIPTION:

This unit can be in two modes of operation. When CTL_in[0]=1 or 2, the unit is in storage mode. In this mode, each exec call stores the image at the input fields as the N-th image, where the value of N is set by CTL_in[1], if CTL_in[0]=2. If CTL_in[0]=1, the value of N is the previous value, incremented by 1. If CTL_in[0]= -1 or -2, the unit is in retrieval mode. In this mode, the image at location N is sent to the output fields. Again, N is set by CTL_in[2], if CTL_in[0]=-2, or is the incremented previous value, if CTL_in[0]=-1. The current value of N is always available at output field Y_out[1]. For CTL_in[0]=0, no operation occurs. If N reaches iNumIm, wraparound is used, i.e., N restarts at 0. For each image, also its restriction area is stored and retrieved. In mode +/-1 , this is used to speed up the storage and retrieval process by processing (storing/retrieving) only pixels in the restriction area(s) of the input/output fields.

FILE

/local/homes/rhaschke/nst7/man/../o.linx86//../foldersrc/nst_pixel.c