ODMA 2.0
|
Copyright © 1994, 1995, 1998, 2000 AIIM International
Edition 2.0.0-1 Last updated 2001-09-04-12:28 -0700 (pdt)
For the latest information on ODMA and the ODMA Specifications, consult the ODMA section of the AIIM DMware Development Site. Current mirror sites for AIIM DMware Development information are found through the AIIM DMware Document Management Interoperability Exchange site.
This information is part of ODMA 2.0 Library Files edition 2.0.0-1. For later editions and current status, consult the ODMA 2.0 Library Files description page.
/* odmacom.h - Component Object Model related definitions, macros, etc. for ODMA version 2.0. COPYRIGHT (C) 1994, 1995 AIIM International All Rights Reserved */ #ifndef ODMACOM_H #define ODMACOM_H #ifndef ODMA_H #include "odma.h" #endif #ifdef WIN32 #ifndef _OBJBASE_H_ #include <objbase.h> #endif /*!_OBJBASE_H_*/ #else #ifndef _COMPOBJ_H_ #include <memory.h> #include <compobj.h> #endif /*!_COMPOBJ_H_*/ #endif /*WIN32*/ #ifndef _OLE2_H_ #include <ole2.h> #include <moniker.h> #endif #ifdef WIN32 #define _export #endif // Define the IODMDocMan interface DEFINE_OLEGUID(IID_IODMDocMan, 0x22FF0, 0, 0); // Define the IODMQuery interface DEFINE_OLEGUID(IID_IODMQuery, 0x22FF1, 0, 0); // Define the IODMDocMan2 interface DEFINE_OLEGUID(IID_IODMDocMan2, 0x22FF2, 0, 0); #undef INTERFACE #define INTERFACE IODMDocMan DECLARE_INTERFACE_(IODMDocMan, IUnknown) { // *** IUnknown methods *** STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR *ppvObj) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; // *** IODMADocMan methods *** STDMETHOD_(ODMSTATUS, SelectDoc) (THIS_ LPSTR lpszDocId, LPDWORD pdwFlags) PURE; STDMETHOD_(ODMSTATUS, OpenDoc) (THIS_ DWORD flags, LPSTR lpszDocId, LPSTR lpszDocLocation) PURE; STDMETHOD_(ODMSTATUS, SaveDoc) (THIS_ LPSTR lpszDocId, LPSTR lpszNewDocId) PURE; STDMETHOD_(ODMSTATUS, CloseDoc) (THIS_ LPSTR lpszDocId, DWORD activeTime, DWORD pagesPrinted, LPVOID sessionData, WORD dataLen) PURE; STDMETHOD_(ODMSTATUS, NewDoc) (THIS_ LPSTR lpszDocId, DWORD dwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation) PURE; STDMETHOD_(ODMSTATUS, SaveAs) (THIS_ LPSTR lpszDocId, LPSTR lpszNewDocId, LPSTR lpszFormat, ODMSAVEASCALLBACK pcbCallBack, LPVOID pInstanceData) PURE; STDMETHOD_(ODMSTATUS, Activate) (THIS_ WORD action, LPSTR lpszDocId) PURE; STDMETHOD_(ODMSTATUS, GetDocInfo) (THIS_ LPSTR lpszDocId, WORD item, LPSTR lpszData, WORD dataLen ) PURE; STDMETHOD_(ODMSTATUS, SetDocInfo) (THIS_ LPSTR lpszDocId, WORD item, LPSTR lpszData ) PURE; STDMETHOD_(ODMSTATUS, GetDMSInfo) (THIS_ LPSTR lpszDmsId, LPWORD pwVerNo, LPDWORD pdwExtensions) PURE; STDMETHOD_(ODMSTATUS, GetLeadMoniker) (THIS_ LPSTR lpszDocId, LPMONIKER FAR *ppMoniker) PURE; }; typedef IODMDocMan FAR * LPODMDOCMAN; #undef INTERFACE #define INTERFACE IODMDocMan2 DECLARE_INTERFACE_(IODMDocMan2, IUnknown) { // *** IUnknown methods *** STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR *ppvObj) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; // *** IODMDocMan2 methods *** STDMETHOD_( ODMSTATUS, CloseDocEx ) (THIS_ LPSTR lpszDocId, LPDWORD pdwFlags, DWORD activeTime, DWORD pagesPrinted, LPVOID sessionData, WORD dataLen) PURE; STDMETHOD_( ODMSTATUS, SaveAsEx ) (THIS_ LPSTR lpszDocId, LPSTR lpszNewDocId, LPSTR lpszFormat, ODMSAVEASCALLBACK pcbCallBack, LPVOID pInstanceData, LPDWORD pdwFlags) PURE; STDMETHOD_( ODMSTATUS, SaveDocEx ) (THIS_ LPSTR lpszDocId, LPSTR lpszNewDocId, LPDWORD pdwFlags) PURE; STDMETHOD_( ODMSTATUS, SelectDocEx ) (THIS_ LPSTR lpszDocIds, LPWORD pwDocIdsLen, LPWORD pwDocCount, LPDWORD pdwFlags, LPSTR lpszFormatFilter) PURE; STDMETHOD_( ODMSTATUS, QueryCapability ) (THIS_ LPCSTR lpszDmsId, DWORD function, DWORD item, DWORD flags ) PURE; STDMETHOD_( ODMSTATUS, SetDocEvent ) (THIS_ LPSTR lpszDocId, DWORD flags, DWORD event, LPVOID lpData, DWORD dwDataLen, LPSTR lpszComment) PURE; STDMETHOD_( ODMSTATUS, GetAlternateContent ) (THIS_ LPSTR lpszDocId, LPDWORD pdwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation) PURE; STDMETHOD_( ODMSTATUS, SetAlternateContent ) (THIS_ LPSTR lpszDocId, LPDWORD pdwFlags, LPSTR lpszFormat, LPSTR lpszDocLocation) PURE; STDMETHOD_( ODMSTATUS, GetDocRelation ) (THIS_ LPSTR lpszDocId, LPDWORD pdwFlags, LPSTR lpszLinkedId, LPSTR lpszFormat, LPSTR lpszPreviousId ) PURE; STDMETHOD_( ODMSTATUS, SetDocRelation ) (THIS_ LPSTR lpszDocId, LPDWORD pdwFlags, LPSTR lpszLinkedId, LPSTR lpszFormat, LPSTR lpszPreviousId ) PURE; }; typedef IODMDocMan2 FAR * LPODMDOCMAN2; #undef INTERFACE #define INTERFACE IODMQuery DECLARE_INTERFACE_(IODMQuery, IUnknown) { // *** IUnknown methods *** STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR *ppvObj) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; // *** IODMQuery methods *** STDMETHOD_(ODMSTATUS, QueryExecute) (THIS_ LPCSTR lpszQuery, LPSTR dmsQueryId ) PURE; STDMETHOD_(ODMSTATUS, QueryGetResults) (THIS_ LPCSTR dmsQueryId, LPSTR lpszDocId, LPSTR lpszDocName, WORD docNameLen, WORD *docCount ) PURE; STDMETHOD_(ODMSTATUS, QueryClose)(THIS_ LPCSTR dmsQueryId ) PURE; }; typedef IODMQuery FAR * LPODMQUERY; #ifdef __cplusplus extern "C" { #endif // ODMA prototypes HRESULT WINAPI ODMQueryInterface(ODMHANDLE odmHandle, LPSTR lpszDocId, REFIID riid, LPVOID FAR *ppvObj); ODMSTATUS WINAPI ODMGetLeadMoniker(ODMHANDLE odmHandle, LPSTR lpszDocId, LPMONIKER FAR *ppMoniker); // Prototype for ODMA provider entry point function HRESULT WINAPI _export ODMGetODMInterface(REFIID riid, LPVOID FAR *ppvObj, LPUNKNOWN pUnkOuter, LPVOID pReserved, LPSTR lpszAppId, DWORD dwEnvData); #ifdef __cplusplus } #endif #endif
odmacom.h
version 2.0.0-1 in the form distributed in ODMA 2.0 Library edition 2.0.0-1,
odma200L-1.zip
. The only alterations are removal of tab ('\t'
) characters
and use of spacing to achieve consistent
appearance in all browsers and editors.HTML version derived 2000-07-11-15:36 -0700 (pdt)
$$Date: 01-09-04 12:35 $
$$Revision: 13 $