18 using System.Collections.Generic;
22 using TraceLabSDK.Types.Contests;
23 using System.ComponentModel;
24 using TraceLabSDK.Component.Config;
25 using TraceLab.Components.DevelopmentKit.Metrics;
28 namespace TraceLab.Components.Library.Metrics.Controller
30 [Component(Name =
"(UI) Results Metrics Exporter",
31 Description =
"Exports the metrics computed by previous metrics components to disk.",
32 Author =
"SEMERU; Evan Moritz",
34 ConfigurationType = typeof(ResultsControllerExporterConfig))]
35 [Tag(
"Metrics.Visualization")]
44 Configuration = _config;
55 foreach (
string dataset
in datasets)
57 Logger.Info(
"Exporting: " + dataset);
59 foreach (
string technique
in techniques)
67 DevelopmentKit.IO.Metrics.Export(computation,
68 GenerateFileName(_config.OutputDir.Absolute, dataset, technique, computation.
Name),
72 catch (ComponentException e)
74 Logger.Debug(e.Message);
84 private string GenerateFileName(
string directory,
string dataset,
string technique,
string computation)
86 return Path.Combine(directory, dataset +
"." + technique +
"." + computation);
92 [DisplayName(
"Generate summaries?")]
93 [Description(
"Option to additionally generate summary data.")]
94 public bool GenerateSummary {
get; set; }
96 [DisplayName(
"Output directory")]
97 [Description(
"Directory to write results files")]
98 public DirectoryPath OutputDir {
get; set; }