Timeline Framework C++ Edition
|
The class implements the IStream
interface on a CwclStream object.
More...
#include <wclHelpers.h>
Public Member Functions | |
virtual HRESULT STDMETHODCALLTYPE | QueryInterface (REFIID riid, void **ppvObject) override |
Queries a COM object for a pointer to one of its interface; identifying the interface by a reference to its interface identifier (IID). If the COM object implements the interface, then it returns a pointer to that interface after calling AddRef on it. | |
virtual ULONG STDMETHODCALLTYPE | AddRef () override |
Increments the reference count for an interface pointer to a COM object. You should call this method whenever you make a copy of an interface pointer. | |
virtual ULONG STDMETHODCALLTYPE | Release () override |
Decrements the reference count for an interface on a COM object. | |
virtual HRESULT STDMETHODCALLTYPE | Read (void *pv, ULONG cb, ULONG *pcbRead) override |
The method reads a specified number of bytes from the stream object into memory, starting at the current seek pointer. | |
virtual HRESULT STDMETHODCALLTYPE | Write (const void *pv, ULONG cb, ULONG *pcbWritten) override |
The method writes a specified number of bytes into the stream object starting at the current seek pointer. | |
virtual HRESULT STDMETHODCALLTYPE | Seek (LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER *plibNewPosition) override |
The method changes the seek pointer to a new location. The new location is relative to either the beginning of the stream, the end of the stream, or the current seek pointer. | |
virtual HRESULT STDMETHODCALLTYPE | SetSize (ULARGE_INTEGER libNewSize) override |
The method changes the size of the stream object. | |
virtual HRESULT STDMETHODCALLTYPE | CopyTo (IStream *pstm, ULARGE_INTEGER cb, ULARGE_INTEGER *pcbRead, ULARGE_INTEGER *pcbWritten) override |
The method copies a specified number of bytes from the current seek pointer in the stream to the current seek pointer in another stream. | |
virtual HRESULT STDMETHODCALLTYPE | Commit (DWORD grfCommitFlags) override |
The method ensures that any changes made to a stream object open in transacted mode are reflected in the parent storage. If the stream object is open in direct mode, Commit has no effect other than flushing all memory buffers to the next-level storage object. The COM compound file implementation of streams does not support opening streams in transacted mode. | |
virtual HRESULT STDMETHODCALLTYPE | Revert () override |
The method discards all changes that have been made to a transacted stream since the last Commit call. On streams open in direct mode and streams using the COM compound file implementation of IStream::Revert, this method has no effect. | |
virtual HRESULT STDMETHODCALLTYPE | LockRegion (ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) override |
The method restricts access to a specified range of bytes in the stream. Supporting this functionality is optional since some file systems do not provide it. | |
virtual HRESULT STDMETHODCALLTYPE | UnlockRegion (ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) override |
The method removes the access restriction on a range of bytes previously restricted with LockRegion . | |
virtual HRESULT STDMETHODCALLTYPE | Stat (STATSTG *pstatstg, DWORD grfStatFlag) override |
The method retrieves the STATSTG structure for this stream. | |
virtual HRESULT STDMETHODCALLTYPE | Clone (IStream **ppstm) override |
The method creates a new stream object with its own seek pointer that references the same bytes as the original stream. | |
CwclStreamAdapter (CwclStream *const Stream, const wclStreamOwnership Ownership=soReference) | |
Creates new Stream Adapter object. | |
virtual | ~CwclStreamAdapter () |
Frees the Stream Adapter object. | |
CwclStream * | GetStream () const |
Gets the CwclStream object that is owned by the Stream Adapter. | |
wclStreamOwnership | GetStreamOwnership () const |
Gets the associated Stream ownership. | |
void | SetStreamOwnership (const wclStreamOwnership Value) |
Sets the associated Stream ownership. | |
The class implements the IStream
interface on a CwclStream object.