Operator Console
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Introduction

Table of Contents

The Operator Console is meant to provide a basic, yet customizable, interface to Imatest IT that provides some of the functionality needed for a production environment. This interface allows the user to perform Blemish or SFRplus tests while capturing from any of the devices supported by the Imatest 3.10 library. Optionally, the developer can allow for acquisition from a device with a DirectShow driver or from a file. The results of a Blemish or SFRplus test are displayed within the Operator Console dialog with the overall pass/fail status prominently displayed. Additionally, for SFRplus, the pass/fail status of individual regions (the center and four quadrants away from the center) is overlaid on the image displayed to the user. For more information, please see the Program usage section.

Other features include

System architecture, or our cast of characters

Since every possible user need cannot be anticipated a priori, the Operator Console is designed to be readily customized by developers. The Operator Console is based around two main classes, COperatorConsoleApp and COperatorConsoleDlg, which control the application and main window, respectively. The COperatorConsoleApp object holds all relevant data and communicates with the various helper threads discussed below, while the COperatorConsoleDlg object only supplies the user interface without holding test-related data.

To make the user interface as customizable as possible, the COperatorConsoleApp and COperatorConsoleDlg communicate through a message-passing interface wherein events in the user interface are transmitted by COperatorConsoleDlg as a simple message that COperatorConsoleApp intercepts and performs the appropriate action. As a consequence of this degree of separation between COperatorConsoleApp and COperatorConsoleDlg, the developer can completely change the interface without having to modify the code underlying the application.

Several classes are associated with COperatorConsoleApp. Below is an abbreviated list of the more critical classes with brief descriptions.

External thread objects

Image-testing classes

Data structures/classes

External dialogs

Acquisition classes