123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- #ifndef __PSTREAM__
- #define __PSTREAM__
- class CPersistStream : public IPersistStream {
- private:
-
- protected:
- DWORD mPS_dwFileVersion;
- BOOL mPS_fDirty;
- public:
-
- STDMETHODIMP IsDirty()
- {return (mPS_fDirty ? S_OK : S_FALSE);}
- STDMETHODIMP Load(LPSTREAM pStm);
- STDMETHODIMP Save(LPSTREAM pStm, BOOL fClearDirty);
- STDMETHODIMP GetSizeMax(__out ULARGE_INTEGER * pcbSize)
-
- { pcbSize->QuadPart = 12*sizeof(WCHAR)+SizeMax(); return NOERROR; }
-
- CPersistStream(IUnknown *punk, __inout HRESULT *phr);
- ~CPersistStream();
- HRESULT SetDirty(BOOL fDirty)
- { mPS_fDirty = fDirty; return NOERROR;}
-
-
-
-
- STDMETHODIMP GetClassID(__out CLSID *pClsid) PURE;
-
-
- virtual DWORD GetSoftwareVersion(void) { return 0; }
-
-
-
-
- virtual int SizeMax() {return 0;}
- virtual HRESULT WriteToStream(IStream *pStream);
- virtual HRESULT ReadFromStream(IStream *pStream);
-
- private:
- };
- STDAPI WriteInt(IStream *pIStream, int n);
- STDAPI_(int) ReadInt(IStream *pIStream, __out HRESULT &hr);
- #endif
|