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
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:
- HRC functions
- HRCRESULT functions
- Alphabet support
- Word lists
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
Software for Android Developers
- More information resources
Unix Manual Pages