本文整理汇总了C++中Road::getBlockades方法的典型用法代码示例。如果您正苦于以下问题:C++ Road::getBlockades方法的具体用法?C++ Road::getBlockades怎么用?C++ Road::getBlockades使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Road
的用法示例。
在下文中一共展示了Road::getBlockades方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: updateBlockades
void WorldModel::updateBlockades()
{
for (set<Blockade *>::iterator blockade = blockades.begin(); blockade != blockades.end(); blockade++)
{
if ((*blockade)->getLastClearTime() == m_time - 1 && (*blockade)->getLastCycleUpdated() != m_time)
{
LOG(Main, 1) << "I cleared blockade: " << (*blockade)->getId() << endl;
Road *r = (Road*) objects[(*blockade)->getPosition()];
for (vector<Blockade*>::iterator i = r->getBlockades().begin(); i != r->getBlockades().end(); i++)
{
if ((*i)->getId() == (*blockade)->getId())
{
r->getBlockades().erase(i);
break;
}
}
objects[(*blockade)->getId()] = NULL;
blockades.erase(blockade);
}
}
for (int i = 0; i < roads.size(); i++)
{
if (roads[i]->getLastCycleUpdatedBySense() == m_time)
{
roads[i]->clearBlockades();
for (int j = 0; j < (int) roads[i]->getBlockadeIds().size(); j++)
{
roads[i]->addBlockade((Blockade*) objects[roads[i]->getBlockadeIds()[j]]);
}
}
}
}