List of Exported Functions

Technically, an application does not call directly into a recognizer's exported functions, though the distinction is not important to the recognizer. Instead, all calls go to the system, which acts as a switchboard to route the calls to the proper recognizer when more than one recognizer is installed. For example, when an application loads a recognizer with InstallRecognizer, that recognizer exports functions with the same name as those exported by other recognizers, including the default recognizer. The system automatically transfers calls to the correct recognizer based on the HRC argument or other value that identifies the intended recipient.

As a DLL, a recognizer must export functions to the pen system that installs the recognizer. This section lists these recognition functions, describes their purpose, and identifies them as required or optional.

The optional functions that a recognizer should provide depend on the clients it will serve. Commonly, a recognizer DLL is part of an application package designed only for that application. As author of both client application and its private DLL, the developer need write only those functions the application requires. In this case, the developer is also free to design other functions not specified by the Pen API.

At the other extreme, some recognizers serve client applications indiscriminately. For example, a developer might market a recognizer of foreign script to various application developers with international product lines. A recognizer can also take on the role of system default recognizer, in which case it must:

  • Export all recognizer functions.

  • Recognize letters, punctuation, numbers, and predefined gestures from ink data.

  • Associate raw data with matched results.

  • Return characters only within the requested subset.

  • Return an "I don't know" response when appropriate.

A system default recognizer should support all recognizer functions, not merely export stub versions of the optional functions. At the very least, the recognizer must return an HRCR_UNSUPPORTED value from functions it does not support. For a description of how to specify the system recognizer through the registry, see Appendix A, "Differences Between Versions 1.0 and 2.0 of the Pen Application Programming Interface."

The following sections describe all 47 recognition functions of the Pen API version 2.0. The lists of functions represent the following categories:

  • Initialization

  • HRC functions

  • HRCRESULT functions

  • Alphabet support

  • Word lists

  • Training

All recognizers must export 13 required functions, which are indicated by asterisks in the following tables. The functions without asterisks are optional for a recognizer. Each table corresponds to one of the categories listed previously, with functions arranged in alphabetic order within the table.

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database