EasyManua.ls Logo

Euresys Coaxlink - Counters; Notifications

Euresys Coaxlink
45 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Euresys::EGrabber Coaxlink Programmer's Guide
CameraTriggerFallingEdge (end of camera trigger)
StrobeRisingEdge (start of light strobe)
StrobeFallingEdge (end of light strobe)
AllowNextCycle (CIC is ready for next camera cycle)
...
and in the I/O toolbox category of events, we have:
LIN1 (line input tool 1)
LIN2 (line input tool 2)
MDV1 (multiplier/divider tool 1)
...
Counters
Coaxlink firmware counts each occurrence of each event (except new buffer events) and makes this counter available
in a GenApi feature named EventCount. Each event has its own counter, and the value of EventCount depends
on the selected event:
// select the CameraTriggerRisingEdge event
grabber.setString<DeviceModule>("EventSelector", "CameraTriggerRisingEdge");
// read the value of the counter
int64_t counter = grabber.getInteger<DeviceModule>("EventCount");
or, using the selected feature notation:
// read the value of the CameraTriggerRisingEdge counter
int64_t counter = grabber.getInteger<DeviceModule>("EventCount[CameraTriggerRisingEdge]");
Notifications
As we've just seen, when an event occurs, a dedicated counter is incremented. Coaxlink can also notify the application
of this event by having Euresys::EGrabber execute a user-defined callback function. But first, it is required to
enable notifications of one or more events:
grabber.setString<DeviceModule>("EventSelector", "CameraTriggerRisingEdge");
grabber.setInteger<DeviceModule>("EventNotification", true);
grabber.setString<DeviceModule>("EventSelector", "CameraTriggerFallingEdge");
grabber.setInteger<DeviceModule>("EventNotification", true);
...
or:
grabber.setInteger<DeviceModule>("EventNotification[CameraTriggerRisingEdge]", true);
grabber.setInteger<DeviceModule>("EventNotification[CameraTriggerFallingEdge]", true);
...
Using a configuration script, it is easy to enable notifications for all events:
function enableAllEvents(p) { // 1
var events = p.$ee('EventSelector'); // 2
for (var e of events) {
p.set('EventNotification[' + e + ']', true); // 3
17

Related product manuals