Source code
Revision control
Copy as Markdown
Other Tools
// InOutTempBuffer.h↩
↩
#ifndef __IN_OUT_TEMP_BUFFER_H↩
#define __IN_OUT_TEMP_BUFFER_H↩
↩
#include "../../Common/MyCom.h"↩
#include "../../Windows/FileDir.h"↩
↩
#include "../IStream.h"↩
↩
class CInOutTempBuffer↩
{↩
NWindows::NFile::NDir::CTempFile _tempFile;↩
NWindows::NFile::NIO::COutFile _outFile;↩
Byte *_buf;↩
size_t _bufPos;↩
UInt64 _size;↩
UInt32 _crc;↩
bool _tempFileCreated;↩
↩
bool WriteToFile(const void *data, UInt32 size);↩
public:↩
CInOutTempBuffer();↩
~CInOutTempBuffer();↩
void Create();↩
↩
void InitWriting();↩
bool Write(const void *data, UInt32 size);↩
↩
HRESULT WriteToStream(ISequentialOutStream *stream);↩
UInt64 GetDataSize() const { return _size; }↩
};↩
↩
/*↩
class CSequentialOutTempBufferImp:↩
public ISequentialOutStream,↩
public CMyUnknownImp↩
{↩
CInOutTempBuffer *_buf;↩
public:↩
void Init(CInOutTempBuffer *buffer) { _buf = buffer; }↩
MY_UNKNOWN_IMP↩
↩
STDMETHOD(Write)(const void *data, UInt32 size, UInt32 *processedSize);↩
};↩
*/↩
↩
#endif↩