Changeset 1313 in 3DVCSoftware for trunk/source/Lib/TLibCommon/TComPic.cpp
- Timestamp:
- 13 Aug 2015, 17:38:13 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibCommon/TComPic.cpp
r1179 r1313 2 2 * License, included below. This software may be subject to other third party 3 3 * and contributor rights, including patent rights, and no such rights are 4 * granted under this license. 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-2015, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 50 50 , m_bUsedByCurr (false) 51 51 , m_bIsLongTerm (false) 52 , m_apcPicSym (NULL)53 52 , m_pcPicYuvPred (NULL) 54 53 , m_pcPicYuvResi (NULL) 55 54 , m_bReconstructed (false) 56 55 , m_bNeededForOutput (false) 57 #if H_MV56 #if NH_MV 58 57 , m_bPicOutputFlag (false) 59 58 #endif 60 59 , m_uiCurrSliceIdx (0) 61 60 , m_bCheckLTMSB (false) 62 #if H_MV61 #if NH_MV 63 62 , m_layerId (0) 64 63 , m_viewId (0) 65 #if H_3D64 #if NH_3D 66 65 , m_viewIndex (0) 67 66 , m_isDepth (false) … … 70 69 #endif 71 70 #endif 72 { 73 m_apcPicYuv[0] = NULL; 74 m_apcPicYuv[1] = NULL; 75 #if H_3D_QTLPC 71 72 { 73 for(UInt i=0; i<NUM_PIC_YUV; i++) 74 { 75 m_apcPicYuv[i] = NULL; 76 } 77 #if NH_3D_QTLPC 76 78 m_bReduceBitsQTL = 0; 77 79 #endif 78 #if H_3D_NBDV80 #if NH_3D_NBDV 79 81 m_iNumDdvCandPics = 0; 80 82 m_eRapRefList = REF_PIC_LIST_0; … … 87 89 } 88 90 89 Void TComPic::create( Int iWidth, Int iHeight, UInt uiMaxWidth, UInt uiMaxHeight, UInt uiMaxDepth, Window &conformanceWindow, Window &defaultDisplayWindow, 90 Int *numReorderPics, Bool bIsVirtual) 91 92 { 93 m_apcPicSym = new TComPicSym; m_apcPicSym ->create( iWidth, iHeight, uiMaxWidth, uiMaxHeight, uiMaxDepth ); 91 Void TComPic::create( const TComSPS &sps, const TComPPS &pps, const Bool bIsVirtual) 92 { 93 const ChromaFormat chromaFormatIDC = sps.getChromaFormatIdc(); 94 const Int iWidth = sps.getPicWidthInLumaSamples(); 95 const Int iHeight = sps.getPicHeightInLumaSamples(); 96 const UInt uiMaxCuWidth = sps.getMaxCUWidth(); 97 const UInt uiMaxCuHeight = sps.getMaxCUHeight(); 98 const UInt uiMaxDepth = sps.getMaxTotalCUDepth(); 99 100 m_picSym.create( sps, pps, uiMaxDepth ); 94 101 if (!bIsVirtual) 95 102 { 96 m_apcPicYuv[0] = new TComPicYuv; m_apcPicYuv[0]->create( iWidth, iHeight, uiMaxWidth, uiMaxHeight, uiMaxDepth ); 97 } 98 m_apcPicYuv[1] = new TComPicYuv; m_apcPicYuv[1]->create( iWidth, iHeight, uiMaxWidth, uiMaxHeight, uiMaxDepth ); 99 103 m_apcPicYuv[PIC_YUV_ORG ] = new TComPicYuv; m_apcPicYuv[PIC_YUV_ORG ]->create( iWidth, iHeight, chromaFormatIDC, uiMaxCuWidth, uiMaxCuHeight, uiMaxDepth, true ); 104 m_apcPicYuv[PIC_YUV_TRUE_ORG] = new TComPicYuv; m_apcPicYuv[PIC_YUV_TRUE_ORG]->create( iWidth, iHeight, chromaFormatIDC, uiMaxCuWidth, uiMaxCuHeight, uiMaxDepth, true ); 105 } 106 m_apcPicYuv[PIC_YUV_REC] = new TComPicYuv; m_apcPicYuv[PIC_YUV_REC]->create( iWidth, iHeight, chromaFormatIDC, uiMaxCuWidth, uiMaxCuHeight, uiMaxDepth, true ); 107 100 108 // there are no SEI messages associated with this picture initially 101 109 if (m_SEIs.size() > 0) … … 104 112 } 105 113 m_bUsedByCurr = false; 106 107 /* store conformance window parameters with picture */108 m_conformanceWindow = conformanceWindow;109 110 /* store display window parameters with picture */111 m_defaultDisplayWindow = defaultDisplayWindow;112 113 /* store number of reorder pics with picture */114 memcpy(m_numReorderPics, numReorderPics, MAX_TLAYER*sizeof(Int));115 114 116 115 #if H_3D_FCO … … 125 124 #endif 126 125 127 return;128 126 } 129 127 130 128 Void TComPic::destroy() 131 129 { 132 if (m_apcPicSym) 133 { 134 m_apcPicSym->destroy(); 135 delete m_apcPicSym; 136 m_apcPicSym = NULL; 137 } 138 139 if (m_apcPicYuv[0]) 140 { 141 m_apcPicYuv[0]->destroy(); 142 delete m_apcPicYuv[0]; 143 m_apcPicYuv[0] = NULL; 144 } 145 146 if (m_apcPicYuv[1]) 147 { 148 m_apcPicYuv[1]->destroy(); 149 delete m_apcPicYuv[1]; 150 m_apcPicYuv[1] = NULL; 151 } 152 130 m_picSym.destroy(); 131 132 for(UInt i=0; i<NUM_PIC_YUV; i++) 133 { 134 if (m_apcPicYuv[i]) 135 { 136 m_apcPicYuv[i]->destroy(); 137 delete m_apcPicYuv[i]; 138 m_apcPicYuv[i] = NULL; 139 } 140 } 141 153 142 deleteSEIs(m_SEIs); 154 143 } 155 #if H_3D 144 #if NH_3D 145 #if NH_3D_ARP 146 Void TComPic::getCUAddrAndPartIdx( Int iX, Int iY, Int& riCuAddr, Int& riAbsZorderIdx ) 147 { 148 Int iMaxCUWidth = (Int) ( getPicSym()->getSPS().getMaxCUWidth() ); 149 Int iMaxCuHeight = (Int) ( getPicSym()->getSPS().getMaxCUHeight() ); 150 151 UInt uiMaxTotalCUDepth = getPicSym()->getSPS().getMaxTotalCUDepth(); 152 Int iBaseUnitWidth = iMaxCUWidth >> uiMaxTotalCUDepth; 153 Int iBaseUnitHeight = iMaxCUWidth >> uiMaxTotalCUDepth; 154 155 Int iNumCuInWidth = getPicYuvRec()->getWidth(COMPONENT_Y) / iMaxCUWidth; 156 iNumCuInWidth += ( getPicYuvRec()->getWidth(COMPONENT_Y) % iMaxCUWidth ) ? 1 : 0; 157 158 159 Int iCuX = iX / iMaxCUWidth; 160 Int iCuY = iY / iMaxCuHeight; 161 Int iBaseX = ( iX - iCuX * iMaxCUWidth ) / iBaseUnitWidth; 162 Int iBaseY = ( iY - iCuY * iMaxCuHeight ) / iBaseUnitHeight; 163 Int iCuSizeInBases = iMaxCuHeight / iBaseUnitWidth; 164 165 riCuAddr = iCuY * iNumCuInWidth + iCuX; 166 Int iRastPartIdx = iBaseY * iCuSizeInBases + iBaseX; 167 riAbsZorderIdx = g_auiRasterToZscan[ iRastPartIdx ]; 168 } 169 #endif 156 170 Void TComPic::compressMotion(Int scale) 157 171 #else … … 159 173 #endif 160 174 { 161 TComPicSym* pPicSym = getPicSym(); 162 for ( UInt uiCUAddr = 0; uiCUAddr < pPicSym->get FrameHeightInCU()*pPicSym->getFrameWidthInCU(); uiCUAddr++ )163 { 164 TComDataCU* p cCU = pPicSym->getCU(uiCUAddr);165 #if H_3D166 p cCU->compressMV(scale);175 TComPicSym* pPicSym = getPicSym(); 176 for ( UInt uiCUAddr = 0; uiCUAddr < pPicSym->getNumberOfCtusInFrame(); uiCUAddr++ ) 177 { 178 TComDataCU* pCtu = pPicSym->getCtu(uiCUAddr); 179 #if NH_3D 180 pCtu->compressMV(scale); 167 181 #else 168 pcCU->compressMV(); 169 #endif 170 } 182 pCtu->compressMV(); 183 #endif 184 185 } 171 186 } 172 187 173 188 Bool TComPic::getSAOMergeAvailability(Int currAddr, Int mergeAddr) 174 189 { 175 Bool mergeCtbInSliceSeg = (mergeAddr >= getPicSym()->getC UOrderMap(getCU(currAddr)->getSlice()->getSliceCurStartCUAddr()/getNumPartInCU()));190 Bool mergeCtbInSliceSeg = (mergeAddr >= getPicSym()->getCtuTsToRsAddrMap(getCtu(currAddr)->getSlice()->getSliceCurStartCtuTsAddr())); 176 191 Bool mergeCtbInTile = (getPicSym()->getTileIdxMap(mergeAddr) == getPicSym()->getTileIdxMap(currAddr)); 177 192 return (mergeCtbInSliceSeg && mergeCtbInTile); 178 193 } 179 194 180 #if H_MV 195 UInt TComPic::getSubstreamForCtuAddr(const UInt ctuAddr, const Bool bAddressInRaster, TComSlice *pcSlice) 196 { 197 UInt subStrm; 198 const bool bWPPEnabled=pcSlice->getPPS()->getEntropyCodingSyncEnabledFlag(); 199 const TComPicSym &picSym = *(getPicSym()); 200 201 if ((bWPPEnabled && picSym.getFrameHeightInCtus()>1) || (picSym.getNumTiles()>1)) // wavefronts, and possibly tiles being used. 202 { 203 if (bWPPEnabled) 204 { 205 const UInt ctuRsAddr = bAddressInRaster?ctuAddr : picSym.getCtuTsToRsAddrMap(ctuAddr); 206 const UInt frameWidthInCtus = picSym.getFrameWidthInCtus(); 207 const UInt tileIndex = picSym.getTileIdxMap(ctuRsAddr); 208 const UInt numTileColumns = (picSym.getNumTileColumnsMinus1()+1); 209 const TComTile *pTile = picSym.getTComTile(tileIndex); 210 const UInt firstCtuRsAddrOfTile = pTile->getFirstCtuRsAddr(); 211 const UInt tileYInCtus = firstCtuRsAddrOfTile / frameWidthInCtus; 212 // independent tiles => substreams are "per tile" 213 const UInt ctuLine = ctuRsAddr / frameWidthInCtus; 214 const UInt startingSubstreamForTile =(tileYInCtus*numTileColumns) + (pTile->getTileHeightInCtus()*(tileIndex%numTileColumns)); 215 subStrm = startingSubstreamForTile + (ctuLine - tileYInCtus); 216 } 217 else 218 { 219 const UInt ctuRsAddr = bAddressInRaster?ctuAddr : picSym.getCtuTsToRsAddrMap(ctuAddr); 220 const UInt tileIndex = picSym.getTileIdxMap(ctuRsAddr); 221 subStrm=tileIndex; 222 } 223 } 224 else 225 { 226 // dependent tiles => substreams are "per frame". 227 subStrm = 0; 228 } 229 return subStrm; 230 } 231 232 #if NH_MV 181 233 Void TComPic::print( Bool legend ) 182 234 { … … 204 256 } 205 257 206 #if H_3D258 #if NH_3D 207 259 TComPic* TComPicLists::getPic( Int viewIndex, Bool depthFlag, Int poc ) 208 260 { … … 250 302 } 251 303 252 #if H_3D304 #if NH_3D 253 305 TComPicYuv* TComPicLists::getPicYuv( Int viewIndex, Bool depthFlag, Int poc, Bool recon ) 254 306 { … … 256 308 return getPicYuv( layerIdInNuh, poc, recon ); 257 309 } 258 #if H_3D_ARP310 #if NH_3D_ARP 259 311 TComList<TComPic*>* TComPicLists::getPicList( Int layerIdInNuh ) 260 312 { … … 274 326 #endif 275 327 #endif 276 #endif // H_MV277 278 #if H_3D_NBDV279 Int TComPic::getDisCandRefPictures( Int iColPOC)328 #endif // NH_MV 329 330 #if NH_3D_NBDV 331 Int TComPic::getDisCandRefPictures(Int iColPOC) 280 332 { 281 333 UInt uiTempLayerCurr = 7; … … 283 335 UInt numDdvCandPics = 0; 284 336 285 if ( !currSlice->getEnableTMVPFlag() ) 337 if(!currSlice->getEnableTMVPFlag()) 338 { 286 339 return numDdvCandPics; 340 } 287 341 288 342 numDdvCandPics += 1; … … 291 345 UInt pocDiff = 255; 292 346 293 for(UInt lpNr = 0; lpNr < (currSlice->isInterB() ? 2: 1); lpNr 294 { 295 UIntx = lpNr ? currSlice->getColFromL0Flag() : 1 - currSlice->getColFromL0Flag();296 297 for 347 for(UInt lpNr = 0; lpNr < (currSlice->isInterB() ? 2: 1); lpNr++) 348 { 349 Bool x = lpNr ? currSlice->getColFromL0Flag() : 1 - currSlice->getColFromL0Flag(); 350 351 for(UInt i = 0; i < currSlice->getNumRefIdx(RefPicList(x)); i++) 298 352 { 299 353 if(currSlice->getViewIndex() == currSlice->getRefPic((RefPicList)x, i)->getViewIndex() 300 && (x == currSlice->getColFromL0Flag()||currSlice->getRefPOC((RefPicList)x, i)!= iColPOC) && numDdvCandPics!=2)354 && (x == currSlice->getColFromL0Flag() || currSlice->getRefPOC((RefPicList)x, i) != iColPOC) && numDdvCandPics != 2) 301 355 { 302 356 TComSlice* refSlice = currSlice->getRefPic((RefPicList)x, i)->getSlice(getCurrSliceIdx()); 303 Bool bRAP = (refSlice->getViewIndex() && refSlice->isIRAP()) ? 1: 0;357 Bool bRAP = (refSlice->getViewIndex() && refSlice->isIRAP()) ? 1 : 0; 304 358 UInt uiTempLayer = currSlice->getRefPic((RefPicList)x, i)->getSlice(getCurrSliceIdx())->getTLayer(); 305 359 306 if( bRAP)360 if(bRAP) 307 361 { 308 362 this->setRapRefIdx(i); … … 323 377 UInt idx = 0; 324 378 325 for(UInt lpNr = 0; lpNr < (currSlice->isInterB() ? 2 : 1); lpNr++)326 { 327 UInt x = lpNr? currSlice->getColFromL0Flag() : 1-currSlice->getColFromL0Flag();379 for(UInt lpNr = 0; lpNr < (currSlice->isInterB() ? 2 : 1); lpNr++) 380 { 381 Bool x = lpNr ? currSlice->getColFromL0Flag() : 1 - currSlice->getColFromL0Flag(); 328 382 329 for 383 for(UInt i = 0; i < currSlice->getNumRefIdx(RefPicList(x)); i++) 330 384 { 331 385 Int iTempPoc = currSlice->getRefPic((RefPicList)x, i)->getPOC(); 332 Int iTempDiff = (iTempPoc > pocCurr) ? (iTempPoc - pocCurr) : (pocCurr - iTempPoc);386 Int iTempDiff = (iTempPoc > pocCurr) ? (iTempPoc - pocCurr) : (pocCurr - iTempPoc); 333 387 334 if(currSlice->getViewIndex() == currSlice->getRefPic((RefPicList)x, i)->getViewIndex() && (x == currSlice->getColFromL0Flag()||currSlice->getRefPOC((RefPicList)x, i)!= iColPOC)335 && currSlice->getRefPic((RefPicList)x, i)->getSlice(getCurrSliceIdx())->getTLayer() == uiTempLayerCurr && pocDiff > iTempDiff)388 if(currSlice->getViewIndex() == currSlice->getRefPic((RefPicList)x, i)->getViewIndex() && (x == currSlice->getColFromL0Flag() || currSlice->getRefPOC((RefPicList)x, i) != iColPOC) 389 && currSlice->getRefPic((RefPicList)x, i)->getSlice(getCurrSliceIdx())->getTLayer() == uiTempLayerCurr && pocDiff > iTempDiff) 336 390 { 337 391 pocDiff = iTempDiff; … … 342 396 } 343 397 344 if( pocDiff < 255)398 if(pocDiff < 255) 345 399 { 346 400 this->setRapRefIdx(idx); 347 this->setRapRefList((RefPicList) z 401 this->setRapRefList((RefPicList) z); 348 402 numDdvCandPics = 2; 349 403 } … … 356 410 TComSlice* currSlice = getSlice(getCurrSliceIdx()); 357 411 const Int numCandPics = this->getNumDdvCandPics(); 412 358 413 for(Int curCandPic = 0; curCandPic < numCandPics; curCandPic++) 359 414 { 360 415 RefPicList eCurRefPicList = REF_PIC_LIST_0 ; 361 416 Int curCandPicRefIdx = 0; 362 if( curCandPic == 0)417 if(curCandPic == 0) 363 418 { 364 eCurRefPicList = RefPicList(currSlice->isInterB() ? 1 -currSlice->getColFromL0Flag() : 0);419 eCurRefPicList = RefPicList(currSlice->isInterB() ? 1 - currSlice->getColFromL0Flag() : 0); 365 420 curCandPicRefIdx = currSlice->getColRefIdx(); 366 421 } … … 370 425 curCandPicRefIdx = this->getRapRefIdx(); 371 426 } 372 TComPic* pcCandColPic = currSlice->getRefPic( eCurRefPicList, curCandPicRefIdx); 373 TComSlice* pcCandColSlice = pcCandColPic->getSlice(0);// currently only support single slice 427 428 TComPic* pcCandColPic = currSlice->getRefPic(eCurRefPicList, curCandPicRefIdx); 429 TComSlice* pcCandColSlice = pcCandColPic->getSlice(0); // currently only support single slice 374 430 375 431 if(!pcCandColSlice->isIntra()) 376 432 { 377 for( Int iColRefDir = 0; iColRefDir < (pcCandColSlice->isInterB() ? 2: 1); iColRefDir ++)378 { 379 for( Int iColRefIdx =0; iColRefIdx < pcCandColSlice->getNumRefIdx(( RefPicList )iColRefDir); iColRefIdx++)433 for(Int iColRefDir = 0; iColRefDir < (pcCandColSlice->isInterB() ? 2 : 1); iColRefDir++) 434 { 435 for(Int iColRefIdx = 0; iColRefIdx < pcCandColSlice->getNumRefIdx((RefPicList)iColRefDir); iColRefIdx++) 380 436 { 381 437 m_abTIVRINCurrRL[curCandPic][iColRefDir][iColRefIdx] = false; 382 438 Int iColViewIdx = pcCandColSlice->getViewIndex(); 383 Int iColRefViewIdx = pcCandColSlice->getRefPic( ( RefPicList)iColRefDir, iColRefIdx)->getViewIndex();439 Int iColRefViewIdx = pcCandColSlice->getRefPic((RefPicList)iColRefDir, iColRefIdx)->getViewIndex(); 384 440 if(iColViewIdx == iColRefViewIdx) 441 { 385 442 continue; 386 387 for(Int iCurrRefDir = 0;(iCurrRefDir < (currSlice->isInterB() ? 2: 1)) && (m_abTIVRINCurrRL[curCandPic][iColRefDir][iColRefIdx] == false ); iCurrRefDir++) 443 } 444 445 for(Int iCurrRefDir = 0; (iCurrRefDir < (currSlice->isInterB() ? 2 : 1)) && (m_abTIVRINCurrRL[curCandPic][iColRefDir][iColRefIdx] == false); iCurrRefDir++) 388 446 { 389 for( Int iCurrRefIdx =0; iCurrRefIdx < currSlice->getNumRefIdx(( RefPicList )iCurrRefDir); iCurrRefIdx++)447 for(Int iCurrRefIdx = 0; iCurrRefIdx < currSlice->getNumRefIdx((RefPicList)iCurrRefDir); iCurrRefIdx++) 390 448 { 391 if( currSlice->getRefPic( ( RefPicList )iCurrRefDir, iCurrRefIdx )->getViewIndex() == iColRefViewIdx)449 if(currSlice->getRefPic((RefPicList)iCurrRefDir, iCurrRefIdx)->getViewIndex() == iColRefViewIdx) 392 450 { 393 451 m_abTIVRINCurrRL[curCandPic][iColRefDir][iColRefIdx] = true; … … 401 459 } 402 460 } 461 403 462 Bool TComPic::isTempIVRefValid(Int currCandPic, Int iColRefDir, Int iColRefIdx) 404 463 { … … 406 465 } 407 466 408 Void TComPic::checkTextureRef( 467 Void TComPic::checkTextureRef() 409 468 { 410 469 TComSlice* pcCurrSlice = getSlice(getCurrSliceIdx()); 411 TComPic* pcTextPic = pcCurrSlice->get TexturePic();470 TComPic* pcTextPic = pcCurrSlice->getIvPic(0, getViewIndex()); 412 471 #if H_3D_FCO 413 472 if ( pcTextPic ) 414 473 { 415 474 #endif 416 417 TComSlice* pcTextSlice = pcTextPic->getSlice(0); // currently only support single slice 418 419 for( Int iTextRefDir = 0; (iTextRefDir < (pcTextSlice->isInterB()? 2:1) ) && !pcTextSlice->isIntra(); iTextRefDir ++ ) 420 { 421 for( Int iTextRefIdx =0; iTextRefIdx<pcTextSlice->getNumRefIdx(( RefPicList )iTextRefDir ); iTextRefIdx++) 422 { 423 Int iTextRefPOC = pcTextSlice->getRefPOC( ( RefPicList )iTextRefDir, iTextRefIdx); 424 Int iTextRefViewId = pcTextSlice->getRefPic( ( RefPicList )iTextRefDir, iTextRefIdx)->getViewIndex(); 425 m_aiTexToDepRef[iTextRefDir][iTextRefIdx] = -1; 426 Int iCurrRefDir = iTextRefDir; 427 for( Int iCurrRefIdx =0; ( iCurrRefIdx<pcCurrSlice->getNumRefIdx(( RefPicList )iCurrRefDir ) ) && ( m_aiTexToDepRef[iTextRefDir][iTextRefIdx] < 0 ) ; iCurrRefIdx++) 428 { 429 if( pcCurrSlice->getRefPOC( ( RefPicList )iCurrRefDir, iCurrRefIdx ) == iTextRefPOC && 430 pcCurrSlice->getRefPic( ( RefPicList )iCurrRefDir, iCurrRefIdx)->getViewIndex() == iTextRefViewId ) 431 { 432 m_aiTexToDepRef[iTextRefDir][iTextRefIdx] = iCurrRefIdx; 475 TComSlice* pcTextSlice = pcTextPic->getSlice(0); // currently only support single slice 476 477 for(Int iTextRefDir = 0; (iTextRefDir < (pcTextSlice->isInterB() ? 2 :1) ) && !pcTextSlice->isIntra(); iTextRefDir++) 478 { 479 for(Int iTextRefIdx =0; iTextRefIdx < pcTextSlice->getNumRefIdx((RefPicList)iTextRefDir); iTextRefIdx++) 480 { 481 Int iTextRefPOC = pcTextSlice->getRefPOC((RefPicList)iTextRefDir, iTextRefIdx); 482 Int iTextRefViewId = pcTextSlice->getRefPic((RefPicList)iTextRefDir, iTextRefIdx)->getViewIndex(); 483 m_aiTexToDepRef[iTextRefDir][iTextRefIdx] = -1; 484 Int iCurrRefDir = iTextRefDir; 485 486 for(Int iCurrRefIdx = 0; (iCurrRefIdx<pcCurrSlice->getNumRefIdx((RefPicList)iCurrRefDir)) && (m_aiTexToDepRef[iTextRefDir][iTextRefIdx] < 0); iCurrRefIdx++) 487 { 488 if(pcCurrSlice->getRefPOC((RefPicList)iCurrRefDir, iCurrRefIdx ) == iTextRefPOC && 489 pcCurrSlice->getRefPic((RefPicList)iCurrRefDir, iCurrRefIdx)->getViewIndex() == iTextRefViewId) 490 { 491 m_aiTexToDepRef[iTextRefDir][iTextRefIdx] = iCurrRefIdx; 492 } 433 493 } 434 494 } 435 495 } 436 437 }438 496 #if H_3D_FCO 439 497 } 440 498 #endif 441 442 499 } 443 500 … … 447 504 } 448 505 #endif 506 507 449 508 //! \}
Note: See TracChangeset for help on using the changeset viewer.