MATSIM
core
mobsim
qsim
qnetsimengine
RunConfigurableQNetworkFactoryExample.java
Go to the documentation of this file.
1
/* *********************************************************************** *
2
* project: org.matsim.* *
3
* *
4
* *********************************************************************** *
5
* *
6
* copyright : (C) 2008 by the members listed in the COPYING, *
7
* LICENSE and WARRANTY file. *
8
* email : info at matsim dot org *
9
* *
10
* *********************************************************************** *
11
* *
12
* This program is free software; you can redistribute it and/or modify *
13
* it under the terms of the GNU General Public License as published by *
14
* the Free Software Foundation; either version 2 of the License, or *
15
* (at your option) any later version. *
16
* See also COPYING, LICENSE and WARRANTY file *
17
* *
18
* *********************************************************************** */
19
package
org.matsim.core.mobsim.qsim.qnetsimengine;
20
21
import
org
.
matsim
.
api
.
core
.
v01
.
Scenario
;
22
import
org
.
matsim
.
api
.
core
.
v01
.
network
.
Link
;
23
import
org
.
matsim
.
core
.
api
.
experimental
.
events
.
EventsManager
;
24
import
org
.
matsim
.
core
.
config
.
Config
;
25
import
org
.
matsim
.
core
.
config
.
ConfigUtils
;
26
import
org
.
matsim
.
core
.
controler
.
Controler
;
27
import
org
.
matsim
.
core
.
mobsim
.
qsim
.
AbstractQSimModule
;
28
import
org
.
matsim
.
core
.
mobsim
.
qsim
.
qnetsimengine
.
linkspeedcalculator
.
LinkSpeedCalculator
;
29
import
org
.
matsim
.
core
.
scenario
.
ScenarioUtils
;
30
35
public
class
RunConfigurableQNetworkFactoryExample
{
36
37
public
static
void
main
(String[] args) {
38
39
Config
config =
ConfigUtils
.
createConfig
(args[0]) ;
40
41
run(config);
42
43
}
44
45
static
void
run(
Config
config) {
46
final
Scenario
scenario =
ScenarioUtils
.
createScenario
( config ) ;
47
48
Controler
controler =
new
Controler
( scenario ) ;
49
50
final
EventsManager
events = controler.
getEvents
() ;
51
52
controler.
addOverridingQSimModule
(
new
AbstractQSimModule
(){
53
@Override
public
void
configureQSim() {
54
final
ConfigurableQNetworkFactory
factory =
new
ConfigurableQNetworkFactory
(events, scenario);
55
factory.
setLinkSpeedCalculator
(
new
LinkSpeedCalculator
(){
56
@Override
public
double
getMaximumVelocity(
QVehicle
vehicle,
Link
link,
double
time ){
57
return
1.;
// replace by something meaningful
58
}
59
} );
60
factory.
setTurnAcceptanceLogic
(
new
DefaultTurnAcceptanceLogic
());
// You would obviously set something else than the default
61
bind(
QNetworkFactory
.class).toInstance(factory);
62
// NOTE: Other than when using a provider, this uses the same factory instance over all iterations, re-configuring
63
// it in every iteration via the initializeFactory(...) method. kai, mar'16
64
}
65
});
66
67
controler.
run
();
68
}
69
70
}
org.matsim.api.core.v01.network
Definition:
Link.java:20
org.matsim.core.mobsim.qsim.qnetsimengine.RunConfigurableQNetworkFactoryExample
Definition:
RunConfigurableQNetworkFactoryExample.java:35
org.matsim.core.controler.Controler.getEvents
final EventsManager getEvents()
Definition:
Controler.java:328
org.matsim.core.mobsim.qsim.AbstractQSimModule
Definition:
AbstractQSimModule.java:39
org.matsim.core.mobsim.qsim.qnetsimengine.DefaultTurnAcceptanceLogic
Definition:
DefaultTurnAcceptanceLogic.java:35
org.matsim.core.mobsim.qsim.qnetsimengine.ConfigurableQNetworkFactory
Definition:
ConfigurableQNetworkFactory.java:47
org
org.matsim.core.config.Config
Definition:
Config.java:73
org.matsim.core.config
Definition:
CommandLine.java:22
org.matsim.core.mobsim.qsim.qnetsimengine.ConfigurableQNetworkFactory.setLinkSpeedCalculator
final void setLinkSpeedCalculator(LinkSpeedCalculator linkSpeedCalculator)
Definition:
ConfigurableQNetworkFactory.java:108
org.matsim.core.mobsim.qsim.qnetsimengine
Definition:
AbstractAgentSnapshotInfoBuilder.java:20
org.matsim.core.config.ConfigUtils
Definition:
ConfigUtils.java:41
org.matsim.core.mobsim
Definition:
DefaultMobsimModule.java:23
org.matsim.api
org.matsim.core.controler
Definition:
AbstractController.java:20
org.matsim.core
org.matsim.core.mobsim.qsim.qnetsimengine.QVehicle
Definition:
QVehicle.java:28
org.matsim.api.core.v01.Scenario
Definition:
Scenario.java:76
org.matsim.core.scenario
Definition:
CustomizableImpl.java:19
org.matsim.core.mobsim.qsim.qnetsimengine.QNetworkFactory
Definition:
QNetworkFactory.java:44
org.matsim.core.mobsim.qsim.qnetsimengine.linkspeedcalculator
Definition:
LinkSpeedCalculator.java:20
org.matsim.core.mobsim.qsim.qnetsimengine.linkspeedcalculator.LinkSpeedCalculator
Definition:
LinkSpeedCalculator.java:38
org.matsim.api.core
org.matsim.core.controler.Controler.run
final void run()
Definition:
Controler.java:247
org.matsim.core.api.experimental.events
Definition:
AgentWaitingForPtEvent.java:20
org.matsim.core.api.experimental.events.EventsManager
Definition:
EventsManager.java:31
org.matsim.core.api.experimental
org.matsim.core.mobsim.qsim.qnetsimengine.RunConfigurableQNetworkFactoryExample.main
static void main(String[] args)
Definition:
RunConfigurableQNetworkFactoryExample.java:37
org.matsim.core.api
org.matsim
org.matsim.api.core.v01.network.Link
Definition:
Link.java:34
org.matsim.core.controler.Controler.addOverridingQSimModule
final Controler addOverridingQSimModule(AbstractQSimModule qsimModule)
Definition:
Controler.java:489
org.matsim.core.mobsim.qsim.qnetsimengine.ConfigurableQNetworkFactory.setTurnAcceptanceLogic
final void setTurnAcceptanceLogic(TurnAcceptanceLogic turnAcceptanceLogic)
Definition:
ConfigurableQNetworkFactory.java:112
org.matsim.core.scenario.ScenarioUtils
Definition:
ScenarioUtils.java:45
org.matsim.core.scenario.ScenarioUtils.createScenario
static Scenario createScenario(final Config config)
Definition:
ScenarioUtils.java:63
org.matsim.core.mobsim.qsim
Definition:
AbstractQSimModule.java:22
org.matsim.api.core.v01
Definition:
BasicLocation.java:20
org.matsim.core.controler.Controler
Definition:
Controler.java:68
org.matsim.core.config.ConfigUtils.createConfig
static Config createConfig(final String context)
Definition:
ConfigUtils.java:44
Generated by
1.8.13