org.onebusaway.transit_data_federation.services.blocks
Class FrequencyBlockTripIndex
java.lang.Object
org.onebusaway.transit_data_federation.services.blocks.AbstractBlockTripIndex
org.onebusaway.transit_data_federation.services.blocks.FrequencyBlockTripIndex
- All Implemented Interfaces:
- HasBlockTrips, HasIndexedFrequencyBlockTrips
public class FrequencyBlockTripIndex
- extends AbstractBlockTripIndex
- implements HasIndexedFrequencyBlockTrips
A FrequencyBlockTripIndex is a collection of BlockTripEntry
elements
that have the following properties in common:
1) Each BlockTripEntry
refers to the same stop sequence pattern and
underlying shape of travel.
2) Each BlockTripEntry
has the same set of service ids (see
BlockConfigurationEntry.getServiceIds()
3) Each BlockTripEntry
refers to a frequency-based trip with a
FrequencyEntry
. Since the same BlockTripEntry
can have
multiple FrequencyEntry
, a trip may appear more than once in the
index.
4) The list of FrequencyEntry
elements is sorted by start time and no
frequency block ever overtakes another block.
4) The ServiceIntervalBlock
additionally captures the min and max
arrival and departure times for each trip in the list, in the same sorted
order as the block list.
These assumptions allow us to do efficient searches for blocks that are
active at a particular time.
- Author:
- bdferris
- See Also:
BlockCalendarService
FrequencyBlockTripIndex
public FrequencyBlockTripIndex(List<BlockTripEntry> trips,
List<FrequencyEntry> frequencies,
FrequencyServiceIntervalBlock serviceIntervalBlock)
- See the requirements in the class documentation.
- Parameters:
trips
- serviceIdIntervals
- serviceIntervalBlock
-
getFrequencies
public List<FrequencyEntry> getFrequencies()
getServiceIntervalBlock
public FrequencyServiceIntervalBlock getServiceIntervalBlock()
toString
public String toString()
- Overrides:
toString
in class Object
getStartTimeForIndex
public int getStartTimeForIndex(int index)
HasIndexedFrequencyBlockTrips
- Specified by:
getStartTimeForIndex
in interface HasIndexedFrequencyBlockTrips
getEndTimeForIndex
public int getEndTimeForIndex(int index)
- Specified by:
getEndTimeForIndex
in interface HasIndexedFrequencyBlockTrips
Copyright © 2012 OneBusAway. All Rights Reserved.