#ifndef _AWDLIB_H #define _AWDLIB_H /*++ awdlib.h header file for the AWD library. Copyright (c) 1997 Microsoft Corporation Author: Brian Dewey (t-briand) 1997-7-2 --*/ // needed includes for the AWD file format #include // AWD is an OLE compound document. // ------------------------------------------------------------ // Defines #define MAX_AWD_NAME (32) // ------------------------------------------------------------ // Data types // This structure holds the primary storages used in an AWD file. typedef struct awd_file { IStorage *psAWDFile; // The root storage of the file. IStorage *psDocuments; // Storage holding the document data. IStorage *psPersistInfo; // Persistent information storage. IStorage *psDocInfo; // Document information stream. IStorage *psPageInfo; // Page information storage. IStorage *psGlobalInfo; // Global information storage. } AWD_FILE; // An AWD_DOC_PROCESSOR is a function that does something with an document // contained in an AWD file. Used in the EnumDocuments() function. The // function should return TRUE on success and FALSE on an error that requires // the enumeration process to abort. typedef BOOL (*AWD_DOC_PROCESSOR)(AWD_FILE *psStorages, const WCHAR *pwcsDocName); #include "oleutils.h" // Use the elliott fax viewer definitions. // ------------------------------------------------------------ // Prototypes BOOL ConvertAWDToTiff(const WCHAR *pwcsAwdFile, WCHAR *pwcsTiffFile); BOOL OpenAWDFile(const WCHAR *pwcsFilename, AWD_FILE *psStorages); BOOL CloseAWDFile(AWD_FILE *psStorages); IStorage *OpenAWDSubStorage(IStorage *psParent, const WCHAR *pwcsStorageName); IStream *OpenAWDStream(IStorage *psStorage, const WCHAR *pwcsStreamName); BOOL AWDViewed(AWD_FILE *psStorages); void DumpAWDDocuments(AWD_FILE *psStorages); BOOL EnumDocuments(AWD_FILE *psStorages, AWD_DOC_PROCESSOR pfnDocProc); BOOL DisplayDocNames(AWD_FILE *psStorages, const WCHAR *pwcsDocName); BOOL DetailedDocDump(AWD_FILE *psStorages, const WCHAR *pwcsDocName); void PrintPageInfo(PAGE_INFORMATION *psPageInfo); void DumpData(LPTSTR pszFileName, LPBYTE pbData, DWORD cbCount); #endif // _AWDLIB_H