void Road::accept(ScenarioVisitor &visitor) { visitor.visit(*this); vector<Lane>::iterator it = m_listOfLanes.begin(); while (it != m_listOfLanes.end()) { (*it++).accept(visitor); } }
void Polygon::accept(ScenarioVisitor &visitor) { visitor.visit(*this); vector<Vertex3>::iterator it = m_listOfVertices.begin(); while (it != m_listOfVertices.end()) { (*it).accept(visitor); it++; } }
void Scenario::accept(ScenarioVisitor &visitor) { visitor.visit(*this); m_header.accept(visitor); m_ground.accept(visitor); vector<Layer>::iterator it = m_listOfLayers.begin(); while (it != m_listOfLayers.end()) { (*it++).accept(visitor); } }
void Layer::accept(ScenarioVisitor &visitor) { visitor.visit(*this); vector<Road>::iterator it = m_listOfRoads.begin(); while (it != m_listOfRoads.end()) { (*it++).accept(visitor); } vector<Zone>::iterator jt = m_listOfZones.begin(); while (jt != m_listOfZones.end()) { (*jt++).accept(visitor); } }
void Zone::accept(ScenarioVisitor &visitor) { visitor.visit(*this); m_perimeter.accept(visitor); vector<Connector>::iterator it = m_listOfConnectors.begin(); while (it != m_listOfConnectors.end()) { (*it++).accept(visitor); } vector<Spot>::iterator jt = m_listOfSpots.begin(); while (jt != m_listOfSpots.end()) { (*jt++).accept(visitor); } }
void LaneModel::accept(ScenarioVisitor &visitor) { visitor.visit(*this); m_laneAttribute.accept(visitor); vector<TrafficControl*>::iterator it = m_listOfTrafficControls.begin(); while (it != m_listOfTrafficControls.end()) { TrafficControl *tc = (*it++); if (tc != NULL) { tc->accept(visitor); } } vector<Connector>::iterator jt = m_listOfConnectors.begin(); while (jt != m_listOfConnectors.end()) { (*jt++).accept(visitor); } }