Free cookie consent management tool by TermsFeed Policy Generator

source: branches/DynamicVehicleRouting/HeuristicLab.PDPSimulation/3.3/DistanceMeasures/DistanceMeasure.cs @ 13231

Last change on this file since 13231 was 8670, checked in by svonolfe, 12 years ago

Added first version of the dynamic vehicle routing addon (#1955)

File size: 1.2 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
6using HeuristicLab.Core;
7using HeuristicLab.Common;
8using HeuristicLab.PDPSimulation.DomainModel;
9
10namespace HeuristicLab.PDPSimulation.DistanceMeasures { 
11  [StorableClass]
12  public abstract class DistanceMeasure: ParameterizedNamedItem {
13    public DistanceMeasure(): base() {
14    }
15
16    [StorableConstructor]
17    protected DistanceMeasure(bool deserializing) : base(deserializing) { }
18    protected DistanceMeasure(DistanceMeasure original, Cloner cloner)
19      : base(original, cloner) {
20    }
21
22    public abstract bool DiversionSupported { get; }
23    public abstract double GetDistance(double sourceX, double sourceY, double destX, double destY);
24    public abstract double GetDistance(double sourceX, double sourceY,
25      double currentX, double currentY,
26      double destX, double destY);
27    public abstract void Move(double sourceX, double sourceY,
28      double currentX, double currentY,
29      double destX, double destY, double time, Vehicle.MoveInformation moveInfo,
30      out double newPosX, out double newPosY, out double length);
31  }
32}
Note: See TracBrowser for help on using the repository browser.