https://github.com/wilkeraziz/mosesdecoder
Raw File
Tip revision: 2ec5207db1493a3580a4c2dc3aab4fc65ed528d5 authored by Hieu Hoang on 16 September 2015, 12:31:36 UTC
int warnings
Tip revision: 2ec5207
TrellisPathCollection.cpp
#include "TrellisPathCollection.h"

namespace Moses
{

void TrellisPathCollection::Prune(size_t newSize)
{
  size_t currSize = m_collection.size();

  if (currSize <= newSize)
    return; // don't need to prune

  CollectionType::reverse_iterator iterRev;
  for (iterRev = m_collection.rbegin() ; iterRev != m_collection.rend() ; ++iterRev) {
    TrellisPath *trellisPath = *iterRev;
    delete trellisPath;

    currSize--;
    if (currSize == newSize)
      break;
  }

  // delete path in m_collection
  CollectionType::iterator iter = m_collection.begin();
  for (size_t i = 0 ; i < newSize ; ++i)
    iter++;

  m_collection.erase(iter, m_collection.end());
}

}


back to top