bufferstream.cpp

来自「这是在PCA下的基于IPP库示例代码例子,在网上下了IPP的库之后,设置相关参数」· C++ 代码 · 共 56 行

CPP
56
字号
/* ////////////////////////////////////////////////////////////////////////////                  INTEL CORPORATION PROPRIETARY INFORMATION//     This software is supplied under the terms of a license agreement or//     nondisclosure agreement with Intel Corporation and may not be copied//     or disclosed except in accordance with the terms of that agreement.//          Copyright(c) 2004-2005 Intel Corporation. All Rights Reserved.//////*/#include "bufferstream.h"const unsigned int MemoryBlock::m_size = 8192;unsigned int Transfer(MemoryBlock& src, MemoryBlock& dst, unsigned int size){    unsigned int actualSize = Min(Min(dst.TailSize(), size), src.FillSize());    Copy(src.m_rPos, dst.m_wPos, actualSize);    src.m_rPos += actualSize;    dst.m_wPos += actualSize;    return actualSize;}unsigned int Transfer(BufferStream& src, BufferStream& dst, unsigned int size){    unsigned int usedSize = 0;    while(usedSize < size)    {        if( ! dst.BackBlock().TailSize())            dst.PushBackBlock();        unsigned int blockUsedSize            = Transfer(src.FrontBlock(), dst.BackBlock(), size - usedSize);        if(!blockUsedSize)        {            if(src.IsSingleBlock()) break;            src.PopFrontBlock();        }        else usedSize += blockUsedSize;    }    src.m_size -= usedSize;    dst.m_size += usedSize;    return usedSize;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?