Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
This structure is used by the IIMCallback2::SendAlternatives2interface to send information from an input method (IM) to an input method editor (IME).
Syntax
typedef struct _tagLMDATA{ DWORD dwVersion; DWORD flags; DWORD cnt; DWORD dwOffsetSymbols; DWORD dwOffsetSkip; DWORD dwOffsetScore; }LMDATA; |
Members
- dwVersion
-
Version number of the structure. This must be set to 0x00010000.
- flags
-
Flags to apply to the structure. This notifies the IME what kind of data a given offset type — symbol, skip, or score — contains. The following table lists the flags. This member is set to a combination of flags, with one flag for each offset type.
Flag Description LMDATA_SYMBOL_BYTE
Symbol information store as a BYTE.
LMDATA_SYMBOL_WORD
Symbol information store as a WORD.
LMDATA_SYMBOL_DWORD
Symbol information store as a DWORD.
LMDATA_SYMBOL_QWORD
Symbol information store as a QUAD WORD.
LMDATA_SKIP_BYTE
Skip information store as a BYTE.
LMDATA_SKIP_WORD
Skip information store as a WORD.
LMDATA_SCORE_BYTE
Score information store as a BYTE.
LMDATA_SCORE_WORD
Score information store as a WORD.
LMDATA_SCORE_DWORD
Score information store as a DWORD.
LMDATA_SCORE_QWORD
Score information store as a QUAD WORD.
LMDATA_SCORE_FLOAT
Score information store as a FLOAT.
LMDATA_SCORE_DOUBLE
Score information store as a DOUBLE.
The skip flag is not required by the structure.
- cnt
-
Number of rows of data. A row consisting of a symbol, a score, and optionally a skip. For each symbol sent there is a score and perhaps a skip that form a row.
- dwOffsetSymbols
-
Offset to the start of the symbol table. The offset is from the end of the LMDATAstructure.
- dwOffsetSkip
-
Offset to the start of the skip table. The offset is from the end of the LMDATAstructure.
- dwOffsetScore
-
Offset to the start of the score table. The offset is from the end of the LMDATAstructure.
Remarks
The description of the LMDATAstructure can vary from application to application. For example, if the symbol being sent is really a word then the symbol table can be used as an offset to the actual word. This implementation depends completely on the how an IME and IM have agreed to share data.
In the following code example, a memory dump is shown for a structure that contains WORD symbols and a score only.
Copy Code | |
---|---|
Offset Value Comment 0x0000 0x00010000 Version 1.0 data structure 0x0004 0x00000102 LMDATA_SYMBOL_WORD | LMDATA_SCORE_DWORD 0x0008 0x00000007 7 values in each column 0x000c 0x00000000 offset to symbol data 0x0010 0x00000000 offset to skip data 0x0014 0x00000010 offset to score data 0x0018 0x6eae first symbol 0x001a 0x8a01 second symbol 0x001c 0x4efe third symbol 0x001e 0x9f44 fourth symbol 0x0020 0x7784 fifth symbol 0x0022 0x888e sixth symbol 0x0024 0x900f seventh symbol 0x0026 0x0000 padding for data type alignment 0x0028 0xfffe1008 score for first symbol 0x002c 0xfffdcbfe score for second symbol 0x0030 0xfffda778 score for third symbol 0x0034 0xfffcfed0 score for fourth symbol 0x0038 0xfffb9965 score for fifth symbol 0x003c 0xfffab430 score for sixth symbol 0x0040 0xfffa7ffe score for seventh symbol |
Requirements
Header | sip.h |
Windows Embedded CE | Windows CE 2.12 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |