diff options
Diffstat (limited to 'src/libs/7zip/win/CPP/7zip/Archive/Common/CoderMixer2.cpp')
-rw-r--r-- | src/libs/7zip/win/CPP/7zip/Archive/Common/CoderMixer2.cpp | 119 |
1 files changed, 0 insertions, 119 deletions
diff --git a/src/libs/7zip/win/CPP/7zip/Archive/Common/CoderMixer2.cpp b/src/libs/7zip/win/CPP/7zip/Archive/Common/CoderMixer2.cpp deleted file mode 100644 index e562fec58..000000000 --- a/src/libs/7zip/win/CPP/7zip/Archive/Common/CoderMixer2.cpp +++ /dev/null @@ -1,119 +0,0 @@ -// CoderMixer2.cpp - -#include "StdAfx.h" - -#include "CoderMixer2.h" - -namespace NCoderMixer { - -CBindReverseConverter::CBindReverseConverter(const CBindInfo &srcBindInfo): - _srcBindInfo(srcBindInfo) -{ - srcBindInfo.GetNumStreams(NumSrcInStreams, _numSrcOutStreams); - - UInt32 j; - _srcInToDestOutMap.ClearAndSetSize(NumSrcInStreams); - DestOutToSrcInMap.ClearAndSetSize(NumSrcInStreams); - - for (j = 0; j < NumSrcInStreams; j++) - { - _srcInToDestOutMap[j] = 0; - DestOutToSrcInMap[j] = 0; - } - - _srcOutToDestInMap.ClearAndSetSize(_numSrcOutStreams); - _destInToSrcOutMap.ClearAndSetSize(_numSrcOutStreams); - - for (j = 0; j < _numSrcOutStreams; j++) - { - _srcOutToDestInMap[j] = 0; - _destInToSrcOutMap[j] = 0; - } - - UInt32 destInOffset = 0; - UInt32 destOutOffset = 0; - UInt32 srcInOffset = NumSrcInStreams; - UInt32 srcOutOffset = _numSrcOutStreams; - - for (int i = srcBindInfo.Coders.Size() - 1; i >= 0; i--) - { - const CCoderStreamsInfo &srcCoderInfo = srcBindInfo.Coders[i]; - - srcInOffset -= srcCoderInfo.NumInStreams; - srcOutOffset -= srcCoderInfo.NumOutStreams; - - UInt32 j; - for (j = 0; j < srcCoderInfo.NumInStreams; j++, destOutOffset++) - { - UInt32 index = srcInOffset + j; - _srcInToDestOutMap[index] = destOutOffset; - DestOutToSrcInMap[destOutOffset] = index; - } - for (j = 0; j < srcCoderInfo.NumOutStreams; j++, destInOffset++) - { - UInt32 index = srcOutOffset + j; - _srcOutToDestInMap[index] = destInOffset; - _destInToSrcOutMap[destInOffset] = index; - } - } -} - -void CBindReverseConverter::CreateReverseBindInfo(CBindInfo &destBindInfo) -{ - destBindInfo.Coders.ClearAndReserve(_srcBindInfo.Coders.Size()); - destBindInfo.BindPairs.ClearAndReserve(_srcBindInfo.BindPairs.Size()); - destBindInfo.InStreams.ClearAndReserve(_srcBindInfo.OutStreams.Size()); - destBindInfo.OutStreams.ClearAndReserve(_srcBindInfo.InStreams.Size()); - - unsigned i; - for (i = _srcBindInfo.Coders.Size(); i != 0;) - { - i--; - const CCoderStreamsInfo &srcCoderInfo = _srcBindInfo.Coders[i]; - CCoderStreamsInfo destCoderInfo; - destCoderInfo.NumInStreams = srcCoderInfo.NumOutStreams; - destCoderInfo.NumOutStreams = srcCoderInfo.NumInStreams; - destBindInfo.Coders.AddInReserved(destCoderInfo); - } - for (i = _srcBindInfo.BindPairs.Size(); i != 0;) - { - i--; - const CBindPair &srcBindPair = _srcBindInfo.BindPairs[i]; - CBindPair destBindPair; - destBindPair.InIndex = _srcOutToDestInMap[srcBindPair.OutIndex]; - destBindPair.OutIndex = _srcInToDestOutMap[srcBindPair.InIndex]; - destBindInfo.BindPairs.AddInReserved(destBindPair); - } - for (i = 0; i < _srcBindInfo.InStreams.Size(); i++) - destBindInfo.OutStreams.AddInReserved(_srcInToDestOutMap[_srcBindInfo.InStreams[i]]); - for (i = 0; i < _srcBindInfo.OutStreams.Size(); i++) - destBindInfo.InStreams.AddInReserved(_srcOutToDestInMap[_srcBindInfo.OutStreams[i]]); -} - -void SetSizes(const UInt64 **srcSizes, CRecordVector<UInt64> &sizes, - CRecordVector<const UInt64 *> &sizePointers, UInt32 numItems) -{ - sizes.ClearAndSetSize(numItems); - sizePointers.ClearAndSetSize(numItems); - for (UInt32 i = 0; i < numItems; i++) - { - if (!srcSizes || !srcSizes[i]) - { - sizes[i] = 0; - sizePointers[i] = NULL; - } - else - { - sizes[i] = *(srcSizes[i]); - sizePointers[i] = &sizes[i]; - } - } -} - -void CCoderInfo2::SetCoderInfo(const UInt64 **inSizes, const UInt64 **outSizes) -{ - SetSizes(inSizes, InSizes, InSizePointers, NumInStreams); - SetSizes(outSizes, OutSizes, OutSizePointers, NumOutStreams); -} - -} |