com.azalient.api.b.assignment
Interface ITwigRouting

All Known Subinterfaces:
ILink, IParkingDestination, ITwig, IUserTwig

public interface ITwigRouting

This is the base interface for one twig or "branch" of a route. It holds information related to routing.


Method Summary
 boolean alwaysEnd()
          Return true if this twig is always the end of a limb
 boolean alwaysStart()
          Return true if this twig is always the start of a limb
 double costFactor()
          A multiplicative cost (price) factor for all behaviours.
 Distance distance(int tygi)
          Return the distance incurred traversing this twig.
 Distance distance(int nextIndex, int tygi)
          Return the distance incurred traversing this twig then any transition to next
 boolean perturbHere()
          Return true if route cost perturbation should be applied on this twig.
 Price price(int tygi)
          Return the price incurred traversing this twig.
 Price price(int nextIndex, int tygi)
          Return the price incurred traversing this twig then any transition to next,
 IRouteClass routeClass()
          The route class for this twig
 double routeDistanceFactor(IBehaviour b)
          A per-behaviour multiplicative factor for distance on this twig.
 Distance routeLength()
          The route length for this twig
 Price routePrice()
          The route price for this twig
 double routePriceFactor(IBehaviour b)
          A per-behaviour multiplicative factor for price on this twig.
 Speed routeSpeed()
          The route speed for this twig
 double routeTimeFactor(IBehaviour b)
          A per-behaviour multiplicative factor for time on this twig.
 UTime travelTime(int tygi)
          Return the travel time incurred traversing this twig.
 UTime travelTime(int nextIndex, int tygi)
          Return the travel time incurred traversing this twig then any transition to next,
 

Method Detail

routeClass

IRouteClass routeClass()
The route class for this twig


routeSpeed

Speed routeSpeed()
The route speed for this twig


routeLength

Distance routeLength()
The route length for this twig


routePrice

Price routePrice()
The route price for this twig


distance

Distance distance(int nextIndex,
                  int tygi)
Return the distance incurred traversing this twig then any transition to next


travelTime

UTime travelTime(int nextIndex,
                 int tygi)
Return the travel time incurred traversing this twig then any transition to next,


price

Price price(int nextIndex,
            int tygi)
Return the price incurred traversing this twig then any transition to next,


distance

Distance distance(int tygi)
Return the distance incurred traversing this twig. This is used in cases where the exit index is not important because the twig is inside the destination, or in fall-back/error cases where the exit index is not known


travelTime

UTime travelTime(int tygi)
Return the travel time incurred traversing this twig. This is used in cases where the exit index is not important because the twig is inside the destination, or in fall-back/error cases where the exit index is not known


price

Price price(int tygi)
Return the price incurred traversing this twig. This is used in cases where the exit index is not important because the twig is inside the destination, or in fall-back/error cases where the exit index is not known


routeDistanceFactor

double routeDistanceFactor(IBehaviour b)
A per-behaviour multiplicative factor for distance on this twig.


routeTimeFactor

double routeTimeFactor(IBehaviour b)
A per-behaviour multiplicative factor for time on this twig.


routePriceFactor

double routePriceFactor(IBehaviour b)
A per-behaviour multiplicative factor for price on this twig.


costFactor

double costFactor()
A multiplicative cost (price) factor for all behaviours.

See Also:
routePriceFactor(IBehaviour)

perturbHere

boolean perturbHere()
Return true if route cost perturbation should be applied on this twig. Some twigs return a fixed cost, even when perturbation is on


alwaysStart

boolean alwaysStart()
Return true if this twig is always the start of a limb


alwaysEnd

boolean alwaysEnd()
Return true if this twig is always the end of a limb