本文整理汇总了C++中MESegment::setRouteProbe方法的典型用法代码示例。如果您正苦于以下问题:C++ MESegment::setRouteProbe方法的具体用法?C++ MESegment::setRouteProbe怎么用?C++ MESegment::setRouteProbe使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MESegment
的用法示例。
在下文中一共展示了MESegment::setRouteProbe方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: throw
MSRouteProbe::MSRouteProbe(const std::string &id, const MSEdge *edge, SUMOTime begin) throw()
: Named(id), myCurrentRouteDistribution(0) {
const std::string distID = id + "_" + toString(begin);
myCurrentRouteDistribution = MSRoute::distDictionary(distID);
if (myCurrentRouteDistribution == 0) {
myCurrentRouteDistribution = new RandomDistributor<const MSRoute*>();
MSRoute::dictionary(distID, myCurrentRouteDistribution);
}
#ifdef HAVE_MESOSIM
if (MSGlobals::gUseMesoSim) {
MESegment *seg = MSGlobals::gMesoNet->getSegmentForEdge(*edge);
while (seg!=0) {
seg->setRouteProbe(this);
seg = seg->getNextSegment();
}
return;
}
#endif
std::vector<MSLane*>::const_iterator it = edge->getLanes().begin();
myEntryReminder = new MSRouteProbe::EntryReminder(*it, *this);
for (++it; it!=edge->getLanes().end(); ++it) {
(*it)->addMoveReminder(myEntryReminder);
}
}