| /** |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is part of the mingw-w64 runtime package. |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| */ |
| #ifndef __INC_ELSCORE__ |
| #define __INC_ELSCORE__ |
| |
| #include <objbase.h> |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #ifndef ELSCOREAPI |
| #define ELSCOREAPI DECLSPEC_IMPORT |
| #endif |
| |
| #ifndef CALLBACK |
| #define CALLBACK WINAPI |
| #endif |
| |
| /* MAPPING_ENUM_OPTIONS.ServiceType */ |
| #define ALL_SERVICE_TYPES 0 |
| #define HIGHLEVEL_SERVICE_TYPES 1 |
| #define LOWLEVEL_SERVICE_TYPES 2 |
| |
| /* MAPPING_ENUM_OPTIONS.OnlineService */ |
| #define ALL_SERVICES 0 |
| #define ONLINE_SERVICES 1 |
| #define OFFLINE_SERVICES 2 |
| |
| typedef struct _MAPPING_DATA_RANGE { |
| DWORD dwStartIndex; |
| DWORD dwEndIndex; |
| LPWSTR pszDescription; |
| DWORD dwDescriptionLength; |
| LPVOID pData; |
| DWORD dwDataSize; |
| LPWSTR pszContentType; |
| LPWSTR *prgActionIds; |
| DWORD dwActionsCount; |
| LPWSTR *prgActionDisplayNames; |
| } MAPPING_DATA_RANGE, *PMAPPING_DATA_RANGE; |
| |
| typedef struct _MAPPING_ENUM_OPTIONS { |
| size_t Size; |
| LPWSTR pszCategory; |
| LPWSTR pszInputLanguage; |
| LPWSTR pszOutputLanguage; |
| LPWSTR pszInputScript; |
| LPWSTR pszOutputScript; |
| LPWSTR pszInputContentType; |
| LPWSTR pszOutputContentType; |
| GUID *pGuid; |
| unsigned OnlineService :2; |
| unsigned ServiceType :2; |
| } MAPPING_ENUM_OPTIONS, *PMAPPING_ENUM_OPTIONS; |
| |
| typedef struct _MAPPING_PROPERTY_BAG { |
| size_t Size; |
| PMAPPING_DATA_RANGE prgResultRanges; |
| DWORD dwRangesCount; |
| LPVOID pServiceData; |
| DWORD dwServiceDataSize; |
| LPVOID pCallerData; |
| DWORD dwCallerDataSize; |
| LPVOID pContext; |
| } MAPPING_PROPERTY_BAG, *PMAPPING_PROPERTY_BAG; |
| |
| typedef void (CALLBACK *PFN_MAPPINGCALLBACKPROC)( |
| MAPPING_PROPERTY_BAG *pBag, |
| LPVOID data, |
| DWORD dwDataSize, |
| HRESULT Result |
| ); |
| |
| typedef struct _MAPPING_OPTIONS { |
| size_t Size; |
| LPWSTR pszInputLanguage; |
| LPWSTR pszOutputLanguage; |
| LPWSTR pszInputScript; |
| LPWSTR pszOutputScript; |
| LPWSTR pszInputContentType; |
| LPWSTR pszOutputContentType; |
| LPWSTR pszUILanguage; |
| PFN_MAPPINGCALLBACKPROC pfnRecognizeCallback; |
| LPVOID pRecognizeCallerData; |
| DWORD dwRecognizeCallerDataSize; |
| PFN_MAPPINGCALLBACKPROC pfnActionCallback; |
| LPVOID pActionCallerData; |
| DWORD dwActionCallerDataSize; |
| DWORD dwServiceFlag; |
| unsigned GetActionDisplayName :1; |
| } MAPPING_OPTIONS, *PMAPPING_OPTIONS; |
| |
| typedef struct _MAPPING_SERVICE_INFO { |
| size_t Size; |
| LPWSTR pszCopyright; |
| WORD wMajorVersion; |
| WORD wMinorVersion; |
| WORD wBuildVersion; |
| WORD wStepVersion; |
| DWORD dwInputContentTypesCount; |
| LPWSTR *prgInputContentTypes; |
| DWORD dwOutputContentTypesCount; |
| LPWSTR *prgOutputContentTypes; |
| DWORD dwInputLanguagesCount; |
| LPWSTR *prgInputLanguages; |
| DWORD dwOutputLanguagesCount; |
| LPWSTR *prgOutputLanguages; |
| DWORD dwInputScriptsCount; |
| LPWSTR *prgInputScripts; |
| DWORD dwOutputScriptsCount; |
| LPWSTR *prgOutputScripts; |
| GUID guid; |
| LPWSTR pszCategory; |
| LPWSTR pszDescription; |
| DWORD dwPrivateDataSize; |
| LPVOID pPrivateData; |
| LPVOID pContext; |
| unsigned IsOneToOneLanguageMapping :1; |
| unsigned HasSubservices :1; |
| unsigned OnlineOnly :1; |
| unsigned ServiceType :2; |
| } MAPPING_SERVICE_INFO, *PMAPPING_SERVICE_INFO; |
| |
| ELSCOREAPI HRESULT WINAPI MappingRecognizeText( |
| PMAPPING_SERVICE_INFO pServiceInfo, |
| LPCWSTR pszText, |
| DWORD dwLength, |
| DWORD dwIndex, |
| PMAPPING_OPTIONS pOptions, |
| PMAPPING_PROPERTY_BAG pBag |
| ); |
| |
| ELSCOREAPI HRESULT WINAPI MappingDoAction( |
| PMAPPING_PROPERTY_BAG pBag, |
| DWORD dwRangeIndex, |
| LPCWSTR pszActionId |
| ); |
| |
| ELSCOREAPI HRESULT WINAPI MappingFreePropertyBag( |
| PMAPPING_PROPERTY_BAG pBag |
| ); |
| |
| ELSCOREAPI HRESULT WINAPI MappingFreeServices( |
| PMAPPING_SERVICE_INFO pServiceInfo |
| ); |
| |
| ELSCOREAPI HRESULT WINAPI MappingGetServices( |
| PMAPPING_ENUM_OPTIONS pOptions, |
| PMAPPING_SERVICE_INFO *prgServices, |
| DWORD *pdwServicesCount |
| ); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /*__INC_ELSCORE__*/ |