MERIT
action: observe and return the merit function of a small image
This page is part of the ING document
INS-DAS-24:
client-server interface for control of cameras.
Purpose: make one observation with a single, small window; return
the resulting image directly to the client.
Actors: NAOMI client; camera server.
Outline: the MERIT action is invoked. The client receives the
merit function resulting from MERIT as a returned argument of the action.
Normal course of events:
-
Client invokes the MERIT action on the server with these arguments:
-
Argument1: integration time in seconds.
-
Argument2: x-coordinate of lower-left corner of the window.
-
Argument3: y-coordinate of lower-left corner of the window.
-
Argument4: x-coordinate of upper-right corner of the window.
-
Argument5: y-coordinate of upper-right corner of the window.
-
Argument6: offset value (for mndr subtraction)
-
Argument7: number of pixels to ignore in x value (columns)
-
Argument8: number of pixels to ignore in y value (rows)
-
Server validates the arguments.
-
Server clears the detectors, as in the CLEAR action (q.v.).
-
Server exposes the detectors for the given time, as in the INTEGRATE action
(q.v.).
-
Server reads out the detectors, as in the READOUT action (q.v.).
-
Server calculates the merit function of the readout rectangle.
-
Server returns good status for the action. The value of the merit function,
the actual integration time, the maximum pixel value, and the sum of the
image are sent back in the action's argument list as doubles.
Variations:
-
At the time of the action, the camera-server is on-line but has an problem
outstanding from the initialisation. Server abandons the normal sequence
and does this:
-
Writes an error message directly to the log.
-
Returns status UDAS__NEEDSRESET to the client.
-
In step 2, the integration time is negative. Server abandons the normal
sequence and does this:
-
Returns an error message to the client.
-
Returns status UDAS__BADEXPTIME to the client.
-
In step 2, the window does not fit on the detector. Server abandons the
normal sequence and does this:
-
Returns an error message to the client.
-
Returns status UDAS__BADWINDOW to the client.
-
In step 3, 4 or 5, the operations on the camera fail. Server abandons the
normal sequence and does this:
-
Returns an error message to the client.
-
Returns one of these stati to the client: CAMCMDFAIL, ROFAILED, CAMLINKDOWN.