OLD | NEW |
| (Empty) |
1 // StreamBinder.h | |
2 | |
3 #ifndef __STREAMBINDER_H | |
4 #define __STREAMBINDER_H | |
5 | |
6 #include "../IStream.h" | |
7 #include "../../Windows/Synchronization.h" | |
8 | |
9 class CStreamBinder | |
10 { | |
11 NWindows::NSynchronization::CManualResetEvent _allBytesAreWritenEvent; | |
12 NWindows::NSynchronization::CManualResetEvent _thereAreBytesToReadEvent; | |
13 NWindows::NSynchronization::CManualResetEvent _readStreamIsClosedEvent; | |
14 UInt32 _bufferSize; | |
15 const void *_buffer; | |
16 public: | |
17 // bool ReadingWasClosed; | |
18 UInt64 ProcessedSize; | |
19 CStreamBinder() {} | |
20 HRes CreateEvents(); | |
21 | |
22 void CreateStreams(ISequentialInStream **inStream, | |
23 ISequentialOutStream **outStream); | |
24 HRESULT Read(void *data, UInt32 size, UInt32 *processedSize); | |
25 void CloseRead(); | |
26 | |
27 HRESULT Write(const void *data, UInt32 size, UInt32 *processedSize); | |
28 void CloseWrite(); | |
29 void ReInit(); | |
30 }; | |
31 | |
32 #endif | |
OLD | NEW |