protected abstract double EstimateTimeCost(RouteDirectionsSummary routeDirectionsSummary);
public double GetCostFromRouteSummary(RouteDirectionsSummary routeDirectionsSummary, OptimizationParam optimizer) { return EstimateMonetaryCost(routeDirectionsSummary) * (OptimizationParam.MaxValue - optimizer.OptimizerValue) + EstimateTimeCost(routeDirectionsSummary) * optimizer.OptimizerValue; }
protected abstract double EstimateMonetaryCost(RouteDirectionsSummary routeDirectionsSummary);
protected override double EstimateTimeCost(RouteDirectionsSummary routeDirectionsSummary) { return(routeDirectionsSummary.TravelTimeInSeconds * 4); }
protected override double EstimateMonetaryCost(RouteDirectionsSummary routeDirectionsSummary) { return(0); }
protected override double EstimateMonetaryCost(RouteDirectionsSummary routeDirectionsSummary) { return(costPerGallon * (routeDirectionsSummary.LengthInMeters / milesPerGallon * 3700)); }
protected override double EstimateMonetaryCost(RouteDirectionsSummary routeDirectionsSummary) { // TODO: Jin add code here return(0); }