From 8c530c87cd7c7118bec11a2c52fb111cf0f46b37 Mon Sep 17 00:00:00 2001 From: Arndt Date: Sun, 11 Dec 2016 19:33:21 +0100 Subject: [PATCH] parameter to avoid supression of unused tags --- .../src/main/java/btools/router/ProfileCache.java | 5 +++++ .../src/main/java/btools/router/RoutingContext.java | 4 ++++ .../main/java/btools/expressions/BExpressionContext.java | 8 ++++++++ misc/profiles2/car-traffic_analysis.brf | 1 + misc/profiles2/dummy.brf | 4 ++++ 5 files changed, 22 insertions(+) diff --git a/brouter-core/src/main/java/btools/router/ProfileCache.java b/brouter-core/src/main/java/btools/router/ProfileCache.java index 34c71a3..1a71d4b 100644 --- a/brouter-core/src/main/java/btools/router/ProfileCache.java +++ b/brouter-core/src/main/java/btools/router/ProfileCache.java @@ -75,6 +75,11 @@ public final class ProfileCache rc.expctxWay.parseFile( profileFile, "global" ); rc.expctxNode.parseFile( profileFile, "global" ); + if ( rc.processUnusedTags ) + { + rc.expctxWay.setAllTagsUsed(); + } + lastProfileTimestamp = profileFile.lastModified(); lastLookupTimestamp = lookupFile.lastModified(); lastProfileFile = profileFile; diff --git a/brouter-core/src/main/java/btools/router/RoutingContext.java b/brouter-core/src/main/java/btools/router/RoutingContext.java index 0195209..815afe0 100644 --- a/brouter-core/src/main/java/btools/router/RoutingContext.java +++ b/brouter-core/src/main/java/btools/router/RoutingContext.java @@ -54,6 +54,7 @@ public final class RoutingContext public boolean carMode; public boolean bikeMode; public boolean considerTurnRestrictions; + public boolean processUnusedTags; public boolean forceSecondaryData; public double pass1coefficient; public double pass2coefficient; @@ -84,6 +85,9 @@ public final class RoutingContext // turn-restrictions used per default for car profiles considerTurnRestrictions = 0.f != expctxGlobal.getVariableValue( "considerTurnRestrictions", carMode ? 1.f : 0.f ); + // process tags not used in the profile (to have them in the data-tab) + processUnusedTags = 0.f != expctxGlobal.getVariableValue( "processUnusedTags", 0.f ); + forceSecondaryData = 0.f != expctxGlobal.getVariableValue( "forceSecondaryData", 0.f ); pass1coefficient = expctxGlobal.getVariableValue( "pass1coefficient", 1.5f ); pass2coefficient = expctxGlobal.getVariableValue( "pass2coefficient", 0.f ); diff --git a/brouter-expressions/src/main/java/btools/expressions/BExpressionContext.java b/brouter-expressions/src/main/java/btools/expressions/BExpressionContext.java index 03e537c..5de08b0 100644 --- a/brouter-expressions/src/main/java/btools/expressions/BExpressionContext.java +++ b/brouter-expressions/src/main/java/btools/expressions/BExpressionContext.java @@ -777,6 +777,14 @@ public abstract class BExpressionContext implements IByteArrayUnifier return idx < lookupIdxUsed.length ? lookupIdxUsed[idx] : false; } + public final void setAllTagsUsed() + { + for( int i=0; i