//+-------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1992 - 1992. // // File: rpubdf.hxx // // Contents: Root public docfile header // // Classes: CRootPubDocFile // // History: 26-Aug-92 DrewB Created // 05-Sep-95 MikeHill Added Commit and // _timeModifyAtCommit. // //--------------------------------------------------------------- #ifndef __RPUBDF_HXX__ #define __RPUBDF_HXX__ #include //+-------------------------------------------------------------- // // Class: CRootPubDocFile (rpdf) // // Purpose: Root form of the public docfile // // Interface: See below // // History: 26-Aug-92 DrewB Created // //--------------------------------------------------------------- class CRootPubDocFile : public CPubDocFile { public: CRootPubDocFile(IMalloc * const pMalloc); SCODE InitRoot(ILockBytes *plstBase, DWORD dwStartFlags, DFLAGS const df, SNBW snbExclude, CDFBasis **ppdfb, ULONG *pulOpenLock, CGlobalContext *pgc); void vdtor(void); SCODE Stat(STATSTGW *pstatstg, DWORD grfStatFlag); void ReleaseLocks(ILockBytes *plkb); SCODE SwitchToFile(OLECHAR const *ptcsFile, ILockBytes *plkb, ULONG *pulOpenLock); void CommitTimestamps(DWORD const dwFlags); private: SCODE InitInd(ILockBytes *plstBase, SNBW snbExclude, DWORD const dwStartFlags, DFLAGS const df); SCODE InitNotInd(ILockBytes *plstBase, SNBW snbExclude, DWORD const dwStartFlags, DFLAGS const df); ULONG _ulPriLock; IMalloc * const _pMalloc; TIME_T _timeModifyAtCommit; // Last-Modify time on Docfile after commit. }; #endif // #ifndef __RPUBDF_HXX__