1 | namespace HeuristicLab.BenchmarkSuite.Views {
|
---|
2 | public static class ViewHelper {
|
---|
3 | public static string StringifyInput(ExampleArgumentType type, Example example, string valueSeparator) {
|
---|
4 | switch (type) {
|
---|
5 | case ExampleArgumentType.Integer:
|
---|
6 | case ExampleArgumentType.IntegerVector: return string.Join(valueSeparator, example.InputInteger);
|
---|
7 |
|
---|
8 | case ExampleArgumentType.Float:
|
---|
9 | case ExampleArgumentType.FloatVector: return string.Join(valueSeparator, example.InputFloat);
|
---|
10 |
|
---|
11 | case ExampleArgumentType.Boolean: return string.Join(valueSeparator, example.InputBoolean);
|
---|
12 | case ExampleArgumentType.Char: return string.Join(valueSeparator, example.InputChar);
|
---|
13 |
|
---|
14 | case ExampleArgumentType.String:
|
---|
15 | case ExampleArgumentType.StringVector: return string.Join(valueSeparator, example.InputString);
|
---|
16 | default: return string.Empty;
|
---|
17 | }
|
---|
18 | }
|
---|
19 |
|
---|
20 | public static string StringifyOutput(ExampleArgumentType type, Example example, string valueSeparator) {
|
---|
21 | switch (type) {
|
---|
22 | case ExampleArgumentType.Integer:
|
---|
23 | case ExampleArgumentType.IntegerVector: return string.Join(valueSeparator, example.OutputInteger);
|
---|
24 |
|
---|
25 | case ExampleArgumentType.Float:
|
---|
26 | case ExampleArgumentType.FloatVector: return string.Join(valueSeparator, example.OutputFloat);
|
---|
27 |
|
---|
28 | case ExampleArgumentType.Boolean: return string.Join(valueSeparator, example.OutputBoolean);
|
---|
29 | case ExampleArgumentType.Char: return string.Join(valueSeparator, example.OutputChar);
|
---|
30 |
|
---|
31 | case ExampleArgumentType.String:
|
---|
32 | case ExampleArgumentType.StringVector: return string.Join(valueSeparator, example.OutputString);
|
---|
33 | default: return string.Empty;
|
---|
34 | }
|
---|
35 | }
|
---|
36 |
|
---|
37 | private const string IntegerColumnHeader = "int";
|
---|
38 | private const string IntegersColumnHeader = "int[]";
|
---|
39 | private const string DoubleColumnHeader = "float";
|
---|
40 | private const string DoublesColumnHeader = "float[]";
|
---|
41 | private const string BooleanColumnHeader = "bool";
|
---|
42 | private const string CharColumnHeader = "char";
|
---|
43 | private const string StringColumnHeader = "string";
|
---|
44 | private const string StringsColumnHeader = "string[]";
|
---|
45 | public static string GetHeaderTypeName(ExampleArgumentType type) {
|
---|
46 | switch (type) {
|
---|
47 | case ExampleArgumentType.Integer: return IntegerColumnHeader;
|
---|
48 | case ExampleArgumentType.Float: return DoubleColumnHeader;
|
---|
49 | case ExampleArgumentType.Boolean: return BooleanColumnHeader;
|
---|
50 | case ExampleArgumentType.Char: return CharColumnHeader;
|
---|
51 | case ExampleArgumentType.String: return StringColumnHeader;
|
---|
52 | case ExampleArgumentType.IntegerVector: return IntegersColumnHeader;
|
---|
53 | case ExampleArgumentType.FloatVector: return DoublesColumnHeader;
|
---|
54 | case ExampleArgumentType.StringVector: return StringsColumnHeader;
|
---|
55 | default: return string.Empty;
|
---|
56 | }
|
---|
57 | }
|
---|
58 | }
|
---|
59 | }
|
---|