The Group argument is used for both searches. This limits matching values to members of the same group.
If a match is found for both criteria, the CONFLIST record found by FuncR and IndexR is used to formulate a query to dbman for the current value of the parameter. The request is posted to dbman and MatchCtlReadValues waits for an answer and places the answer in the Current field of both CONFLIST records.
The CONFLIST specified by FuncC and IndexC is then updated by posting a requst to dbman.
lclReqParAns(3rmt) is used to communicate with dbman. lclReqParAns(3rmt) waits for an answer from dbman so MatchCtlReadValues should be used on a file descripter where nothing has been subscribed to.
lclParUpdate(3rmt) is used to post the update and CheckDBlimit(3db) is used to verify the validity of the transaction before it is posted.
Usually programs using this function will open two channels to dbman. One channel is used to post subscriptions and process data asyncronously from dbman as it arrives. The other channel is used with functions which will post requests to dbman for information and wait for the answer.
If there is an error when lclReqParAns(3rmt) is called an error message is written to stderr.
This function communicates with dbman in local mode.
This function is part of libmngr.
If there is an error when lclReqParAns(3rmt) is called a complaint is written to stderr, the function terminates, and the AccelNET error code from lclReqParAns(3rmt) is returned. ERRlim is ignored, all other errors function as described.
If CheckDBlimit(3db) returns ERRok the value of the queried datapoint is used, else the value of the appropriate limit (PhyMin or PhyMax) is used.
CONFLIST.Previous isn’t updated by the function, this is a bit strange....