ReactOS  0.4.15-dev-2776-g4130f0b
indexsrv.idl
Go to the documentation of this file.
1 /*
2  * Copyright 2006 Mike McCormack
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18 
19 import "objidl.idl";
20 /* FIXME: import "filter.idl"; */
21 
22 /*
23  * widl doesn't like the declaration of PFNFILLTEXTBUFFER, so work around it...
24  * Not sure that function pointers are even legal in idl.
25  */
26 cpp_quote("struct tagTEXT_SOURCE;")
28 cpp_quote("#if 0")
29 typedef void* PFNFILLTEXTBUFFER;
30 cpp_quote("#endif")
31 
33 {
35  const WCHAR *awcBuffer;
38 } TEXT_SOURCE;
39 
41 {
47 
48 
49 /*****************************************************************************
50  * IWordSink interface
51  */
52 [
53  uuid(cc907054-c058-101a-b554-08002b33b0e6),
54  object,
55  local
56 ]
57 interface IWordSink : IUnknown
58 {
60  [in] ULONG cwc,
61  [size_is(cwcSrcLen)][in] const WCHAR *pwcInBuf,
62  [in] ULONG cwcSrcLen,
63  [in] ULONG cwcSrcPos);
65  [in] ULONG cwc,
66  [size_is(cwcSrcLen)][in] const WCHAR *pwcInBuf,
67  [in] ULONG cwcSrcLen,
68  [in] ULONG cwcSrcPos);
69  HRESULT StartAltPhrase(void);
70  HRESULT EndAltPhrase(void);
72  [in] WORDREP_BREAK_TYPE breakType);
73 }
74 
75 /*****************************************************************************
76  * IPhraseSink interface
77  */
78 [
79  uuid(cc906ff0-c058-101a-b554-08002b33b0e6),
80  object,
81  local
82 ]
84 {
86  [size_is(cwcNoun)][in] const WCHAR *pwcNoun,
87  [in] ULONG cwcNoun,
88  [size_is(cwcModifier)][in] const WCHAR *pwcModifier,
89  [in] ULONG cwcModifier,
90  [in] ULONG ulAttachmentType);
92  [size_is(cwcPhrase)][in] const WCHAR *pwcPhrase,
93  [in] ULONG cwcPhrase);
94 }
95 
96 /*****************************************************************************
97  * IWordBreaker interface
98  */
99 [
100  uuid(d53552c8-77e3-101a-b552-08002b33b0e6),
101  object,
102  local
103 ]
105 {
106  HRESULT Init(
107  [in] BOOL fQuery,
108  [in] ULONG ulMaxTokenSize,
109  [out] BOOL *pfLicense);
111  [in] TEXT_SOURCE *pTextSource,
112  [in] IWordSink *pWordSink,
113  [in] IPhraseSink *pPhraseSink);
115  [size_is(cwcNoun)][in] const WCHAR *pwcNoun,
116  [in] ULONG cwcNoun,
117  [size_is(cwcModifier)][in] const WCHAR *pwcModifier,
118  [in] ULONG cwcModifier,
119  [in] ULONG ulAttachmentType,
120  [size_is(*pcwcPhrase)][out] WCHAR *pwcPhrase,
121  [out][in] ULONG *pcwcPhrase);
123  [string][out] const WCHAR **ppwcsLicense);
124 }
HRESULT PutAltWord([in] ULONG cwc, [size_is(cwcSrcLen)][in] const WCHAR *pwcInBuf, [in] ULONG cwcSrcLen, [in] ULONG cwcSrcPos)
coclass MSXML2::XSLTemplate40 object
HRESULT PutWord([in] ULONG cwc, [size_is(cwcSrcLen)][in] const WCHAR *pwcInBuf, [in] ULONG cwcSrcLen, [in] ULONG cwcSrcPos)
tagWORDREP_BREAK_TYPE
Definition: indexsrv.idl:40
HRESULT ComposePhrase([size_is(cwcNoun)][in] const WCHAR *pwcNoun, [in] ULONG cwcNoun, [size_is(cwcModifier)][in] const WCHAR *pwcModifier, [in] ULONG cwcModifier, [in] ULONG ulAttachmentType, [size_is(*pcwcPhrase)][out] WCHAR *pwcPhrase, [out][in] ULONG *pcwcPhrase)
const WCHAR * awcBuffer
Definition: indexsrv.idl:35
HRESULT PutSmallPhrase([size_is(cwcNoun)][in] const WCHAR *pwcNoun, [in] ULONG cwcNoun, [size_is(cwcModifier)][in] const WCHAR *pwcModifier, [in] ULONG cwcModifier, [in] ULONG ulAttachmentType)
PFNFILLTEXTBUFFER pfnFillTextBuffer
Definition: indexsrv.idl:34
coclass AMMultiMediaStream cpp_quote("DEFINE_GUID(CLSID_AMDirectDrawStream, 0x49c47ce4, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);") cpp_quote("DEFINE_GUID(CLSID_AMAudioStream
HRESULT StartAltPhrase(void)
unsigned int BOOL
Definition: ntddk_ex.h:94
HRESULT PutPhrase([size_is(cwcPhrase)][in] const WCHAR *pwcPhrase, [in] ULONG cwcPhrase)
__wchar_t WCHAR
Definition: xmlstorage.h:180
HRESULT EndAltPhrase(void)
LONG HRESULT
Definition: typedefs.h:79
#define WINAPI
Definition: msvc.h:6
static FILE * out
Definition: regtests2xml.c:44
struct tagTEXT_SOURCE TEXT_SOURCE
#define local
Definition: zutil.h:30
HRESULT BreakText([in] TEXT_SOURCE *pTextSource, [in] IWordSink *pWordSink, [in] IPhraseSink *pPhraseSink)
GLuint in
Definition: glext.h:9616
enum tagWORDREP_BREAK_TYPE WORDREP_BREAK_TYPE
HRESULT PutBreak([in] WORDREP_BREAK_TYPE breakType)
unsigned int ULONG
Definition: retypes.h:1
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
HRESULT Init([in] BOOL fQuery, [in] ULONG ulMaxTokenSize, [out] BOOL *pfLicense)
void * PFNFILLTEXTBUFFER
Definition: indexsrv.idl:29
HRESULT GetLicenseToUse([string][out] const WCHAR **ppwcsLicense)