void GeoSphere::ProcessSplitResults() { // now handle the single split results that define the base level of the quad tree { std::deque<SSingleSplitResult*>::iterator iter = mSingleSplitResults.begin(); while(iter!=mSingleSplitResults.end()) { // finally pass SplitResults SSingleSplitResult *psr = (*iter); const int32_t faceIdx = psr->face(); if( m_patches[faceIdx] ) { m_patches[faceIdx]->ReceiveHeightmap(psr); } else { psr->OnCancel(); } // tidyup delete psr; // Next! ++iter; } mSingleSplitResults.clear(); } // now handle the quad split results { std::deque<SQuadSplitResult*>::iterator iter = mQuadSplitResults.begin(); while(iter!=mQuadSplitResults.end()) { // finally pass SplitResults SQuadSplitResult *psr = (*iter); const int32_t faceIdx = psr->face(); if( m_patches[faceIdx] ) { m_patches[faceIdx]->ReceiveHeightmaps(psr); } else { psr->OnCancel(); } // tidyup delete psr; // Next! ++iter; } mQuadSplitResults.clear(); } }