All Downloads are FREE. Search and download functionalities are using the official Maven repository.

edu.kit.ifv.mobitopp.simulation.bikesharing.BikeSharingDataForZone Maven / Gradle / Ivy

Go to download

mobiTopp (http://mobitopp.ifv.kit.edu/) is an agent-based travel demand model developed at the Institute for transport studies at the Karlsruhe Institute of Technology (http://www.ifv.kit.edu/english/index.php). Publications about mobiTopp can be found on the project site (http://mobitopp.ifv.kit.edu/28.php).

The newest version!
package edu.kit.ifv.mobitopp.simulation.bikesharing;

import edu.kit.ifv.mobitopp.simulation.Person;

public interface BikeSharingDataForZone {

	/**
	 * Returns whether bike sharing in general is available. Bike sharing is available as soon as one company provides a service area.
	 * 
	 * @return if bike sharing in general is available in this zone
	 */
	boolean isBikeSharingArea();
	
	/**
	 * Returns whether this zone is a service area of the bike. If it is a service area, the bike can be returned in this zone.
	 * 
	 * @param bike used {@link Bike}
	 * @return if the owner of the {@link Bike} offers bike sharing in this zone
	 */
	boolean isBikeSharingAreaFor(Bike bike);

	boolean isBikeAvailableFor(Person person);

	/**
	 * Book a {@link Bike} for the given {@link Person}. The {@link Bike} can only be
	 * booked, if one is available. The availability of a bike must be checked in advance via
	 * {@link #isBikeAvailableFor(Person)}
	 * 
	 * @param person to book a bike for
	 * @return booked {@link Bike}
	 * @throws IllegalStateException if {@link Bike} should be booked but is not available
	 */
	Bike bookBike(Person person);

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy