42 #ifdef CHECK_MEMORY_LEAKS
44 #endif // CHECK_MEMORY_LEAKS
64 "' has to be given in the definition of flow '" +
id +
"'.");
72 "' are allowed in flow '" +
id +
"'.");
79 "' is needed in flow '" +
id +
"'.");
94 #ifdef HAVE_SUBSECOND_TIMESTEPS
103 if (ok && vph <= 0) {
105 throw ProcessError(
"Invalid repetition rate in the definition of flow '" +
id +
"'.");
107 if (ok && vph != 0) {
112 ret->
depart = beginDefault;
116 if (ok && ret->
depart < 0) {
118 throw ProcessError(
"Negative begin time in the definition of flow '" +
id +
"'.");
127 if (ok && end <= ret->depart) {
129 throw ProcessError(
"Flow '" +
id +
"' ends before or at its begin time.");
135 WRITE_WARNING(
"Flow '" +
id +
"' has 0 vehicles; will skip it...");
139 throw ProcessError(
"Negative repetition number in the definition of flow '" +
id +
"'.");
148 throw ProcessError(
"Invalid repetition rate in the definition of flow '" +
id +
"'.");
166 bool optionalID,
bool skipDepart) {
168 std::string id, errorMsg;
177 "' have to be given both in the definition of '" +
id +
"'.");
189 if (helper ==
"triggered") {
194 if (ok && ret->
depart < 0) {
195 errorMsg =
"Negative departure time in the definition of '" +
id +
"'.";
202 WRITE_WARNING(
"period and repno are deprecated in vehicle '" +
id +
"', use flows instead.");
204 #ifdef HAVE_SUBSECOND_TIMESTEPS
417 CFAttrMap::const_iterator cf_it;
418 for (cf_it = allowedAttrs.begin(); cf_it != allowedAttrs.end(); cf_it++) {
419 if (cf_it->first == element) {
423 if (cf_it == allowedAttrs.end()) {
427 WRITE_ERROR(
"Unknown cfmodel when parsing vtype '" + into.
id +
"'");
436 for (std::set<SumoXMLAttr>::const_iterator it = cf_it->second.begin(); it != cf_it->second.end(); it++) {
441 +
" in car following model '" +
toString(into.
cfModel) +
"' lower than simulation step size may cause collisions");
455 std::set<SumoXMLAttr> krausParams;
464 std::set<SumoXMLAttr> smartSKParams;
476 std::set<SumoXMLAttr> daniel1Params;
488 std::set<SumoXMLAttr> pwagParams;
497 std::set<SumoXMLAttr> idmParams;
505 std::set<SumoXMLAttr> idmmParams;
514 std::set<SumoXMLAttr> bkernerParams;
522 std::set<SumoXMLAttr> wiedemannParams;
535 const std::string&
id) {