public static void run(Scenario scenario) { DestinationChoiceContext dcContext = new DestinationChoiceContext(scenario); dcContext.init(); DCScoringFunctionFactory dcScoringFunctionFactory = new DCScoringFunctionFactory(scenario, dcContext); DestinationChoiceConfigGroup dccg = ConfigUtils.addOrGetModule( dcContext.getScenario().getConfig(), DestinationChoiceConfigGroup.class); if (dccg.getPrefsFile() == null && !scenario.getConfig().facilities().getInputFile().equals("null")) { dcScoringFunctionFactory.setUsingConfigParamsForScoring(false); } else { dcScoringFunctionFactory.setUsingConfigParamsForScoring(true); } Controler controler = new Controler(scenario); controler.addControlerListener(new DestinationChoiceInitializer(dcContext)); if (dccg.getRestraintFcnExp() > 0.0 && dccg.getRestraintFcnFactor() > 0.0) { controler.addControlerListener(new FacilitiesLoadCalculator(dcContext.getFacilityPenalties())); } controler.setScoringFunctionFactory(dcScoringFunctionFactory); controler.run(); }
OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles : OutputDirectoryHierarchy.OverwriteFileSetting.failIfDirectoryExists); matsimControler.addControlerListener(this);
matsimControler.addControlerListener(new SlaveScoreWriter(this)); matsimControler.addControlerListener(this);
matsimControler.addControlerListener(mobSimSwitcher);
@Test public void testIntegration() { final Config cfg = this.util.loadConfig("test/scenarios/pt-tutorial/0.config.xml"); cfg.controler().setLastIteration(0); final Scenario s = ScenarioUtils.loadScenario(cfg); final Controler c = new Controler(s); final TransitLoad transitload = new TransitLoad(); c.addControlerListener(new StartupListener() { @Override public void notifyStartup(StartupEvent event) { c.getEvents().addHandler(transitload); } }); cfg.controler().setWritePlansInterval(0); c.getConfig().controler().setCreateGraphs(false); c.getConfig().controler().setWriteEventsInterval(0); c.getConfig().controler().setDumpDataAtEnd(false); c.run(); TransitLine line = s.getTransitSchedule().getTransitLines().get(Id.create("Blue Line", TransitLine.class)); TransitRoute route = line.getRoutes().get(Id.create("1to3", TransitRoute.class)); TransitStopFacility stopFacility = s.getTransitSchedule().getFacilities().get(Id.create("2a", TransitStopFacility.class)); Departure departure = route.getDepartures().get(Id.create("07", Departure.class)); int load = transitload.getLoadAtDeparture(line, route, stopFacility, departure); Assert.assertEquals("wrong number of passengers.", 4, load); } }
@Test public final void testModesInvertedNetworkRouting() { InvertedNetworkRoutingTestFixture f = new InvertedNetworkRoutingTestFixture(true, false, false); f.scenario.getConfig().controler().setOutputDirectory(testUtils.getOutputDirectory()); Controler c = new Controler(f.scenario); c.getConfig().controler().setDumpDataAtEnd(false); c.getConfig().controler().setCreateGraphs(false); final InvertedNetworkRoutingTestEventHandler testHandler = new InvertedNetworkRoutingTestEventHandler(); c.addControlerListener(new StartupListener(){ @Override public void notifyStartup(StartupEvent event) { event.getServices().getEvents().addHandler(testHandler); } }); c.run(); Assert.assertTrue("No traffic on link", testHandler.hadTrafficOnLink25); }
@Test public final void testLanesInvertedNetworkRouting() { InvertedNetworkRoutingTestFixture f = new InvertedNetworkRoutingTestFixture(false, true, false); f.scenario.getConfig().controler().setOutputDirectory(testUtils.getOutputDirectory()); Controler c = new Controler(f.scenario); c.getConfig().controler().setDumpDataAtEnd(false); c.getConfig().controler().setCreateGraphs(false); final InvertedNetworkRoutingTestEventHandler testHandler = new InvertedNetworkRoutingTestEventHandler(); c.addControlerListener(new StartupListener(){ @Override public void notifyStartup(StartupEvent event) { event.getServices().getEvents().addHandler(testHandler); } }); c.run(); Assert.assertTrue("No traffic on link", testHandler.hadTrafficOnLink25); }
@Test public final void testModesNotInvertedNetworkRouting() { InvertedNetworkRoutingTestFixture f = new InvertedNetworkRoutingTestFixture(true, false, false); f.scenario.getConfig().controler().setOutputDirectory(testUtils.getOutputDirectory()); f.scenario.getConfig().controler().setLinkToLinkRoutingEnabled(false); f.scenario.getConfig().travelTimeCalculator().setCalculateLinkToLinkTravelTimes(false); Controler c = new Controler(f.scenario); //c.addOverridingModule(new InvertedNetworkRoutingGuiceModule()); c.getConfig().controler().setDumpDataAtEnd(false); c.getConfig().controler().setCreateGraphs(false); final InvertedNetworkRoutingTestEventHandler testHandler = new InvertedNetworkRoutingTestEventHandler(); c.addControlerListener(new StartupListener(){ @Override public void notifyStartup(StartupEvent event) { event.getServices().getEvents().addHandler(testHandler); } }); c.run(); Assert.assertTrue("No traffic on link", testHandler.hadTrafficOnLink25); } }
controler.addControlerListener(this);
controler.addControlerListener(new StartupListener() { @Override public void notifyStartup(StartupEvent event) {