5 #include "LockedStream.h"
\r
7 HRESULT CLockedInStream::Read(UInt64 startPos, void *data, UInt32 size,
\r
8 UInt32 *processedSize)
\r
10 NWindows::NSynchronization::CCriticalSectionLock lock(_criticalSection);
\r
11 RINOK(_stream->Seek(startPos, STREAM_SEEK_SET, NULL));
\r
12 return _stream->Read(data, size, processedSize);
\r
15 STDMETHODIMP CLockedSequentialInStreamImp::Read(void *data, UInt32 size, UInt32 *processedSize)
\r
17 UInt32 realProcessedSize = 0;
\r
18 HRESULT result = _lockedInStream->Read(_pos, data, size, &realProcessedSize);
\r
19 _pos += realProcessedSize;
\r
20 if (processedSize != NULL)
\r
21 *processedSize = realProcessedSize;
\r