STDMETHODIMP CDecoder::Code(ISequentialInStream *inStream, ISequentialOutStream *outStream, const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress) { try { return CodeReal(inStream, outStream, inSize, outSize, progress); } catch(...) { return S_FALSE; } }
STDMETHODIMP CCoder::Code(ISequentialInStream *inStream, ISequentialOutStream *outStream, const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress) { try { return CodeReal(inStream, outStream, inSize, outSize, progress); } catch(const CLzOutWindowException &e) { return e.ErrorCode; } catch(...) { return S_FALSE; } }
STDMETHODIMP CDecoder::Code(ISequentialInStream *inStream, ISequentialOutStream *outStream, const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress) { try { return CodeReal(inStream, outStream, inSize, outSize, progress); } catch(const CInBufferException &e) { return e.ErrorCode; } catch(const COutBufferException &e) { return e.ErrorCode; } catch(...) { return E_FAIL; } }
STDMETHODIMP CDecoder::Code(ISequentialInStream *inStream, ISequentialOutStream *outStream, const UInt64 * /* inSize */, const UInt64 * /* outSize */, ICompressProgressInfo *progress) { _needInStreamInit = true; bool isBZ; RINOK(CodeReal(inStream, outStream, isBZ, progress)); return isBZ ? S_OK : S_FALSE; }
HRESULT CCoder::Code(ISequentialInStream *inStream, ISequentialOutStream *outStream, const UInt64 * /* inSize */, const UInt64 *outSize, ICompressProgressInfo *progress) { SetInStream(inStream); SetOutStreamSize(outSize); HRESULT res = CodeReal(outStream, outSize, progress); ReleaseInStream(); return res; }
HRESULT CCoder::Code(ISequentialInStream *anInStream,ISequentialOutStream *anOutStream, const UINT64 *anInSize) { try { return CodeReal(anInStream, anOutStream, anInSize); } catch (HRESULT& e) { return e; } catch (...) { return E_FAIL; } }
STDMETHODIMP CDecoder::Code (ISequentialInStream **inStreams, const UInt64 **inSizes, UInt32 numInStreams, ISequentialOutStream **outStreams, const UInt64 **outSizes, UInt32 numOutStreams, ICompressProgressInfo *progress) { try { return CodeReal(inStreams, inSizes, numInStreams, outStreams, outSizes,numOutStreams, progress); } catch (const CInBufferException &e) { return e.ErrorCode; } catch (const COutBufferException &e) { return e.ErrorCode; } catch (...) { return S_FALSE; } }
HRESULT CDecoder::CodeResume(ISequentialOutStream *outStream, ICompressProgressInfo *progress) { return CodeReal(NULL, outStream, progress); }
STDMETHODIMP CDecoder::Code(ISequentialInStream *inStream, ISequentialOutStream *outStream, const UInt64 * /* inSize */, const UInt64 * /* outSize */, ICompressProgressInfo *progress) { _needInStreamInit = true; return CodeReal(inStream, outStream, progress); }
STDMETHODIMP CEncoder::Code(ISequentialInStream *inStream, ISequentialOutStream *outStream, const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress) { return CodeReal(inStream, outStream, inSize, outSize, progress); }
STDMETHODIMP CCoder::CodeResume(ISequentialOutStream *outStream, const UInt64 *outSize, ICompressProgressInfo *progress) { _remainLen = kLenIdNeedInit; m_OutWindowStream.Init(_keepHistory); return CodeReal(outStream, outSize, progress); }