Hello, We spent a bunch of effort last year to remove STL dependencies, since they cause serious trouble between different compilers (even between different compiler versions). This is especially since a lot of users will use x265 as a static library.
Thanks, Deepthi On Wed, Jul 9, 2014 at 3:00 PM, Satoshi Nakagawa <nakagawa...@oki.com> wrote: > # HG changeset patch > # User Satoshi Nakagawa <nakagawa...@oki.com> > # Date 1404898046 -32400 > # Wed Jul 09 18:27:26 2014 +0900 > # Node ID a3f4317f4acd89b7ef9bb8616068f9e4ff24328c > # Parent 644773b8532929a30f910fd269f521e44621f2f7 > use std::swap() for readability > > diff -r 644773b85329 -r a3f4317f4acd > source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp > --- a/source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp Wed Jul 09 > 13:55:42 2014 +0530 > +++ b/source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp Wed Jul 09 > 18:27:26 2014 +0900 > @@ -535,12 +535,10 @@ > int isChroma = (yCbCr != 0) ? 1 : 0; > int shift; > int cuHeightTmp; > - pixel* tmpLSwap; > pixel* tmpL; > pixel* tmpU; > pixel* clipTbl = NULL; > int32_t *offsetBo = NULL; > - int32_t *tmp_swap; > > picWidthTmp = (isChroma == 0) ? m_picWidth : m_picWidth >> > m_hChromaShift; > picHeightTmp = (isChroma == 0) ? m_picHeight : m_picHeight >> > m_vChromaShift; > @@ -707,9 +705,7 @@ > > m_upBufft[startX] = signDown2; > > - tmp_swap = m_upBuff1; > - m_upBuff1 = m_upBufft; > - m_upBufft = tmp_swap; > + std::swap(m_upBuff1, m_upBufft); > > rec += stride; > } > @@ -775,9 +771,7 @@ > > // if (iSaoType!=SAO_BO_0 || iSaoType!=SAO_BO_1) > { > - tmpLSwap = m_tmpL1; > - m_tmpL1 = m_tmpL2; > - m_tmpL2 = tmpLSwap; > + std::swap(m_tmpL1, m_tmpL2); > } > } > > @@ -864,7 +858,6 @@ > int frameWidthInCU = m_pic->getFrameWidthInCU(); > int frameHeightInCU = m_pic->getFrameHeightInCU(); > int stride; > - pixel *tmpUSwap; > int sChroma = (yCbCr == 0) ? 0 : 1; > bool mergeLeftFlag; > int saoBitIncrease = (yCbCr == 0) ? m_saoBitIncreaseY : > m_saoBitIncreaseC; > @@ -976,9 +969,7 @@ > } > } > > - tmpUSwap = m_tmpU1[yCbCr]; > - m_tmpU1[yCbCr] = m_tmpU2[yCbCr]; > - m_tmpU2[yCbCr] = tmpUSwap; > + std::swap(m_tmpU1[yCbCr], m_tmpU2[yCbCr]); > } > } > > @@ -1018,7 +1009,6 @@ > int addr; > int frameWidthInCU = m_pic->getFrameWidthInCU(); > int stride; > - pixel *tmpUSwap; > int sChroma = (yCbCr == 0) ? 0 : 1; > bool mergeLeftFlag; > int saoBitIncrease = (yCbCr == 0) ? m_saoBitIncreaseY : > m_saoBitIncreaseC; > @@ -1122,9 +1112,7 @@ > } > } > > - tmpUSwap = m_tmpU1[yCbCr]; > - m_tmpU1[yCbCr] = m_tmpU2[yCbCr]; > - m_tmpU2[yCbCr] = tmpUSwap; > + std::swap(m_tmpU1[yCbCr], m_tmpU2[yCbCr]); > } > } > > diff -r 644773b85329 -r a3f4317f4acd source/Lib/TLibEncoder/TEncCu.cpp > --- a/source/Lib/TLibEncoder/TEncCu.cpp Wed Jul 09 13:55:42 2014 +0530 > +++ b/source/Lib/TLibEncoder/TEncCu.cpp Wed Jul 09 18:27:26 2014 +0900 > @@ -1258,22 +1258,11 @@ > uint64_t bestCost = m_rdCost->psyRdEnabled() ? > outBestCU->m_totalPsyCost : outBestCU->m_totalRDCost; > if (tempCost < bestCost) > { > - TComDataCU* tmp = outTempCU; > - outTempCU = outBestCU; > - outBestCU = tmp; > - > - // Change Prediction data > - TComYuv* yuv = NULL; > - yuv = outBestPredYuv; > - outBestPredYuv = m_tmpPredYuv[depth]; > - m_tmpPredYuv[depth] = yuv; > - > - yuv = rpcYuvReconBest; > - rpcYuvReconBest = m_tmpRecoYuv[depth]; > - m_tmpRecoYuv[depth] = yuv; > - > + std::swap(outBestCU, outTempCU); > + std::swap(outBestPredYuv, m_tmpPredYuv[depth]); > + std::swap(rpcYuvReconBest, m_tmpRecoYuv[depth]); > > > m_rdSbacCoders[depth][CI_TEMP_BEST]->store(m_rdSbacCoders[depth][CI_NEXT_BEST]); > - } > + } > outTempCU->setQPSubParts(origQP, 0, depth); > outTempCU->setSkipFlagSubParts(false, 0, depth); > if (!bestIsSkip) > @@ -1446,21 +1435,14 @@ > > if (tempCost < bestCost) > { > - TComYuv* yuv; > // Change Information data > - TComDataCU* cu = outBestCU; > - outBestCU = outTempCU; > - outTempCU = cu; > + std::swap(outBestCU, outTempCU); > > // Change Prediction data > - yuv = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = m_tmpPredYuv[depth]; > - m_tmpPredYuv[depth] = yuv; > + std::swap(m_bestPredYuv[depth], m_tmpPredYuv[depth]); > > // Change Reconstruction data > - yuv = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = m_tmpRecoYuv[depth]; > - m_tmpRecoYuv[depth] = yuv; > + std::swap(m_bestRecoYuv[depth], m_tmpRecoYuv[depth]); > > > > m_rdSbacCoders[depth][CI_TEMP_BEST]->store(m_rdSbacCoders[depth][CI_NEXT_BEST]); > } > diff -r 644773b85329 -r a3f4317f4acd > source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp > --- a/source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp Wed Jul 09 > 13:55:42 2014 +0530 > +++ b/source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp Wed Jul 09 > 18:27:26 2014 +0900 > @@ -566,7 +566,6 @@ > int iEndX; > int iEndY; > pixel* pTableBo = (yCbCr == 0) ? m_lumaTableBo : m_chromaTableBo; > - int32_t *tmp_swap; > > int iIsChroma = (yCbCr != 0) ? 1 : 0; > int numSkipLine = iIsChroma ? 4 - (2 * m_vChromaShift) : 4; > @@ -756,9 +755,7 @@ > } > > m_upBufft[iStartX] = iSignDown2; > - tmp_swap = m_upBuff1; > - m_upBuff1 = m_upBufft; > - m_upBufft = tmp_swap; > + std::swap(m_upBuff1, m_upBufft); > > pRec += stride; > fenc += stride; > @@ -844,7 +841,6 @@ > uint32_t lPelX, tPelY; > TComDataCU *pTmpCu; > pixel* pTableBo; > - int32_t *tmp_swap; > > // NOTE: Row > { > @@ -1054,9 +1050,7 @@ > } > > m_upBufft[firstX] = signDown2; > - tmp_swap = m_upBuff1; > - m_upBuff1 = m_upBufft; > - m_upBufft = tmp_swap; > + std::swap(m_upBuff1, m_upBufft); > > pRec += stride; > fenc += stride; > diff -r 644773b85329 -r a3f4317f4acd source/encoder/compress.cpp > --- a/source/encoder/compress.cpp Wed Jul 09 13:55:42 2014 +0530 > +++ b/source/encoder/compress.cpp Wed Jul 09 18:27:26 2014 +0900 > @@ -280,13 +280,9 @@ > if (outTempCU->m_totalRDCost < outBestCU->m_totalRDCost) > { > bestMergeCand = mergeCand; > - TComDataCU* tmp = outTempCU; > - outTempCU = outBestCU; > - outBestCU = tmp; > + std::swap(outBestCU, outTempCU); > // Change Prediction data > - TComYuv* yuv = bestPredYuv; > - bestPredYuv = m_tmpPredYuv[depth]; > - m_tmpPredYuv[depth] = yuv; > + std::swap(bestPredYuv, m_tmpPredYuv[depth]); > } > } > } > @@ -308,7 +304,6 @@ > outTempCU->m_totalRDCost = > m_rdCost->calcRdSADCost(outTempCU->m_totalDistortion, > outTempCU->m_totalBits); > outTempCU->m_sa8dCost = outTempCU->m_totalRDCost; > outBestCU->m_sa8dCost = outTempCU->m_sa8dCost; > - TComYuv* yuv; > if (m_param->rdLevel >= 1) > { > //calculate the motion compensation for chroma for the best > mode selected > @@ -327,9 +322,7 @@ > //No-residue mode > m_search->encodeResAndCalcRdInterCU(outBestCU, > m_origYuv[depth], bestPredYuv, m_tmpResiYuv[depth], m_bestResiYuv[depth], > m_tmpRecoYuv[depth], true, true); > > - yuv = yuvReconBest; > - yuvReconBest = m_tmpRecoYuv[depth]; > - m_tmpRecoYuv[depth] = yuv; > + std::swap(yuvReconBest, m_tmpRecoYuv[depth]); > } > > //Encode with residue > @@ -339,13 +332,8 @@ > uint64_t bestCost = m_rdCost->psyRdEnabled() ? > outBestCU->m_totalPsyCost : outBestCU->m_totalRDCost; > if (tempCost < bestCost) //Choose best from no-residue mode > and residue mode > { > - TComDataCU* tmp = outTempCU; > - outTempCU = outBestCU; > - outBestCU = tmp; > - > - yuv = yuvReconBest; > - yuvReconBest = m_tmpRecoYuv[depth]; > - m_tmpRecoYuv[depth] = yuv; > + std::swap(outBestCU, outTempCU); > + std::swap(yuvReconBest, m_tmpRecoYuv[depth]); > } > } > } > @@ -391,7 +379,6 @@ > m_origYuv[depth]->copyToPicYuv(pic->getPicYuvRec(), > cu->getAddr(), 0); > } > // We need to split, so don't try these modes. > - TComYuv* tempYuv = NULL; > #if TOPSKIP > if (bInsidePicture && !bInsidePictureParent) > { > @@ -462,9 +449,7 @@ > xComputeCostInter(m_interCU_2Nx2N[depth], > m_modePredYuv[0][depth], SIZE_2Nx2N); > /* Choose best mode; initialise outBestCU to 2Nx2N */ > outBestCU = m_interCU_2Nx2N[depth]; > - tempYuv = m_modePredYuv[0][depth]; > - m_modePredYuv[0][depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > + std::swap(m_bestPredYuv[depth], > m_modePredYuv[0][depth]); > } > > /* Compute Rect costs */ > @@ -475,18 +460,12 @@ > if (m_interCU_Nx2N[depth]->m_totalRDCost < > outBestCU->m_totalRDCost) > { > outBestCU = m_interCU_Nx2N[depth]; > - > - tempYuv = m_modePredYuv[1][depth]; > - m_modePredYuv[1][depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > + std::swap(m_bestPredYuv[depth], > m_modePredYuv[1][depth]); > } > if (m_interCU_2NxN[depth]->m_totalRDCost < > outBestCU->m_totalRDCost) > { > outBestCU = m_interCU_2NxN[depth]; > - > - tempYuv = m_modePredYuv[2][depth]; > - m_modePredYuv[2][depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > + std::swap(m_bestPredYuv[depth], > m_modePredYuv[2][depth]); > } > } > > @@ -506,13 +485,8 @@ > if (bestMergeCost < bestCost) > { > outBestCU = m_bestMergeCU[depth]; > - tempYuv = m_modePredYuv[3][depth]; > - m_modePredYuv[3][depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > - > - tempYuv = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = m_bestMergeRecoYuv[depth]; > - m_bestMergeRecoYuv[depth] = tempYuv; > + std::swap(m_bestPredYuv[depth], > m_modePredYuv[3][depth]); > + std::swap(m_bestRecoYuv[depth], > m_bestMergeRecoYuv[depth]); > } > } > > @@ -547,13 +521,8 @@ > if (intraInInterCost < bestCost) > { > outBestCU = m_intraInInterCU[depth]; > - tempYuv = m_modePredYuv[5][depth]; > - m_modePredYuv[5][depth] = > m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > - > - TComYuv* tmpPic = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = m_tmpRecoYuv[depth]; > - m_tmpRecoYuv[depth] = tmpPic; > + std::swap(m_bestPredYuv[depth], > m_modePredYuv[5][depth]); > + std::swap(m_bestRecoYuv[depth], > m_tmpRecoYuv[depth]); > } > } > } > @@ -562,13 +531,8 @@ > if (m_bestMergeCU[depth]->m_sa8dCost < > outBestCU->m_totalRDCost) > { > outBestCU = m_bestMergeCU[depth]; > - tempYuv = m_modePredYuv[3][depth]; > - m_modePredYuv[3][depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > - > - tempYuv = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = m_bestMergeRecoYuv[depth]; > - m_bestMergeRecoYuv[depth] = tempYuv; > + std::swap(m_bestPredYuv[depth], > m_modePredYuv[3][depth]); > + std::swap(m_bestRecoYuv[depth], > m_bestMergeRecoYuv[depth]); > } > else if (outBestCU->getPredictionMode(0) == > MODE_INTER) > { > @@ -591,13 +555,8 @@ > if (m_bestMergeCU[depth]->m_sa8dCost < > outBestCU->m_totalRDCost) > { > outBestCU = m_bestMergeCU[depth]; > - tempYuv = m_modePredYuv[3][depth]; > - m_modePredYuv[3][depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > - > - tempYuv = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = m_bestMergeRecoYuv[depth]; > - m_bestMergeRecoYuv[depth] = tempYuv; > + std::swap(m_bestPredYuv[depth], > m_modePredYuv[3][depth]); > + std::swap(m_bestRecoYuv[depth], > m_bestMergeRecoYuv[depth]); > } > else if (outBestCU->getPredictionMode(0) == > MODE_INTER) > { > @@ -630,13 +589,8 @@ > else > { > outBestCU = m_bestMergeCU[depth]; > - tempYuv = m_modePredYuv[3][depth]; > - m_modePredYuv[3][depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > - > - tempYuv = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = m_bestMergeRecoYuv[depth]; > - m_bestMergeRecoYuv[depth] = tempYuv; > + std::swap(m_bestPredYuv[depth], m_modePredYuv[3][depth]); > + std::swap(m_bestRecoYuv[depth], > m_bestMergeRecoYuv[depth]); > } > > if (m_param->rdLevel > 0) // checkDQP can be done only after > residual encoding is done > @@ -856,23 +810,15 @@ > if (tempCost < bestCost) > { > outBestCU = outTempCU; > - tempYuv = m_tmpRecoYuv[depth]; > - m_tmpRecoYuv[depth] = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = tempYuv; > - tempYuv = m_tmpPredYuv[depth]; > - m_tmpPredYuv[depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > + std::swap(m_bestRecoYuv[depth], m_tmpRecoYuv[depth]); > + std::swap(m_bestPredYuv[depth], m_tmpPredYuv[depth]); > } > } > else > { > outBestCU = outTempCU; > - tempYuv = m_tmpRecoYuv[depth]; > - m_tmpRecoYuv[depth] = m_bestRecoYuv[depth]; > - m_bestRecoYuv[depth] = tempYuv; > - tempYuv = m_tmpPredYuv[depth]; > - m_tmpPredYuv[depth] = m_bestPredYuv[depth]; > - m_bestPredYuv[depth] = tempYuv; > + std::swap(m_bestRecoYuv[depth], m_tmpRecoYuv[depth]); > + std::swap(m_bestPredYuv[depth], m_tmpPredYuv[depth]); > } > } > > diff -r 644773b85329 -r a3f4317f4acd source/encoder/framefilter.cpp > --- a/source/encoder/framefilter.cpp Wed Jul 09 13:55:42 2014 +0530 > +++ b/source/encoder/framefilter.cpp Wed Jul 09 18:27:26 2014 +0900 > @@ -480,9 +480,7 @@ > { > for (; z <= y; z++) > { > - void* swap = sum0; > - sum0 = sum1; > - sum1 = (int(*)[4])swap; > + std::swap(sum0, sum1); > for (int x = 0; x < width; x += 2) > { > primitives.ssim_4x4x2_core(&pix1[(4 * x + (z * > stride1))], stride1, &pix2[(4 * x + (z * stride2))], stride2, &sum0[x]); > _______________________________________________ > x265-devel mailing list > x265-devel@videolan.org > https://mailman.videolan.org/listinfo/x265-devel >
_______________________________________________ x265-devel mailing list x265-devel@videolan.org https://mailman.videolan.org/listinfo/x265-devel