Changeset 11286
- Timestamp:
- 08/19/14 14:20:34 (10 years ago)
- Location:
- trunk/sources
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting.Views/3.4/VRPInstanceProviderView.cs
r11171 r11286 37 37 38 38 protected override void importButton_Click(object sender, EventArgs e) { 39 var provider = Content as IVRPInstanceProvider ;39 var provider = Content as IVRPInstanceProvider<T>; 40 40 if (provider != null) { 41 41 using (var dialog = new VRPImportDialog(Content.Name)) { … … 43 43 var instance = provider.Import(dialog.VRPFileName, dialog.TourFileName); 44 44 try { 45 GenericConsumer.Load(instance as T);45 GenericConsumer.Load(instance); 46 46 instancesComboBox.SelectedIndex = -1; 47 47 } catch (Exception ex) { … … 54 54 55 55 protected override void exportButton_Click(object sender, EventArgs e) { 56 var provider = Content as IVRPInstanceProvider ;56 var provider = Content as IVRPInstanceProvider<T>; 57 57 if (provider != null) { 58 58 if (saveFileDialog.ShowDialog(this) == DialogResult.OK) { -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/CordeauFormat/CordeauFormatInstanceProvider.cs
r11171 r11286 23 23 24 24 namespace HeuristicLab.Problems.Instances.VehicleRouting { 25 public abstract class CordeauFormatInstanceProvider : VRPInstanceProvider {26 protected override VRPData LoadData(Stream stream) {25 public abstract class CordeauFormatInstanceProvider : VRPInstanceProvider<MDCVRPTWData> { 26 protected override MDCVRPTWData LoadData(Stream stream) { 27 27 return LoadInstance(new CordeauParser(stream)); 28 28 } … … 31 31 get { return true; } 32 32 } 33 public override VRPData ImportData(string path) {33 public override MDCVRPTWData ImportData(string path) { 34 34 return LoadInstance(new CordeauParser(path)); 35 35 } -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/GoldenFormat/GoldenFormatInstanceProvider.cs
r11171 r11286 24 24 25 25 namespace HeuristicLab.Problems.Instances.VehicleRouting { 26 public abstract class GoldenFormatInstanceProvider : VRPInstanceProvider {27 protected override VRPData LoadData(Stream stream) {26 public abstract class GoldenFormatInstanceProvider : VRPInstanceProvider<CVRPTWData> { 27 protected override CVRPTWData LoadData(Stream stream) { 28 28 return LoadInstance(new GoldenParser(stream)); 29 29 } … … 32 32 get { return true; } 33 33 } 34 public override VRPData ImportData(string path) {34 public override CVRPTWData ImportData(string path) { 35 35 return LoadInstance(new GoldenParser(path)); 36 36 } -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/IVRPInstanceProvider.cs
r11171 r11286 21 21 22 22 namespace HeuristicLab.Problems.Instances.VehicleRouting { 23 public interface IVRPInstanceProvider {23 public interface IVRPInstanceProvider<T> where T : IVRPData { 24 24 bool CanImportData { get; } 25 IVRPDataImport(string vrpFile, string tourFile);25 T Import(string vrpFile, string tourFile); 26 26 27 27 bool CanExportData { get; } 28 void Export( IVRPDatainstance, string path);28 void Export(T instance, string path); 29 29 } 30 30 } -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/LiLimFormat/LiLimFormatInstanceProvider.cs
r11171 r11286 23 23 24 24 namespace HeuristicLab.Problems.Instances.VehicleRouting { 25 public abstract class LiLimFormatInstanceProvider : VRPInstanceProvider {26 protected override VRPData LoadData(Stream stream) {25 public abstract class LiLimFormatInstanceProvider : VRPInstanceProvider<PDPTWData> { 26 protected override PDPTWData LoadData(Stream stream) { 27 27 return LoadInstance(new LiLimParser(stream)); 28 28 } … … 31 31 get { return true; } 32 32 } 33 public override VRPData ImportData(string path) {33 public override PDPTWData ImportData(string path) { 34 34 return LoadInstance(new LiLimParser(path)); 35 35 } -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/SolomonFormat/SolomonFormatInstanceProvider.cs
r11171 r11286 23 23 24 24 namespace HeuristicLab.Problems.Instances.VehicleRouting { 25 public abstract class SolomonFormatInstanceProvider : VRPInstanceProvider {26 protected override VRPData LoadData(Stream stream) {25 public abstract class SolomonFormatInstanceProvider : VRPInstanceProvider<CVRPTWData> { 26 protected override CVRPTWData LoadData(Stream stream) { 27 27 return LoadInstance(new SolomonParser(stream)); 28 28 } … … 31 31 get { return true; } 32 32 } 33 public override VRPData ImportData(string path) {33 public override CVRPTWData ImportData(string path) { 34 34 return LoadInstance(new SolomonParser(path)); 35 35 } -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/TSPLibFormat/TSPLibFormatInstanceProvider.cs
r11171 r11286 25 25 26 26 namespace HeuristicLab.Problems.Instances.VehicleRouting { 27 public abstract class TSPLibFormatInstanceProvider : VRPInstanceProvider {28 protected override VRPData LoadData(Stream stream) {27 public abstract class TSPLibFormatInstanceProvider : VRPInstanceProvider<CVRPData> { 28 protected override CVRPData LoadData(Stream stream) { 29 29 return LoadInstance(new TSPLIBParser(stream)); 30 30 } … … 33 33 get { return true; } 34 34 } 35 public override VRPData ImportData(string path) {35 public override CVRPData ImportData(string path) { 36 36 return LoadInstance(new TSPLIBParser(path)); 37 37 } -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/TaillardFormat/TaillardFormatInstanceProvider.cs
r11171 r11286 23 23 24 24 namespace HeuristicLab.Problems.Instances.VehicleRouting { 25 public abstract class TaillardFormatInstanceProvider : VRPInstanceProvider {26 protected override VRPData LoadData(Stream stream) {25 public abstract class TaillardFormatInstanceProvider : VRPInstanceProvider<CVRPData> { 26 protected override CVRPData LoadData(Stream stream) { 27 27 return LoadInstance(new TaillardParser(stream)); 28 28 } … … 31 31 get { return true; } 32 32 } 33 public override VRPData ImportData(string path) {33 public override CVRPData ImportData(string path) { 34 34 return LoadInstance(new TaillardParser(path)); 35 35 } -
trunk/sources/HeuristicLab.Problems.Instances.VehicleRouting/3.4/VRPInstanceProvider.cs
r11171 r11286 29 29 30 30 namespace HeuristicLab.Problems.Instances.VehicleRouting { 31 public abstract class VRPInstanceProvider : ProblemInstanceProvider<VRPData>, IVRPInstanceProvider{31 public abstract class VRPInstanceProvider<T> : ProblemInstanceProvider<T>, IVRPInstanceProvider<T> where T : IVRPData { 32 32 protected abstract string FileName { get; } 33 33 … … 52 52 } 53 53 54 public override VRPDataLoadData(IDataDescriptor id) {54 public override T LoadData(IDataDescriptor id) { 55 55 var descriptor = (VRPDataDescriptor)id; 56 56 var instanceArchiveName = GetResourceName(FileName + @"\.zip"); … … 76 76 } 77 77 78 private static void LoadSolution(Stream stream, VRPDatainstance) {78 private static void LoadSolution(Stream stream, T instance) { 79 79 List<List<int>> routes = new List<List<int>>(); 80 80 … … 99 99 } 100 100 101 public static void LoadSolution(string path, VRPDatainstance) {101 public static void LoadSolution(string path, T instance) { 102 102 using (FileStream stream = new FileStream(path, FileMode.Open)) { 103 103 LoadSolution(stream, instance); … … 105 105 } 106 106 107 protected abstract VRPDataLoadData(Stream stream);107 protected abstract T LoadData(Stream stream); 108 108 109 public IVRPDataImport(string vrpFile, string tourFile) {109 public T Import(string vrpFile, string tourFile) { 110 110 var data = ImportData(vrpFile); 111 111 if (!String.IsNullOrEmpty(tourFile)) { … … 115 115 } 116 116 117 public void Export( IVRPDatainstance, string path) {118 ExportData( (VRPData)instance, path);117 public void Export(T instance, string path) { 118 ExportData(instance, path); 119 119 } 120 120
Note: See TracChangeset
for help on using the changeset viewer.