MATSIM
ch
sbb
matsim
routing
pt
raptor
SwissRailRaptorModule.java
Go to the documentation of this file.
1
/* *********************************************************************** *
2
* project: org.matsim.* *
3
*
4
* *
5
* *********************************************************************** *
6
* *
7
* copyright : (C) 2023 by the members listed in the COPYING, *
8
* LICENSE and WARRANTY file. *
9
* email : info at matsim dot org *
10
* *
11
* *********************************************************************** *
12
* *
13
* This program is free software; you can redistribute it and/or modify *
14
* it under the terms of the GNU General Public License as published by *
15
* the Free Software Foundation; either version 2 of the License, or *
16
* (at your option) any later version. *
17
* See also COPYING, LICENSE and WARRANTY file *
18
* *
19
* *********************************************************************** */
20
21
package
ch.sbb.matsim.routing.pt.raptor;
22
23
import
ch
.
sbb
.
matsim
.
config
.
SwissRailRaptorConfigGroup
;
24
import
org
.
matsim
.
core
.
config
.
ConfigUtils
;
25
import
org
.
matsim
.
core
.
controler
.
AbstractModule
;
26
import
org
.
matsim
.
pt
.
router
.
TransitRouter
;
27
31
public
class
SwissRailRaptorModule
extends
AbstractModule
{
32
33
private
final
OccupancyData
occupancyData
=
new
OccupancyData
();
34
35
public
OccupancyData
getExecutionData
() {
36
return
this.
occupancyData
;
37
}
38
39
@Override
40
public
void
install
() {
41
if
(
getConfig
().transit().isUseTransit()) {
42
bind(
TransitRouter
.class).toProvider(
SwissRailRaptorFactory
.class);
43
bind(
SwissRailRaptor
.class).toProvider(
SwissRailRaptorFactory
.class);
44
45
for
(String mode :
getConfig
().transit().getTransitModes()) {
46
addRoutingModuleBinding
(mode).toProvider(
SwissRailRaptorRoutingModuleProvider
.class);
47
}
48
49
SwissRailRaptorConfigGroup
srrConfig =
ConfigUtils
.
addOrGetModule
(
getConfig
(),
SwissRailRaptorConfigGroup
.class);
50
51
if
(srrConfig.
isUseRangeQuery
()) {
52
bind(
RaptorRouteSelector
.class).to(
ConfigurableRaptorRouteSelector
.class);
53
}
else
{
54
bind(
RaptorRouteSelector
.class).to(
LeastCostRaptorRouteSelector
.class);
// just a simple default in case it ever gets used.
55
}
56
57
switch
(srrConfig.
getScoringParameters
()) {
58
case
Default:
59
bind(
RaptorParametersForPerson
.class).to(
DefaultRaptorParametersForPerson
.class);
60
break
;
61
case
Individual:
62
bind(
RaptorParametersForPerson
.class).to(
IndividualRaptorParametersForPerson
.class);
63
break
;
64
}
65
66
bind(
RaptorStopFinder
.class).to(
DefaultRaptorStopFinder
.class);
67
68
boolean
useCapacityConstraints = srrConfig.
isUseCapacityConstraints
();
69
bind(
OccupancyData
.class).toInstance(this.occupancyData);
70
if
(useCapacityConstraints) {
71
addEventHandlerBinding
().to(
OccupancyTracker
.class);
72
}
73
74
bind(
RaptorIntermodalAccessEgress
.class).to(
DefaultRaptorIntermodalAccessEgress
.class);
75
bind(
RaptorInVehicleCostCalculator
.class).to(
DefaultRaptorInVehicleCostCalculator
.class);
76
bind(
RaptorTransferCostCalculator
.class).to(
DefaultRaptorTransferCostCalculator
.class);
77
}
78
79
}
80
81
}
ch.sbb.matsim.routing.pt.raptor.RaptorIntermodalAccessEgress
Definition:
RaptorIntermodalAccessEgress.java:32
ch.sbb.matsim.routing.pt.raptor.SwissRailRaptorFactory
Definition:
SwissRailRaptorFactory.java:39
ch.sbb.matsim.routing.pt.raptor.OccupancyTracker
Definition:
OccupancyTracker.java:72
ch.sbb.matsim.routing.pt.raptor.SwissRailRaptorModule.getExecutionData
OccupancyData getExecutionData()
Definition:
SwissRailRaptorModule.java:35
org.matsim.pt
org.matsim.core.config.ConfigUtils.addOrGetModule
static< T extends ConfigGroup > T addOrGetModule(Config config, Class< T > moduleClass)
Definition:
ConfigUtils.java:281
ch.sbb.matsim.routing.pt.raptor.SwissRailRaptor
Definition:
SwissRailRaptor.java:56
ch.sbb.matsim.config
Definition:
SwissRailRaptorConfigGroup.java:20
org
ch.sbb.matsim.routing.pt.raptor.ConfigurableRaptorRouteSelector
Definition:
ConfigurableRaptorRouteSelector.java:43
ch.sbb.matsim.config.SwissRailRaptorConfigGroup.isUseRangeQuery
boolean isUseRangeQuery()
Definition:
SwissRailRaptorConfigGroup.java:153
org.matsim.core.config
Definition:
CommandLine.java:22
ch.sbb.matsim.routing.pt.raptor.DefaultRaptorParametersForPerson
Definition:
DefaultRaptorParametersForPerson.java:33
ch.sbb.matsim.config.SwissRailRaptorConfigGroup.isUseCapacityConstraints
boolean isUseCapacityConstraints()
Definition:
SwissRailRaptorConfigGroup.java:203
ch.sbb.matsim.routing.pt.raptor.SwissRailRaptorModule
Definition:
SwissRailRaptorModule.java:31
org.matsim.core.config.ConfigUtils
Definition:
ConfigUtils.java:41
ch.sbb.matsim.routing.pt.raptor.RaptorInVehicleCostCalculator
Definition:
RaptorInVehicleCostCalculator.java:28
ch
org.matsim.core.controler
Definition:
AbstractController.java:20
org.matsim.core
ch.sbb.matsim.routing.pt.raptor.DefaultRaptorTransferCostCalculator
Definition:
DefaultRaptorTransferCostCalculator.java:27
org.matsim.core.controler.AbstractModule.addRoutingModuleBinding
final LinkedBindingBuilder< RoutingModule > addRoutingModuleBinding(String mode)
Definition:
AbstractModule.java:207
ch.sbb.matsim.routing.pt.raptor.DefaultRaptorInVehicleCostCalculator
Definition:
DefaultRaptorInVehicleCostCalculator.java:28
ch.sbb.matsim.config.SwissRailRaptorConfigGroup
Definition:
SwissRailRaptorConfigGroup.java:44
ch.sbb.matsim.routing.pt.raptor.RaptorStopFinder
Definition:
RaptorStopFinder.java:34
ch.sbb.matsim.routing.pt.raptor.DefaultRaptorStopFinder
Definition:
DefaultRaptorStopFinder.java:63
org.matsim.pt.router
Definition:
PreparedTransitSchedule.java:20
org.matsim.pt.router.TransitRouter
Definition:
TransitRouter.java:30
ch.sbb.matsim.routing.pt.raptor.OccupancyData
Definition:
OccupancyData.java:45
org.matsim.core.controler.AbstractModule.addEventHandlerBinding
final LinkedBindingBuilder< EventHandler > addEventHandlerBinding()
Definition:
AbstractModule.java:129
ch.sbb.matsim.routing.pt.raptor.RaptorRouteSelector
Definition:
RaptorRouteSelector.java:28
ch.sbb.matsim.routing.pt.raptor.RaptorTransferCostCalculator
Definition:
RaptorTransferCostCalculator.java:28
ch.sbb.matsim.routing.pt.raptor.SwissRailRaptorModule.occupancyData
final OccupancyData occupancyData
Definition:
SwissRailRaptorModule.java:33
ch.sbb.matsim.routing.pt.raptor.LeastCostRaptorRouteSelector
Definition:
LeastCostRaptorRouteSelector.java:35
ch.sbb.matsim
ch.sbb.matsim.routing.pt.raptor.RaptorParametersForPerson
Definition:
RaptorParametersForPerson.java:27
ch.sbb.matsim.routing.pt.raptor.IndividualRaptorParametersForPerson
Definition:
IndividualRaptorParametersForPerson.java:41
ch.sbb.matsim.routing.pt.raptor.DefaultRaptorIntermodalAccessEgress
Definition:
DefaultRaptorIntermodalAccessEgress.java:38
ch.sbb
org.matsim.core.controler.AbstractModule
Definition:
AbstractModule.java:76
org.matsim
org.matsim.core.controler.AbstractModule.getConfig
final Config getConfig()
Definition:
AbstractModule.java:120
ch.sbb.matsim.routing.pt.raptor.SwissRailRaptorModule.install
void install()
Definition:
SwissRailRaptorModule.java:40
ch.sbb.matsim.routing.pt.raptor.SwissRailRaptorRoutingModuleProvider
Definition:
SwissRailRaptorRoutingModuleProvider.java:36
ch.sbb.matsim.config.SwissRailRaptorConfigGroup.getScoringParameters
ScoringParameters getScoringParameters()
Definition:
SwissRailRaptorConfigGroup.java:213
Generated by
1.8.13