xref: /aoo42x/main/ucb/source/ucp/odma/odma.h (revision 30acf5e8)
1*30acf5e8Spfg /* odma.h - Definitions, prototypes, etc. for Open Document Management API
26347c3c7SPedro Giffuni 	(ODMA) version 2.0.
36347c3c7SPedro Giffuni                OPEN DOCUMENT MANAGEMENT API LICENSE 1.0
46347c3c7SPedro Giffuni 
56347c3c7SPedro Giffuni                  ODMA 2.0 SPECIFICATIONS AND SOFTWARE
66347c3c7SPedro Giffuni                  ------------------------------------
76347c3c7SPedro Giffuni 
86347c3c7SPedro Giffuni                Copyright � 1994-1998 AIIM International
96347c3c7SPedro Giffuni 
106347c3c7SPedro Giffuni LICENSE:
116347c3c7SPedro Giffuni 
126347c3c7SPedro Giffuni     Redistribution and use in source and binary forms, with or
136347c3c7SPedro Giffuni     without modifications, are permitted provided that the
146347c3c7SPedro Giffuni     following conditions are met:
156347c3c7SPedro Giffuni 
166347c3c7SPedro Giffuni       * Redistributions of source code must retain the above
176347c3c7SPedro Giffuni         copyright notice, this list of conditions and the
186347c3c7SPedro Giffuni         following disclaimer.
196347c3c7SPedro Giffuni 
206347c3c7SPedro Giffuni       * Redistributions in binary form must reproduce the
216347c3c7SPedro Giffuni         above copyright notice, this list of conditions and
226347c3c7SPedro Giffuni         the following disclaimer in the documentation and/or
236347c3c7SPedro Giffuni         other materials provided with the distribution.
246347c3c7SPedro Giffuni 
256347c3c7SPedro Giffuni       * Neither the name of AIIM International nor the names
266347c3c7SPedro Giffuni         of its contributors may be used to endorse or promote
276347c3c7SPedro Giffuni         products derived from this software without specific
286347c3c7SPedro Giffuni         prior written permission.
296347c3c7SPedro Giffuni 
306347c3c7SPedro Giffuni DISCLAIMER:
316347c3c7SPedro Giffuni 
326347c3c7SPedro Giffuni     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
336347c3c7SPedro Giffuni     CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
346347c3c7SPedro Giffuni     INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
356347c3c7SPedro Giffuni     MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
366347c3c7SPedro Giffuni     DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
376347c3c7SPedro Giffuni     CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
386347c3c7SPedro Giffuni     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
396347c3c7SPedro Giffuni     BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
406347c3c7SPedro Giffuni     SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
416347c3c7SPedro Giffuni     INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
426347c3c7SPedro Giffuni     WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
436347c3c7SPedro Giffuni     NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
446347c3c7SPedro Giffuni     OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
456347c3c7SPedro Giffuni     SUCH DAMAGE.
466347c3c7SPedro Giffuni 
476347c3c7SPedro Giffuni 	COPYRIGHT (C) 1994, 1995
486347c3c7SPedro Giffuni 	AIIM International
496347c3c7SPedro Giffuni 	All Right Reserved
506347c3c7SPedro Giffuni */
516347c3c7SPedro Giffuni 
526347c3c7SPedro Giffuni #ifndef ODMA_H
536347c3c7SPedro Giffuni #define ODMA_H
546347c3c7SPedro Giffuni 
556347c3c7SPedro Giffuni /* Type definitions */
566347c3c7SPedro Giffuni typedef LPVOID ODMHANDLE;
576347c3c7SPedro Giffuni typedef LPSTR (*ODMSAVEASCALLBACK)(DWORD dwEnvData, LPSTR lpszFormat, LPVOID pInstanceData);
586347c3c7SPedro Giffuni typedef int ODMSTATUS;
596347c3c7SPedro Giffuni 
606347c3c7SPedro Giffuni /* Constants */
616347c3c7SPedro Giffuni #define ODM_API_VERSION			200		/* Version of the API */
626347c3c7SPedro Giffuni 
636347c3c7SPedro Giffuni #ifdef WIN32
646347c3c7SPedro Giffuni 	#define ODM_DOCID_MAX		255		/* Win32 */
656347c3c7SPedro Giffuni 
666347c3c7SPedro Giffuni #elif defined( _WINDOWS_ ) || defined( _MSDOS )
676347c3c7SPedro Giffuni 	#define ODM_DOCID_MAX		80		/* Windows 3.x */
686347c3c7SPedro Giffuni 
696347c3c7SPedro Giffuni #else
706347c3c7SPedro Giffuni 	#define ODM_DOCID_MAX		255		/* Other platforms */
716347c3c7SPedro Giffuni #endif
726347c3c7SPedro Giffuni 
736347c3c7SPedro Giffuni #define ODM_DMSID_MAX			9		/* Max length of a DMS ID including the
746347c3c7SPedro Giffuni 										/* terminating NULL character.  */
756347c3c7SPedro Giffuni 
766347c3c7SPedro Giffuni #define ODM_APPID_MAX			16		/* Max length of a application ID including
776347c3c7SPedro Giffuni 										/* the terminating NULL character.  */
786347c3c7SPedro Giffuni 
796347c3c7SPedro Giffuni // ODMA 2.0
806347c3c7SPedro Giffuni #define ODM_QUERYID_MAX			255		// Max length of a query ID including
816347c3c7SPedro Giffuni 													// the terminating NULL character.
826347c3c7SPedro Giffuni 
836347c3c7SPedro Giffuni #define ODM_FORMAT_MAX			81 // Max length of a format including
846347c3c7SPedro Giffuni 													// the terminating NULL character.
856347c3c7SPedro Giffuni 
866347c3c7SPedro Giffuni // Maximum length of a filename returned by ODMA including the terminating
876347c3c7SPedro Giffuni //	NULL character.  Platform dependent.
886347c3c7SPedro Giffuni 
896347c3c7SPedro Giffuni #ifdef WIN32
906347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	255		/* Win32 */
916347c3c7SPedro Giffuni 
926347c3c7SPedro Giffuni #elif defined( _WINDOWS_ ) || defined( _MSDOS )
936347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	128		/* Windows 3.x */
946347c3c7SPedro Giffuni 
956347c3c7SPedro Giffuni #elif defined( unix ) || defined( _UNIX )
966347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	1024	/* Unix */
976347c3c7SPedro Giffuni 
986347c3c7SPedro Giffuni #else
996347c3c7SPedro Giffuni 	#define ODM_FILENAME_MAX	255		/* Other platforms */
1006347c3c7SPedro Giffuni #endif
1016347c3c7SPedro Giffuni 
1026347c3c7SPedro Giffuni 
1036347c3c7SPedro Giffuni /* Common format type names */
1046347c3c7SPedro Giffuni #define ODM_FORMAT_TEXT	"Text"
1056347c3c7SPedro Giffuni #define ODM_FORMAT_RTF	"Rich text format"
1066347c3c7SPedro Giffuni #define ODM_FORMAT_DCA	"DCA RFT"		/* IBM DCA Rich Format Text */
1076347c3c7SPedro Giffuni #define ODM_FORMAT_TIFF	"Tiff"
1086347c3c7SPedro Giffuni #define ODM_FORMAT_GIF	"Gif"				/* Compuserve Graphics Interchange Format */
1096347c3c7SPedro Giffuni #define ODM_FORMAT_BMP	"Windows bitmap"
1106347c3c7SPedro Giffuni #define ODM_FORMAT_PCX	"PCX"
1116347c3c7SPedro Giffuni #define ODM_FORMAT_CGM	"CGM"				/* Computer Graphics Metafile */
1126347c3c7SPedro Giffuni #define ODM_FORMAT_EXE	"Executable file"
1136347c3c7SPedro Giffuni #define ODM_FORMAT_PCL	"PCL"				/* HP Printer Control Language */
1146347c3c7SPedro Giffuni #define ODM_FORMAT_PS	"PostScript"
1156347c3c7SPedro Giffuni 
1166347c3c7SPedro Giffuni 
1176347c3c7SPedro Giffuni /* Error returns */
1186347c3c7SPedro Giffuni #define ODM_SUCCESS			0		// Success!
1196347c3c7SPedro Giffuni #define ODM_E_FAIL			1		/* Unspecified failure */
1206347c3c7SPedro Giffuni #define ODM_E_CANCEL		2		/* Action was cancelled at user's request */
1216347c3c7SPedro Giffuni #define ODM_E_NODMS			3		/* DMS not registered */
122*30acf5e8Spfg #define ODM_E_CANTINIT		4		/* DMS failed to initialize */
1236347c3c7SPedro Giffuni #define ODM_E_VERSION		5		/* DMS doesn't support the requested
1246347c3c7SPedro Giffuni 									           version of ODMA */
1256347c3c7SPedro Giffuni #define ODM_E_APPSELECT		6        /* User has indicated that he wants to use
1266347c3c7SPedro Giffuni                                        the application's file selection
1276347c3c7SPedro Giffuni                                        capabilities rather than those of the
1286347c3c7SPedro Giffuni                                        DMS. */
1296347c3c7SPedro Giffuni #define ODM_E_USERINT		7        /* Requested action cannot be performed
1306347c3c7SPedro Giffuni                                        without user interaction, but silent
1316347c3c7SPedro Giffuni                                        mode was specified. */
1326347c3c7SPedro Giffuni #define ODM_E_HANDLE		8        /* The DMHANDLE argument was invalid. */
1336347c3c7SPedro Giffuni #define ODM_E_ACCESS		9        /* User does not have requested access
1346347c3c7SPedro Giffuni                                        rights to specified document. */
1356347c3c7SPedro Giffuni #define ODM_E_INUSE			10        /* Document is currently in use and cannot
1366347c3c7SPedro Giffuni                                        be accessed in specified mode. */
1376347c3c7SPedro Giffuni #define ODM_E_DOCID			11        /* Invalid document ID */
1386347c3c7SPedro Giffuni #define ODM_E_OPENMODE		12        /* The specified action is incompatible
1396347c3c7SPedro Giffuni                                        with the mode in which the document was
1406347c3c7SPedro Giffuni                                        opened. */
1416347c3c7SPedro Giffuni #define ODM_E_NOOPEN		13        /* The specified document is not open. */
1426347c3c7SPedro Giffuni #define ODM_E_ITEM			14        /* Invalid item specifier. */
1436347c3c7SPedro Giffuni #define ODM_E_OTHERAPP		15        /* Selected document was for another app. */
1446347c3c7SPedro Giffuni #define ODM_E_NOMOREDATA	16		/* No more data is available */
1456347c3c7SPedro Giffuni #define ODM_E_PARTIALSUCCESS 17		/* */
1466347c3c7SPedro Giffuni // Additional Error code from ODMA 2.0
1476347c3c7SPedro Giffuni #define ODM_E_REQARG		18		/* */
1486347c3c7SPedro Giffuni #define ODM_E_NOSUPPORT		19		/* */
1496347c3c7SPedro Giffuni #define ODM_E_TRUNCATED		20		/* */
1506347c3c7SPedro Giffuni #define ODM_E_INVARG  21
1516347c3c7SPedro Giffuni #define ODM_E_OFFLINE  22		/* */
1526347c3c7SPedro Giffuni 
1536347c3c7SPedro Giffuni 
1546347c3c7SPedro Giffuni // ODMOpenDoc modes
1556347c3c7SPedro Giffuni #define ODM_MODIFYMODE		1        /* Open document in a modifiable mode. */
1566347c3c7SPedro Giffuni #define ODM_VIEWMODE		2        /* Open document in non-modifiable mode. */
1576347c3c7SPedro Giffuni // ODMA 2.0
1586347c3c7SPedro Giffuni #define ODM_REFCOPY			3
1596347c3c7SPedro Giffuni 
1606347c3c7SPedro Giffuni 
1616347c3c7SPedro Giffuni // Actions for ODMActivate
1626347c3c7SPedro Giffuni #define ODM_NONE			0        /* No specific action is requested.  */
1636347c3c7SPedro Giffuni #define ODM_DELETE			1        /* Delete the specified document.  */
1646347c3c7SPedro Giffuni #define ODM_SHOWATTRIBUTES	2        /* Display the specified document's profile
1656347c3c7SPedro Giffuni                                        or attributes. */
1666347c3c7SPedro Giffuni #define ODM_EDITATTRIBUTES	3        /* Edit the specified document's profile or
1676347c3c7SPedro Giffuni                                        attributes. */
1686347c3c7SPedro Giffuni #define ODM_VIEWDOC			4        /* Display the specified document in a
1696347c3c7SPedro Giffuni                                        viewer window. */
1706347c3c7SPedro Giffuni #define ODM_OPENDOC			5        /* Open the specified document in its
1716347c3c7SPedro Giffuni                                        native application.  */
1726347c3c7SPedro Giffuni // ODMA 2.0
1736347c3c7SPedro Giffuni #define ODM_NEWDOC			6
1746347c3c7SPedro Giffuni #define ODM_CHECKOUT		7
1756347c3c7SPedro Giffuni #define ODM_CANCELCHECKOUT	8
1766347c3c7SPedro Giffuni #define ODM_CHECKIN			9
1776347c3c7SPedro Giffuni #define ODM_SHOWHISTORY		10
1786347c3c7SPedro Giffuni 
1796347c3c7SPedro Giffuni 
1806347c3c7SPedro Giffuni // Item selectors for ODMGetDocInfo and ODMSetDocInfo
1816347c3c7SPedro Giffuni #define ODM_AUTHOR			1        /* Author of the document. */
1826347c3c7SPedro Giffuni #define ODM_NAME			2        /* Descriptive name of the document.  */
1836347c3c7SPedro Giffuni #define ODM_TYPE			3        /* Type of the document.  */
1846347c3c7SPedro Giffuni #define ODM_TITLETEXT		4        /* Suggested text to display in the
1856347c3c7SPedro Giffuni                                        document window's title bar. */
1866347c3c7SPedro Giffuni #define ODM_DMS_DEFINED		5        /* DMS defined data. */
1876347c3c7SPedro Giffuni #define ODM_CONTENTFORMAT	6        /* String describing document's format */
1886347c3c7SPedro Giffuni // ODMA 2.0
1896347c3c7SPedro Giffuni #define ODM_ALTERNATE_RENDERINGS	7
1906347c3c7SPedro Giffuni #define ODM_CHECKEDOUTBY	8
1916347c3c7SPedro Giffuni #define ODM_CHECKOUTCOMMENT	9
1926347c3c7SPedro Giffuni #define ODM_CHECKOUTDATE	10
1936347c3c7SPedro Giffuni #define ODM_CREATEDBY		11
1946347c3c7SPedro Giffuni #define ODM_CREATEDDATE		12
1956347c3c7SPedro Giffuni #define ODM_DOCID_LATEST	13
1966347c3c7SPedro Giffuni #define ODM_DOCID_RELEASED	14
1976347c3c7SPedro Giffuni #define ODM_DOCVERSION		15
1986347c3c7SPedro Giffuni #define ODM_DOCVERSION_LATEST	16
1996347c3c7SPedro Giffuni #define ODM_DOCVERSION_RELEASED	17
2006347c3c7SPedro Giffuni #define ODM_LOCATION		18
2016347c3c7SPedro Giffuni #define ODM_KEYWORDS		19
2026347c3c7SPedro Giffuni #define ODM_LASTCHECKINBY	20
2036347c3c7SPedro Giffuni #define ODM_LASTCHECKINDATE	21
2046347c3c7SPedro Giffuni #define ODM_MODIFYDATE		22
2056347c3c7SPedro Giffuni #define ODM_MODIFYDATE_LATEST	23
2066347c3c7SPedro Giffuni #define ODM_MODIFYDATE_RELEASED	24
2076347c3c7SPedro Giffuni #define ODM_OWNER			25
2086347c3c7SPedro Giffuni #define ODM_SUBJECT			26
2096347c3c7SPedro Giffuni #define ODM_TITLETEXT_RO	27
2106347c3c7SPedro Giffuni #define ODM_URL				28
2116347c3c7SPedro Giffuni 
2126347c3c7SPedro Giffuni 
2136347c3c7SPedro Giffuni // Item selectors for ODMQueryCapability ODMA 2.0
2146347c3c7SPedro Giffuni #define ODM_QC_ACTIVATE				1
2156347c3c7SPedro Giffuni #define ODM_QC_CLOSEDOC				2
2166347c3c7SPedro Giffuni #define ODM_QC_CLOSEDOCEX			3
2176347c3c7SPedro Giffuni #define ODM_QC_GETALTERNATECONTENT	4
2186347c3c7SPedro Giffuni #define ODM_QC_GETDMSINFO			5
2196347c3c7SPedro Giffuni #define ODM_QC_GETDOCINFO			6
2206347c3c7SPedro Giffuni #define ODM_QC_GETDOCRELATION		7
2216347c3c7SPedro Giffuni #define ODM_QC_GETLEADMONIKER		8
2226347c3c7SPedro Giffuni #define ODM_QC_NEWDOC				9
2236347c3c7SPedro Giffuni #define ODM_QC_OPENDOC				10
2246347c3c7SPedro Giffuni #define ODM_QC_QUERYCLOSE			11
2256347c3c7SPedro Giffuni #define ODM_QC_QUERYEXECUTE			12
2266347c3c7SPedro Giffuni #define ODM_QC_QUERYGETRESULTS		13
2276347c3c7SPedro Giffuni #define ODM_QC_SAVEAS				14
2286347c3c7SPedro Giffuni #define ODM_QC_SAVEASEX				15
2296347c3c7SPedro Giffuni #define ODM_QC_SAVEDOC				16
2306347c3c7SPedro Giffuni #define ODM_QC_SAVEDOCEX			17
2316347c3c7SPedro Giffuni #define ODM_QC_SELECTDOC			18
2326347c3c7SPedro Giffuni #define ODM_QC_SELECTDOCEX			19
2336347c3c7SPedro Giffuni #define ODM_QC_SETALTERNATECONTENT	20
2346347c3c7SPedro Giffuni #define ODM_QC_SETDOCEVENT			21
2356347c3c7SPedro Giffuni #define ODM_QC_SETDOCRELATION		22
2366347c3c7SPedro Giffuni #define ODM_QC_SETDOCINFO			23
2376347c3c7SPedro Giffuni 
2386347c3c7SPedro Giffuni 
2396347c3c7SPedro Giffuni // Misc. modes, flags
2406347c3c7SPedro Giffuni #define ODM_SILENT			16        /* Don't interact with the user while
2416347c3c7SPedro Giffuni                                        fulfilling this request. */
2426347c3c7SPedro Giffuni //ODMA 2.0
2436347c3c7SPedro Giffuni #define ODM_VERSION_SAME	1
2446347c3c7SPedro Giffuni #define ODM_VERSION_MAJOR	2
2456347c3c7SPedro Giffuni #define ODM_VERSION_MINOR	4
2466347c3c7SPedro Giffuni #define ODM_VERSION_CHANGED	8
2476347c3c7SPedro Giffuni #define ODM_ALT_DELETE		32
2486347c3c7SPedro Giffuni 
2496347c3c7SPedro Giffuni //ODMA 2.0 DMS Info Flags
2506347c3c7SPedro Giffuni #define ODM_EXT_QUERY		1
2516347c3c7SPedro Giffuni #define ODM_EXT_WORKFLOW 	2
2526347c3c7SPedro Giffuni 
2536347c3c7SPedro Giffuni // Flags for Query Interface
2546347c3c7SPedro Giffuni #define ODM_ALL				1		// All DMS's should be searched
2556347c3c7SPedro Giffuni #define ODM_SPECIFIC		2		// Only specific DMS's should be searched
2566347c3c7SPedro Giffuni 
2576347c3c7SPedro Giffuni 
2586347c3c7SPedro Giffuni // Function prototypes
2596347c3c7SPedro Giffuni #ifdef __cplusplus
2606347c3c7SPedro Giffuni extern "C" {
2616347c3c7SPedro Giffuni #endif
2626347c3c7SPedro Giffuni 
2636347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMRegisterApp(ODMHANDLE FAR *pOdmHandle, WORD version,
2646347c3c7SPedro Giffuni 	LPSTR lpszAppId, DWORD dwEnvData, LPVOID pReserved);
2656347c3c7SPedro Giffuni 
2666347c3c7SPedro Giffuni void WINAPI ODMUnRegisterApp(ODMHANDLE odmHandle);
2676347c3c7SPedro Giffuni 
2686347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSelectDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
2696347c3c7SPedro Giffuni 	LPDWORD pdwFlags);
2706347c3c7SPedro Giffuni 
2716347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMOpenDoc(ODMHANDLE odmHandle, DWORD flags,
2726347c3c7SPedro Giffuni 	LPSTR lpszDocId, LPSTR lpszDocLocation);
2736347c3c7SPedro Giffuni 
2746347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
2756347c3c7SPedro Giffuni 	LPSTR lpszNewDocId);
2766347c3c7SPedro Giffuni 
2776347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMCloseDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
2786347c3c7SPedro Giffuni 	DWORD activeTime, DWORD pagesPrinted, LPVOID sessionData, WORD dataLen);
2796347c3c7SPedro Giffuni 
2806347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMNewDoc(ODMHANDLE odmHandle, LPSTR lpszDocId,
2816347c3c7SPedro Giffuni 	DWORD dwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation);
2826347c3c7SPedro Giffuni 
2836347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveAs(ODMHANDLE odmHandle, LPSTR lpszDocId,
2846347c3c7SPedro Giffuni 	LPSTR lpszNewDocId, LPSTR lpszFormat, ODMSAVEASCALLBACK pcbCallBack,
2856347c3c7SPedro Giffuni 	LPVOID pInstanceData);
2866347c3c7SPedro Giffuni 
2876347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMActivate(ODMHANDLE odmHandle, WORD action,
2886347c3c7SPedro Giffuni 	LPSTR lpszDocId);
2896347c3c7SPedro Giffuni 
2906347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDocInfo(ODMHANDLE odmHandle, LPSTR lpszDocId,
2916347c3c7SPedro Giffuni 	WORD item, LPSTR lpszData, WORD dataLen);
2926347c3c7SPedro Giffuni 
2936347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDocInfo(ODMHANDLE odmHandle, LPSTR lpszDocId,
2946347c3c7SPedro Giffuni 	WORD item, LPSTR lpszData);
2956347c3c7SPedro Giffuni 
2966347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDMSInfo(ODMHANDLE odmHandle, LPSTR lpszDmsId,
2976347c3c7SPedro Giffuni 	LPWORD pwVerNo, LPDWORD pdwExtensions);
2986347c3c7SPedro Giffuni 
2996347c3c7SPedro Giffuni /* Query Enhancements */
3006347c3c7SPedro Giffuni WORD WINAPI ODMGetDMSCount();
3016347c3c7SPedro Giffuni 
3026347c3c7SPedro Giffuni WORD WINAPI ODMGetDMSList( LPSTR buffer, WORD buffer_size );
3036347c3c7SPedro Giffuni 
3046347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDMS( LPCSTR lpszAppId, LPSTR lpszDMSId );
3056347c3c7SPedro Giffuni 
3066347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDMS( LPCSTR lpszAppId, LPCSTR lpszDMSId );
3076347c3c7SPedro Giffuni 
3086347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryExecute(ODMHANDLE odmHandle, LPCSTR lpszQuery,
3096347c3c7SPedro Giffuni 								 DWORD flags, LPCSTR lpszDMSList, LPSTR queryId );
3106347c3c7SPedro Giffuni 
3116347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryGetResults(ODMHANDLE odmHandle, LPCSTR queryId,
3126347c3c7SPedro Giffuni 									LPSTR lpszDocId, LPSTR lpszDocName, WORD docNameLen,
3136347c3c7SPedro Giffuni 									WORD *docCount );
3146347c3c7SPedro Giffuni 
3156347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryClose(ODMHANDLE odmHandle, LPCSTR queryId );
3166347c3c7SPedro Giffuni 
3176347c3c7SPedro Giffuni /* ODMA 2.0 Enhancements */
3186347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMCloseDocEx(ODMHANDLE odmHandle, LPSTR lpszDocId,
3196347c3c7SPedro Giffuni 							LPDWORD pdwFlags, DWORD activeTime, DWORD pagesPrinted,
3206347c3c7SPedro Giffuni 							LPVOID sessionData, WORD dataLen);
3216347c3c7SPedro Giffuni 
3226347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveAsEx(ODMHANDLE odmHandle, LPSTR lpszDocId,
3236347c3c7SPedro Giffuni 							LPSTR lpszNewDocId, LPSTR lpszFormat, ODMSAVEASCALLBACK pcbCallBack,
3246347c3c7SPedro Giffuni 							LPVOID pInstanceData, LPDWORD pdwFlags);
3256347c3c7SPedro Giffuni 
3266347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSaveDocEx(ODMHANDLE odmHandle, LPSTR lpszDocId,
3276347c3c7SPedro Giffuni 							LPSTR lpszNewDocId,	LPDWORD pdwFlags);
3286347c3c7SPedro Giffuni 
3296347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSelectDocEx(ODMHANDLE odmHandle, LPSTR lpszDocIds,
3306347c3c7SPedro Giffuni 							LPWORD pwDocIdsLen, LPWORD pwDocCount, LPDWORD pdwFlags,
3316347c3c7SPedro Giffuni 							LPSTR lpszFormatFilter);
3326347c3c7SPedro Giffuni 
3336347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMQueryCapability(ODMHANDLE odmHandle, LPCSTR lpszDmsId,
3346347c3c7SPedro Giffuni 							DWORD function, DWORD item, DWORD flags);
3356347c3c7SPedro Giffuni 
3366347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDocEvent(ODMHANDLE odmHandle, LPSTR lpszDocId,
3376347c3c7SPedro Giffuni 							DWORD flags, DWORD event, LPVOID lpData, DWORD dwDataLen,
3386347c3c7SPedro Giffuni 							LPSTR lpszComment);
3396347c3c7SPedro Giffuni 
3406347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetAlternateContent(ODMHANDLE odmHandle, LPSTR lpszDocId,
3416347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation);
3426347c3c7SPedro Giffuni 
3436347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetAlternateContent(ODMHANDLE odmHandle, LPSTR lpszDocId,
3446347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation);
3456347c3c7SPedro Giffuni 
3466347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMGetDocRelation(ODMHANDLE odmHandle, LPSTR lpszDocId,
3476347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszLinkedId, LPSTR lpszFormat,
3486347c3c7SPedro Giffuni 							LPSTR lpszPreviousId);
3496347c3c7SPedro Giffuni 
3506347c3c7SPedro Giffuni ODMSTATUS WINAPI ODMSetDocRelation(ODMHANDLE odmHandle, LPSTR lpszDocId,
3516347c3c7SPedro Giffuni 							LPDWORD pdwFlags, LPSTR lpszLinkedId, LPSTR lpszFormat,
3526347c3c7SPedro Giffuni 							LPSTR lpszPreviousId);
3536347c3c7SPedro Giffuni 
3546347c3c7SPedro Giffuni #ifdef __cplusplus
3556347c3c7SPedro Giffuni }
3566347c3c7SPedro Giffuni #endif
3576347c3c7SPedro Giffuni 
3586347c3c7SPedro Giffuni #endif
359