xref: /aoo41x/main/ucb/source/ucp/odma/odma.h (revision 79aad27f)
1*6347c3c7SPedro Giffuni /* odma.h - Definitions, prototypes, etc. for Open Document Managment API
2*6347c3c7SPedro Giffuni 	(ODMA) version 2.0.
3*6347c3c7SPedro Giffuni                OPEN DOCUMENT MANAGEMENT API LICENSE 1.0
4*6347c3c7SPedro Giffuni 
5*6347c3c7SPedro Giffuni                  ODMA 2.0 SPECIFICATIONS AND SOFTWARE
6*6347c3c7SPedro Giffuni                  ------------------------------------
7*6347c3c7SPedro Giffuni 
8*6347c3c7SPedro Giffuni                Copyright � 1994-1998 AIIM International
9*6347c3c7SPedro Giffuni 
10*6347c3c7SPedro Giffuni LICENSE:
11*6347c3c7SPedro Giffuni 
12*6347c3c7SPedro Giffuni     Redistribution and use in source and binary forms, with or
13*6347c3c7SPedro Giffuni     without modifications, are permitted provided that the
14*6347c3c7SPedro Giffuni     following conditions are met:
15*6347c3c7SPedro Giffuni 
16*6347c3c7SPedro Giffuni       * Redistributions of source code must retain the above
17*6347c3c7SPedro Giffuni         copyright notice, this list of conditions and the
18*6347c3c7SPedro Giffuni         following disclaimer.
19*6347c3c7SPedro Giffuni 
20*6347c3c7SPedro Giffuni       * Redistributions in binary form must reproduce the
21*6347c3c7SPedro Giffuni         above copyright notice, this list of conditions and
22*6347c3c7SPedro Giffuni         the following disclaimer in the documentation and/or
23*6347c3c7SPedro Giffuni         other materials provided with the distribution.
24*6347c3c7SPedro Giffuni 
25*6347c3c7SPedro Giffuni       * Neither the name of AIIM International nor the names
26*6347c3c7SPedro Giffuni         of its contributors may be used to endorse or promote
27*6347c3c7SPedro Giffuni         products derived from this software without specific
28*6347c3c7SPedro Giffuni         prior written permission.
29*6347c3c7SPedro Giffuni 
30*6347c3c7SPedro Giffuni DISCLAIMER:
31*6347c3c7SPedro Giffuni 
32*6347c3c7SPedro Giffuni     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
33*6347c3c7SPedro Giffuni     CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
34*6347c3c7SPedro Giffuni     INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
35*6347c3c7SPedro Giffuni     MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
36*6347c3c7SPedro Giffuni     DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
37*6347c3c7SPedro Giffuni     CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
38*6347c3c7SPedro Giffuni     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
39*6347c3c7SPedro Giffuni     BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
40*6347c3c7SPedro Giffuni     SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
41*6347c3c7SPedro Giffuni     INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
42*6347c3c7SPedro Giffuni     WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
43*6347c3c7SPedro Giffuni     NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
44*6347c3c7SPedro Giffuni     OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
45*6347c3c7SPedro Giffuni     SUCH DAMAGE.
46*6347c3c7SPedro Giffuni 
47*6347c3c7SPedro Giffuni 	COPYRIGHT (C) 1994, 1995
48*6347c3c7SPedro Giffuni 	AIIM International
49*6347c3c7SPedro Giffuni 	All Right Reserved
50*6347c3c7SPedro Giffuni */
51*6347c3c7SPedro Giffuni 
52*6347c3c7SPedro Giffuni #ifndef ODMA_H
53*6347c3c7SPedro Giffuni #define ODMA_H
54*6347c3c7SPedro Giffuni 
55*6347c3c7SPedro Giffuni /* Type definitions */
56*6347c3c7SPedro Giffuni typedef LPVOID ODMHANDLE;
57*6347c3c7SPedro Giffuni typedef LPSTR (*ODMSAVEASCALLBACK)(DWORD dwEnvData, LPSTR lpszFormat, LPVOID pInstanceData);
58*6347c3c7SPedro Giffuni typedef int ODMSTATUS;
59*6347c3c7SPedro Giffuni 
60*6347c3c7SPedro Giffuni /* Constants */
61*6347c3c7SPedro Giffuni #define ODM_API_VERSION			200		/* Version of the API */
62*6347c3c7SPedro Giffuni 
63*6347c3c7SPedro Giffuni #ifdef WIN32
64*6347c3c7SPedro Giffuni 	#define ODM_DOCID_MAX		255		/* Win32 */
65*6347c3c7SPedro Giffuni 
66*6347c3c7SPedro Giffuni #elif defined( _WINDOWS_ ) || defined( _MSDOS )
67*6347c3c7SPedro Giffuni 	#define ODM_DOCID_MAX		80		/* Windows 3.x */
68*6347c3c7SPedro Giffuni 
69*6347c3c7SPedro Giffuni #else
70*6347c3c7SPedro Giffuni 	#define ODM_DOCID_MAX		255		/* Other platforms */
71*6347c3c7SPedro Giffuni #endif
72*6347c3c7SPedro Giffuni 
73*6347c3c7SPedro Giffuni #define ODM_DMSID_MAX			9		/* Max length of a DMS ID including the
74*6347c3c7SPedro Giffuni 										/* terminating NULL character.  */
75*6347c3c7SPedro Giffuni 
76*6347c3c7SPedro Giffuni #define ODM_APPID_MAX			16		/* Max length of a application ID including
77*6347c3c7SPedro Giffuni 										/* the terminating NULL character.  */
78*6347c3c7SPedro Giffuni 
79*6347c3c7SPedro Giffuni // ODMA 2.0
80*6347c3c7SPedro Giffuni #define ODM_QUERYID_MAX			255		// Max length of a query ID including
81*6347c3c7SPedro Giffuni 													// the terminating NULL character.
82*6347c3c7SPedro Giffuni 
83*6347c3c7SPedro Giffuni #define ODM_FORMAT_MAX			81 // Max length of a format including
84*6347c3c7SPedro Giffuni 													// the terminating NULL character.
85*6347c3c7SPedro Giffuni 
86*6347c3c7SPedro Giffuni // Maximum length of a filename returned by ODMA including the terminating
87*6347c3c7SPedro Giffuni //	NULL character.  Platform dependent.
88*6347c3c7SPedro Giffuni 
89*6347c3c7SPedro Giffuni #ifdef WIN32
90*6347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	255		/* Win32 */
91*6347c3c7SPedro Giffuni 
92*6347c3c7SPedro Giffuni #elif defined( _WINDOWS_ ) || defined( _MSDOS )
93*6347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	128		/* Windows 3.x */
94*6347c3c7SPedro Giffuni 
95*6347c3c7SPedro Giffuni #elif defined( unix ) || defined( _UNIX )
96*6347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	1024	/* Unix */
97*6347c3c7SPedro Giffuni 
98*6347c3c7SPedro Giffuni #else
99*6347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	255		/* Other platforms */
100*6347c3c7SPedro Giffuni #endif
101*6347c3c7SPedro Giffuni 
102*6347c3c7SPedro Giffuni 
103*6347c3c7SPedro Giffuni /* Common format type names */
104*6347c3c7SPedro Giffuni #define ODM_FORMAT_TEXT	"Text"
105*6347c3c7SPedro Giffuni #define ODM_FORMAT_RTF	"Rich text format"
106*6347c3c7SPedro Giffuni #define ODM_FORMAT_DCA	"DCA RFT"		/* IBM DCA Rich Format Text */
107*6347c3c7SPedro Giffuni #define ODM_FORMAT_TIFF	"Tiff"
108*6347c3c7SPedro Giffuni #define ODM_FORMAT_GIF	"Gif"				/* Compuserve Graphics Interchange Format */
109*6347c3c7SPedro Giffuni #define ODM_FORMAT_BMP	"Windows bitmap"
110*6347c3c7SPedro Giffuni #define ODM_FORMAT_PCX	"PCX"
111*6347c3c7SPedro Giffuni #define ODM_FORMAT_CGM	"CGM"				/* Computer Graphics Metafile */
112*6347c3c7SPedro Giffuni #define ODM_FORMAT_EXE	"Executable file"
113*6347c3c7SPedro Giffuni #define ODM_FORMAT_PCL	"PCL"				/* HP Printer Control Language */
114*6347c3c7SPedro Giffuni #define ODM_FORMAT_PS	"PostScript"
115*6347c3c7SPedro Giffuni 
116*6347c3c7SPedro Giffuni 
117*6347c3c7SPedro Giffuni /* Error returns */
118*6347c3c7SPedro Giffuni #define ODM_SUCCESS			0		// Success!
119*6347c3c7SPedro Giffuni #define ODM_E_FAIL			1		/* Unspecified failure */
120*6347c3c7SPedro Giffuni #define ODM_E_CANCEL		2		/* Action was cancelled at user's request */
121*6347c3c7SPedro Giffuni #define ODM_E_NODMS			3		/* DMS not registered */
122*6347c3c7SPedro Giffuni #define ODM_E_CANTINIT		4		/* DMS failed to initalize */
123*6347c3c7SPedro Giffuni #define ODM_E_VERSION		5		/* DMS doesn't support the requested
124*6347c3c7SPedro Giffuni 									           version of ODMA */
125*6347c3c7SPedro Giffuni #define ODM_E_APPSELECT		6        /* User has indicated that he wants to use
126*6347c3c7SPedro Giffuni                                        the application's file selection
127*6347c3c7SPedro Giffuni                                        capabilities rather than those of the
128*6347c3c7SPedro Giffuni                                        DMS. */
129*6347c3c7SPedro Giffuni #define ODM_E_USERINT		7        /* Requested action cannot be performed
130*6347c3c7SPedro Giffuni                                        without user interaction, but silent
131*6347c3c7SPedro Giffuni                                        mode was specified. */
132*6347c3c7SPedro Giffuni #define ODM_E_HANDLE		8        /* The DMHANDLE argument was invalid. */
133*6347c3c7SPedro Giffuni #define ODM_E_ACCESS		9        /* User does not have requested access
134*6347c3c7SPedro Giffuni                                        rights to specified document. */
135*6347c3c7SPedro Giffuni #define ODM_E_INUSE			10        /* Document is currently in use and cannot
136*6347c3c7SPedro Giffuni                                        be accessed in specified mode. */
137*6347c3c7SPedro Giffuni #define ODM_E_DOCID			11        /* Invalid document ID */
138*6347c3c7SPedro Giffuni #define ODM_E_OPENMODE		12        /* The specified action is incompatible
139*6347c3c7SPedro Giffuni                                        with the mode in which the document was
140*6347c3c7SPedro Giffuni                                        opened. */
141*6347c3c7SPedro Giffuni #define ODM_E_NOOPEN		13        /* The specified document is not open. */
142*6347c3c7SPedro Giffuni #define ODM_E_ITEM			14        /* Invalid item specifier. */
143*6347c3c7SPedro Giffuni #define ODM_E_OTHERAPP		15        /* Selected document was for another app. */
144*6347c3c7SPedro Giffuni #define ODM_E_NOMOREDATA	16		/* No more data is available */
145*6347c3c7SPedro Giffuni #define ODM_E_PARTIALSUCCESS 17		/* */
146*6347c3c7SPedro Giffuni // Additional Error code from ODMA 2.0
147*6347c3c7SPedro Giffuni #define ODM_E_REQARG		18		/* */
148*6347c3c7SPedro Giffuni #define ODM_E_NOSUPPORT		19		/* */
149*6347c3c7SPedro Giffuni #define ODM_E_TRUNCATED		20		/* */
150*6347c3c7SPedro Giffuni #define ODM_E_INVARG  21
151*6347c3c7SPedro Giffuni #define ODM_E_OFFLINE  22		/* */
152*6347c3c7SPedro Giffuni 
153*6347c3c7SPedro Giffuni 
154*6347c3c7SPedro Giffuni // ODMOpenDoc modes
155*6347c3c7SPedro Giffuni #define ODM_MODIFYMODE		1        /* Open document in a modifiable mode. */
156*6347c3c7SPedro Giffuni #define ODM_VIEWMODE		2        /* Open document in non-modifiable mode. */
157*6347c3c7SPedro Giffuni // ODMA 2.0
158*6347c3c7SPedro Giffuni #define ODM_REFCOPY			3
159*6347c3c7SPedro Giffuni 
160*6347c3c7SPedro Giffuni 
161*6347c3c7SPedro Giffuni // Actions for ODMActivate
162*6347c3c7SPedro Giffuni #define ODM_NONE			0        /* No specific action is requested.  */
163*6347c3c7SPedro Giffuni #define ODM_DELETE			1        /* Delete the specified document.  */
164*6347c3c7SPedro Giffuni #define ODM_SHOWATTRIBUTES	2        /* Display the specified document's profile
165*6347c3c7SPedro Giffuni                                        or attributes. */
166*6347c3c7SPedro Giffuni #define ODM_EDITATTRIBUTES	3        /* Edit the specified document's profile or
167*6347c3c7SPedro Giffuni                                        attributes. */
168*6347c3c7SPedro Giffuni #define ODM_VIEWDOC			4        /* Display the specified document in a
169*6347c3c7SPedro Giffuni                                        viewer window. */
170*6347c3c7SPedro Giffuni #define ODM_OPENDOC			5        /* Open the specified document in its
171*6347c3c7SPedro Giffuni                                        native application.  */
172*6347c3c7SPedro Giffuni // ODMA 2.0
173*6347c3c7SPedro Giffuni #define ODM_NEWDOC			6
174*6347c3c7SPedro Giffuni #define ODM_CHECKOUT		7
175*6347c3c7SPedro Giffuni #define ODM_CANCELCHECKOUT	8
176*6347c3c7SPedro Giffuni #define ODM_CHECKIN			9
177*6347c3c7SPedro Giffuni #define ODM_SHOWHISTORY		10
178*6347c3c7SPedro Giffuni 
179*6347c3c7SPedro Giffuni 
180*6347c3c7SPedro Giffuni // Item selectors for ODMGetDocInfo and ODMSetDocInfo
181*6347c3c7SPedro Giffuni #define ODM_AUTHOR			1        /* Author of the document. */
182*6347c3c7SPedro Giffuni #define ODM_NAME			2        /* Descriptive name of the document.  */
183*6347c3c7SPedro Giffuni #define ODM_TYPE			3        /* Type of the document.  */
184*6347c3c7SPedro Giffuni #define ODM_TITLETEXT		4        /* Suggested text to display in the
185*6347c3c7SPedro Giffuni                                        document window's title bar. */
186*6347c3c7SPedro Giffuni #define ODM_DMS_DEFINED		5        /* DMS defined data. */
187*6347c3c7SPedro Giffuni #define ODM_CONTENTFORMAT	6        /* String describing document's format */
188*6347c3c7SPedro Giffuni // ODMA 2.0
189*6347c3c7SPedro Giffuni #define ODM_ALTERNATE_RENDERINGS	7
190*6347c3c7SPedro Giffuni #define ODM_CHECKEDOUTBY	8
191*6347c3c7SPedro Giffuni #define ODM_CHECKOUTCOMMENT	9
192*6347c3c7SPedro Giffuni #define ODM_CHECKOUTDATE	10
193*6347c3c7SPedro Giffuni #define ODM_CREATEDBY		11
194*6347c3c7SPedro Giffuni #define ODM_CREATEDDATE		12
195*6347c3c7SPedro Giffuni #define ODM_DOCID_LATEST	13
196*6347c3c7SPedro Giffuni #define ODM_DOCID_RELEASED	14
197*6347c3c7SPedro Giffuni #define ODM_DOCVERSION		15
198*6347c3c7SPedro Giffuni #define ODM_DOCVERSION_LATEST	16
199*6347c3c7SPedro Giffuni #define ODM_DOCVERSION_RELEASED	17
200*6347c3c7SPedro Giffuni #define ODM_LOCATION		18
201*6347c3c7SPedro Giffuni #define ODM_KEYWORDS		19
202*6347c3c7SPedro Giffuni #define ODM_LASTCHECKINBY	20
203*6347c3c7SPedro Giffuni #define ODM_LASTCHECKINDATE	21
204*6347c3c7SPedro Giffuni #define ODM_MODIFYDATE		22
205*6347c3c7SPedro Giffuni #define ODM_MODIFYDATE_LATEST	23
206*6347c3c7SPedro Giffuni #define ODM_MODIFYDATE_RELEASED	24
207*6347c3c7SPedro Giffuni #define ODM_OWNER			25
208*6347c3c7SPedro Giffuni #define ODM_SUBJECT			26
209*6347c3c7SPedro Giffuni #define ODM_TITLETEXT_RO	27
210*6347c3c7SPedro Giffuni #define ODM_URL				28
211*6347c3c7SPedro Giffuni 
212*6347c3c7SPedro Giffuni 
213*6347c3c7SPedro Giffuni // Item selectors for ODMQueryCapability ODMA 2.0
214*6347c3c7SPedro Giffuni #define ODM_QC_ACTIVATE				1
215*6347c3c7SPedro Giffuni #define ODM_QC_CLOSEDOC				2
216*6347c3c7SPedro Giffuni #define ODM_QC_CLOSEDOCEX			3
217*6347c3c7SPedro Giffuni #define ODM_QC_GETALTERNATECONTENT	4
218*6347c3c7SPedro Giffuni #define ODM_QC_GETDMSINFO			5
219*6347c3c7SPedro Giffuni #define ODM_QC_GETDOCINFO			6
220*6347c3c7SPedro Giffuni #define ODM_QC_GETDOCRELATION		7
221*6347c3c7SPedro Giffuni #define ODM_QC_GETLEADMONIKER		8
222*6347c3c7SPedro Giffuni #define ODM_QC_NEWDOC				9
223*6347c3c7SPedro Giffuni #define ODM_QC_OPENDOC				10
224*6347c3c7SPedro Giffuni #define ODM_QC_QUERYCLOSE			11
225*6347c3c7SPedro Giffuni #define ODM_QC_QUERYEXECUTE			12
226*6347c3c7SPedro Giffuni #define ODM_QC_QUERYGETRESULTS		13
227*6347c3c7SPedro Giffuni #define ODM_QC_SAVEAS				14
228*6347c3c7SPedro Giffuni #define ODM_QC_SAVEASEX				15
229*6347c3c7SPedro Giffuni #define ODM_QC_SAVEDOC				16
230*6347c3c7SPedro Giffuni #define ODM_QC_SAVEDOCEX			17
231*6347c3c7SPedro Giffuni #define ODM_QC_SELECTDOC			18
232*6347c3c7SPedro Giffuni #define ODM_QC_SELECTDOCEX			19
233*6347c3c7SPedro Giffuni #define ODM_QC_SETALTERNATECONTENT	20
234*6347c3c7SPedro Giffuni #define ODM_QC_SETDOCEVENT			21
235*6347c3c7SPedro Giffuni #define ODM_QC_SETDOCRELATION		22
236*6347c3c7SPedro Giffuni #define ODM_QC_SETDOCINFO			23
237*6347c3c7SPedro Giffuni 
238*6347c3c7SPedro Giffuni 
239*6347c3c7SPedro Giffuni // Misc. modes, flags
240*6347c3c7SPedro Giffuni #define ODM_SILENT			16        /* Don't interact with the user while
241*6347c3c7SPedro Giffuni                                        fulfilling this request. */
242*6347c3c7SPedro Giffuni //ODMA 2.0
243*6347c3c7SPedro Giffuni #define ODM_VERSION_SAME	1
244*6347c3c7SPedro Giffuni #define ODM_VERSION_MAJOR	2
245*6347c3c7SPedro Giffuni #define ODM_VERSION_MINOR	4
246*6347c3c7SPedro Giffuni #define ODM_VERSION_CHANGED	8
247*6347c3c7SPedro Giffuni #define ODM_ALT_DELETE		32
248*6347c3c7SPedro Giffuni 
249*6347c3c7SPedro Giffuni //ODMA 2.0 DMS Info Flags
250*6347c3c7SPedro Giffuni #define ODM_EXT_QUERY		1
251*6347c3c7SPedro Giffuni #define ODM_EXT_WORKFLOW 	2
252*6347c3c7SPedro Giffuni 
253*6347c3c7SPedro Giffuni // Flags for Query Interface
254*6347c3c7SPedro Giffuni #define ODM_ALL				1		// All DMS's should be searched
255*6347c3c7SPedro Giffuni #define ODM_SPECIFIC		2		// Only specific DMS's should be searched
256*6347c3c7SPedro Giffuni 
257*6347c3c7SPedro Giffuni 
258*6347c3c7SPedro Giffuni // Function prototypes
259*6347c3c7SPedro Giffuni #ifdef __cplusplus
260*6347c3c7SPedro Giffuni extern "C" {
261*6347c3c7SPedro Giffuni #endif
262*6347c3c7SPedro Giffuni 
263*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMRegisterApp(ODMHANDLE FAR *pOdmHandle, WORD version,
264*6347c3c7SPedro Giffuni 	LPSTR lpszAppId, DWORD dwEnvData, LPVOID pReserved);
265*6347c3c7SPedro Giffuni 
266*6347c3c7SPedro Giffuni void WINAPI ODMUnRegisterApp(ODMHANDLE odmHandle);
267*6347c3c7SPedro Giffuni 
268*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSelectDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
269*6347c3c7SPedro Giffuni 	LPDWORD pdwFlags);
270*6347c3c7SPedro Giffuni 
271*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMOpenDoc(ODMHANDLE odmHandle, DWORD flags,
272*6347c3c7SPedro Giffuni 	LPSTR lpszDocId, LPSTR lpszDocLocation);
273*6347c3c7SPedro Giffuni 
274*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
275*6347c3c7SPedro Giffuni 	LPSTR lpszNewDocId);
276*6347c3c7SPedro Giffuni 
277*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMCloseDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
278*6347c3c7SPedro Giffuni 	DWORD activeTime, DWORD pagesPrinted, LPVOID sessionData, WORD dataLen);
279*6347c3c7SPedro Giffuni 
280*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMNewDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
281*6347c3c7SPedro Giffuni 	DWORD dwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation);
282*6347c3c7SPedro Giffuni 
283*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveAs(ODMHANDLE odmHandle, LPSTR lpszDocId,
284*6347c3c7SPedro Giffuni 	LPSTR lpszNewDocId, LPSTR lpszFormat, ODMSAVEASCALLBACK pcbCallBack,
285*6347c3c7SPedro Giffuni 	LPVOID pInstanceData);
286*6347c3c7SPedro Giffuni 
287*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMActivate(ODMHANDLE odmHandle, WORD action,
288*6347c3c7SPedro Giffuni 	LPSTR lpszDocId);
289*6347c3c7SPedro Giffuni 
290*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDocInfo(ODMHANDLE odmHandle, LPSTR lpszDocId,
291*6347c3c7SPedro Giffuni 	WORD item, LPSTR lpszData, WORD dataLen);
292*6347c3c7SPedro Giffuni 
293*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDocInfo(ODMHANDLE odmHandle, LPSTR lpszDocId,
294*6347c3c7SPedro Giffuni 	WORD item, LPSTR lpszData);
295*6347c3c7SPedro Giffuni 
296*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDMSInfo(ODMHANDLE odmHandle, LPSTR lpszDmsId,
297*6347c3c7SPedro Giffuni 	LPWORD pwVerNo, LPDWORD pdwExtensions);
298*6347c3c7SPedro Giffuni 
299*6347c3c7SPedro Giffuni /* Query Enhancements */
300*6347c3c7SPedro Giffuni WORD WINAPI ODMGetDMSCount();
301*6347c3c7SPedro Giffuni 
302*6347c3c7SPedro Giffuni WORD WINAPI ODMGetDMSList( LPSTR buffer, WORD buffer_size );
303*6347c3c7SPedro Giffuni 
304*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDMS( LPCSTR lpszAppId, LPSTR lpszDMSId );
305*6347c3c7SPedro Giffuni 
306*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDMS( LPCSTR lpszAppId, LPCSTR lpszDMSId );
307*6347c3c7SPedro Giffuni 
308*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryExecute(ODMHANDLE odmHandle, LPCSTR lpszQuery,
309*6347c3c7SPedro Giffuni 								 DWORD flags, LPCSTR lpszDMSList, LPSTR queryId );
310*6347c3c7SPedro Giffuni 
311*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryGetResults(ODMHANDLE odmHandle, LPCSTR queryId,
312*6347c3c7SPedro Giffuni 									LPSTR lpszDocId, LPSTR lpszDocName, WORD docNameLen,
313*6347c3c7SPedro Giffuni 									WORD *docCount );
314*6347c3c7SPedro Giffuni 
315*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryClose(ODMHANDLE odmHandle, LPCSTR queryId );
316*6347c3c7SPedro Giffuni 
317*6347c3c7SPedro Giffuni /* ODMA 2.0 Enhancements */
318*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMCloseDocEx(ODMHANDLE odmHandle, LPSTR lpszDocId,
319*6347c3c7SPedro Giffuni 							LPDWORD pdwFlags, DWORD activeTime, DWORD pagesPrinted,
320*6347c3c7SPedro Giffuni 							LPVOID sessionData, WORD dataLen);
321*6347c3c7SPedro Giffuni 
322*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveAsEx(ODMHANDLE odmHandle, LPSTR lpszDocId,
323*6347c3c7SPedro Giffuni 							LPSTR lpszNewDocId, LPSTR lpszFormat, ODMSAVEASCALLBACK pcbCallBack,
324*6347c3c7SPedro Giffuni 							LPVOID pInstanceData, LPDWORD pdwFlags);
325*6347c3c7SPedro Giffuni 
326*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveDocEx(ODMHANDLE odmHandle, LPSTR lpszDocId,
327*6347c3c7SPedro Giffuni 							LPSTR lpszNewDocId,	LPDWORD pdwFlags);
328*6347c3c7SPedro Giffuni 
329*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSelectDocEx(ODMHANDLE odmHandle, LPSTR lpszDocIds,
330*6347c3c7SPedro Giffuni 							LPWORD pwDocIdsLen, LPWORD pwDocCount, LPDWORD pdwFlags,
331*6347c3c7SPedro Giffuni 							LPSTR lpszFormatFilter);
332*6347c3c7SPedro Giffuni 
333*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryCapability(ODMHANDLE odmHandle, LPCSTR lpszDmsId,
334*6347c3c7SPedro Giffuni 							DWORD function, DWORD item, DWORD flags);
335*6347c3c7SPedro Giffuni 
336*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDocEvent(ODMHANDLE odmHandle, LPSTR lpszDocId,
337*6347c3c7SPedro Giffuni 							DWORD flags, DWORD event, LPVOID lpData, DWORD dwDataLen,
338*6347c3c7SPedro Giffuni 							LPSTR lpszComment);
339*6347c3c7SPedro Giffuni 
340*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetAlternateContent(ODMHANDLE odmHandle, LPSTR lpszDocId,
341*6347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation);
342*6347c3c7SPedro Giffuni 
343*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetAlternateContent(ODMHANDLE odmHandle, LPSTR lpszDocId,
344*6347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation);
345*6347c3c7SPedro Giffuni 
346*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDocRelation(ODMHANDLE odmHandle, LPSTR lpszDocId,
347*6347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszLinkedId, LPSTR lpszFormat,
348*6347c3c7SPedro Giffuni 							LPSTR lpszPreviousId);
349*6347c3c7SPedro Giffuni 
350*6347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDocRelation(ODMHANDLE odmHandle, LPSTR lpszDocId,
351*6347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszLinkedId, LPSTR lpszFormat,
352*6347c3c7SPedro Giffuni 							LPSTR lpszPreviousId);
353*6347c3c7SPedro Giffuni 
354*6347c3c7SPedro Giffuni #ifdef __cplusplus
355*6347c3c7SPedro Giffuni }
356*6347c3c7SPedro Giffuni #endif
357*6347c3c7SPedro Giffuni 
358*6347c3c7SPedro Giffuni #endif
359