source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/ftsiface.h@ 1167

Last change on this file since 1167 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 4.9 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef __FTSIFACE_H__
7#define __FTSIFACE_H__
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13 typedef HANDLE HINDEX;
14 typedef HANDLE HSEARCHER;
15 typedef HANDLE HCOMPRESSOR;
16 typedef HANDLE HHILITER;
17 typedef INT ERRORCODE;
18 typedef struct { int base; int limit; } HILITE;
19
20#define NO_TITLE UINT(-1)
21#define NOT_INDEXER UINT(-2)
22#define NOT_SEARCHER UINT(-3)
23#define NOT_COMPRESSOR UINT(-4)
24#define CANNOT_SAVE UINT(-5)
25#define OUT_OF_MEMORY UINT(-6)
26#define CANNOT_OPEN UINT(-7)
27#define CANNOT_LOAD UINT(-8)
28#define INVALID_INDEX UINT(-9)
29#define ALREADY_WEIGHED UINT(-10)
30#define NO_TEXT_SCANNED UINT(-11)
31#define ALIGNMENT_ERROR UINT(-12)
32#define INVALID_PHRASE_TABLE UINT(-13)
33#define INVALID_LCID UINT(-14)
34#define NO_INDICES_LOADED UINT(-15)
35#define INDEX_LOADED_ALREADY UINT(-16)
36#define GROUP_LOADED_ALREADY UINT(-17)
37#define DIALOG_ALREADY_ACTIVE UINT(-18)
38#define EMPTY_PHRASE_TABLE UINT(-19)
39#define OUT_OF_DISK UINT(-20)
40#define DISK_READ_ERROR UINT(-21)
41#define DISK_WRITE_ERROR UINT(-22)
42#define SEARCH_ABORTED UINT(-23)
43#define UNKNOWN_EXCEPTION UINT(-24)
44#define SYSTEM_ERROR UINT(-25)
45#define NOT_HILITER UINT(-26)
46#define INVALID_CHARSET UINT(-27)
47#define INVALID_SOURCE_NAME UINT(-28)
48#define INVALID_TIMESTAMP UINT(-29)
49
50#define ERR_NO_DISK_SPACE 0xE0000001
51#define ERR_DISK_CREATE_ERROR 0xE0000002
52#define ERR_DISK_OPEN_ERROR 0xE0000003
53#define ERR_DISK_READ_ERROR 0xE0000004
54#define ERR_DISK_WRITE_ERROR 0xE0000005
55#define ERR_SYSTEM_ERROR 0xE0000006
56#define ERR_ABORT_SEARCH 0xE0000007
57#define ERR_INVALID_TIMESTAMP 0xE0000008
58#define ERR_INVALID_SOURCE_NAME 0xE0000009
59#define ERR_FILE_MAP_FAILED 0xE000000A
60#define ERR_INVALID_FILE_TYPE 0xE000000B
61#define ERR_DAMAGED_FILE 0xE000000C
62#define ERR_FUTURE_VERSION 0xE000000D
63
64#define TOPIC_SEARCH 0x00000001
65#define PHRASE_SEARCH 0x00000002
66#define PHRASE_FEEDBACK 0x00000004
67#define VECTOR_SEARCH 0x00000008
68#define WINHELP_INDEX 0x00000010
69#define USE_VA_ADDR 0x00000020
70#define USE_QWORD_JUMP 0x00000040
71
72#define USE_DEFAULT UINT(-1)
73
74 HINDEX WINAPI NewIndex(const PBYTE pbSourceName,UINT uiTime1,UINT uiTime2,UINT iCharsetDefault,UINT lcidDefault,UINT fdwOptions);
75 ERRORCODE WINAPI ScanTopicTitle(HINDEX hinx,PBYTE pbTitle,UINT cbTitle,UINT iTopic,HANDLE hTopic,UINT iCharset,UINT lcid);
76 ERRORCODE WINAPI ScanTopicText (HINDEX hinx,PBYTE pbText,UINT cbText,UINT iCharset,UINT lcid);
77 ERRORCODE WINAPI SaveIndex (HINDEX hinx,PSZ pszFileName);
78 ERRORCODE WINAPI DeleteIndex (HINDEX hinx);
79
80 typedef void (WINAPI *ANIMATOR)(void);
81
82 ERRORCODE WINAPI RegisterAnimator(ANIMATOR pAnimator,HWND hwndAnimator);
83 WINBOOL WINAPI IsValidIndex(PSZ pszFileName,UINT dwOptions);
84 void WINAPI SetDirectoryLocator(HWND hwndLocator);
85 HSEARCHER WINAPI NewSearcher();
86 INT WINAPI OpenIndex(HSEARCHER hsrch,PSZ pszIndexFileName,PBYTE pbSourceName,PUINT pcbSourceNameLimit,PUINT pTime1,PUINT pTime2);
87 ERRORCODE WINAPI DiscardIndex (HSEARCHER hsrch,INT iIndex);
88 ERRORCODE WINAPI QueryOptions (HSEARCHER hsrch,INT iIndex,PUINT pfdwOptions);
89 ERRORCODE WINAPI SaveGroup (HSEARCHER hsrch,PSZ pszFileName);
90 ERRORCODE WINAPI LoadGroup (HSEARCHER hsrch,PSZ pszFileName);
91 HWND WINAPI OpenDialog (HSEARCHER hsrch,HWND hwndParent);
92 ERRORCODE WINAPI DeleteSearcher(HSEARCHER hsrch);
93
94#define MSG_FTS_JUMP_HASH (WM_USER + 32)
95#define MSG_FTS_JUMP_VA (WM_USER + 33)
96#define MSG_FTS_GET_TITLE (WM_USER + 34)
97#define MSG_FTS_JUMP_QWORD (WM_USER + 35)
98#define MSG_REINDEX_REQUEST (WM_USER + 36)
99#define MSG_FTS_WHERE_IS_IT (WM_USER + 37)
100#define MSG_GET_DEFFONT (WM_USER + 45)
101
102 typedef struct _QWordAddress {
103 UINT iSerial;
104 HANDLE hTopic;
105 } QWordAddress,*PQWordAddress;
106
107 HCOMPRESSOR WINAPI NewCompressor(UINT iCharsetDefault);
108 ERRORCODE WINAPI ScanText(HCOMPRESSOR hcmp,PBYTE pbText,UINT cbText,UINT iCharset);
109 ERRORCODE WINAPI GetPhraseTable(HCOMPRESSOR hcmp,PUINT pcPhrases,PBYTE *ppbImages,PUINT pcbImages,PBYTE *ppacbImageCompressed,PUINT pcbCompressed);
110 ERRORCODE WINAPI SetPhraseTable(HCOMPRESSOR hcmp,PBYTE pbImages,UINT cbImages,PBYTE pacbImageCompressed,UINT cbCompressed);
111 INT WINAPI CompressText (HCOMPRESSOR hcmp,PBYTE pbText,UINT cbText,PBYTE *ppbCompressed,UINT iCharset);
112 INT WINAPI DecompressText(HCOMPRESSOR hcmp,PBYTE pbCompressed,UINT cbCompressed,PBYTE pbText);
113 ERRORCODE WINAPI DeleteCompressor(HCOMPRESSOR hcmp);
114 HHILITER WINAPI NewHiliter(HSEARCHER hSearch);
115 ERRORCODE WINAPI DeleteHiliter(HHILITER hhil);
116 ERRORCODE WINAPI ScanDisplayText(HHILITER hhil,PBYTE pbText,int cbText,UINT iCharset,LCID lcid);
117 ERRORCODE WINAPI ClearDisplayText(HHILITER hhil);
118 int WINAPI CountHilites(HHILITER hhil,int base,int limit);
119 int WINAPI QueryHilites(HHILITER hhil,int base,int limit,int cHilites,HILITE *paHilites);
120
121#ifdef __cplusplus
122}
123#endif
124#endif
Note: See TracBrowser for help on using the repository browser.