1baa3858d3f5d128a5c8466b700098109edcad5f2repo sync// DummyOutStream.h
2baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
3cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky#ifndef __DUMMY_OUT_STREAM_H
4cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky#define __DUMMY_OUT_STREAM_H
5cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky
6cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky#include "../../../Common/MyCom.h"
7baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
8baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#include "../../IStream.h"
9baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
10baa3858d3f5d128a5c8466b700098109edcad5f2repo syncclass CDummyOutStream:
11baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  public ISequentialOutStream,
12baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  public CMyUnknownImp
13baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{
14baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  CMyComPtr<ISequentialOutStream> _stream;
15baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  UInt64 _size;
16baa3858d3f5d128a5c8466b700098109edcad5f2repo syncpublic:
17baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  void SetStream(ISequentialOutStream *outStream) { _stream = outStream; }
18baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  void ReleaseStream() { _stream.Release(); }
19baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  void Init() { _size = 0; }
20baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  MY_UNKNOWN_IMP
21baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  STDMETHOD(Write)(const void *data, UInt32 size, UInt32 *processedSize);
22baa3858d3f5d128a5c8466b700098109edcad5f2repo sync  UInt64 GetSize() const { return _size; }
23baa3858d3f5d128a5c8466b700098109edcad5f2repo sync};
24baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
25baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#endif
26