
OC_PollScanner Library of Routines 6–51
Publication 1747-6.5.3 June 1998
The data returned in the MsgData member array depends upon the value in MsgID:
Separate queues hold messages received from each source. The host application must call OC_PollScanner
periodically to read messages from each enabled source to prevent messages from being discarded. If a
message queue is full when a new message is received, the oldest message is discarded and the next call to
OC_PollScanner results in a return value of ERR_OCOVERRUN. The queue can hold as many as
five messages.
Return Value:
Considerations:
Supported in the DOS API library and the Windows NT API library
Example:
HANDLE Handle;
MSGBUF msgbuf;
int retcode;
retcode = OC_PollScanner( Handle, OCMSG_ANY, &msgbuf );
/* Check msgbuf.MsgID for what message is available */
This MsgID: Returns:
MsgID=OCMSG_IOINT
MsgData[0]slot number that generated the interrupt
MsgID=OCMSG_DIINT
MsgData[0]mask of last bit transition that generated the interrupt
MsgData[2]lowbyte of count of matches that generated the interrupt
MsgData[3]highbyte of count of matches that generated the interrupt
MsgID=OCMSG_EOS_DMDIN
MsgID=OCMSG_EOS_DMDOUT
MsgID=OC_EOS
MsgData[0]number of scans that occurred since the last end-of-scan
message of this type was read
Name: Value: Description:
SUCCESS
0
scanner was polled successfully
ERR_OCACCESS
2
handle does not have access to scanner
ERR_OCOVERRUN
16
a message has been discarded
Comentarios a estos manuales