jfreerails.world.track
Interface TrackRule

All Superinterfaces:
java.lang.Comparable<TrackRule>, FreerailsSerializable, java.io.Serializable
All Known Implementing Classes:
NullTrackType, TrackRuleImpl

public interface TrackRule
extends FreerailsSerializable, java.lang.Comparable<TrackRule>

Defines methods to access the properties of a track type.

Author:
Luke Lindsay 09 October 2001

Nested Class Summary
static class TrackRule.TrackCategories
           
 
Method Summary
 boolean canBuildOnThisTerrainType(TerrainType.Category TerrainType)
           
 TrackRule.TrackCategories getCategory()
           
 Money getFixedCost()
           
 java.util.Iterator<TrackConfiguration> getLegalConfigurationsIterator()
           
 Step[] getLegalRoutes(Step directionComingFrom)
           
 Money getMaintenanceCost()
           
 int getMaximumConsecutivePieces()
           
 Money getPrice()
           
 int getStationRadius()
           
 java.lang.String getTypeName()
           
 boolean isDouble()
           
 boolean isStation()
           
 boolean testTrackPieceLegality(int a9bitTemplate)
           
 boolean trackPieceIsLegal(TrackConfiguration config)
           
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Method Detail

getCategory

TrackRule.TrackCategories getCategory()

canBuildOnThisTerrainType

boolean canBuildOnThisTerrainType(TerrainType.Category TerrainType)

isStation

boolean isStation()

isDouble

boolean isDouble()

getPrice

Money getPrice()

getFixedCost

Money getFixedCost()

getMaintenanceCost

Money getMaintenanceCost()

getStationRadius

int getStationRadius()

getTypeName

java.lang.String getTypeName()

testTrackPieceLegality

boolean testTrackPieceLegality(int a9bitTemplate)

trackPieceIsLegal

boolean trackPieceIsLegal(TrackConfiguration config)

getMaximumConsecutivePieces

int getMaximumConsecutivePieces()

getLegalRoutes

Step[] getLegalRoutes(Step directionComingFrom)

getLegalConfigurationsIterator

java.util.Iterator<TrackConfiguration> getLegalConfigurationsIterator()