aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2018-03-14 17:48:33 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2018-03-14 17:48:33 +0200
commit748d18fe3bfa60a586de151c3bb0d1fd608b1e13 (patch)
tree27748a339a8e4e5572a6503cc08324f49aa120b7 /Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs
parent1ebb6a67c93969f3d3822893d4e191d14f8fd3e3 (diff)
downloadTango-748d18fe3bfa60a586de151c3bb0d1fd608b1e13.tar.gz
Tango-748d18fe3bfa60a586de151c3bb0d1fd608b1e13.zip
Working on machine events !!!
Diffstat (limited to 'Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs')
-rw-r--r--Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs26
1 files changed, 25 insertions, 1 deletions
diff --git a/Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs b/Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs
index b782952a9..0ee99f1fa 100644
--- a/Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs
+++ b/Software/Visual_Studio/Utilities/Tango.PMRGenerator.CLI/Program.cs
@@ -23,7 +23,7 @@ namespace Tango.PMRGenerator.CLI
using (ObservablesContext db = ObservablesContext.CreateDefault())
{
- db.Configuration.LazyLoadingEnabled = false;
+ db.Configuration.LazyLoadingEnabled = true;
GenerateHardwareMotors(db, pmrFolder);
GenerateHardwareDancers(db, pmrFolder);
GenerateHardwarePidControls(db, pmrFolder);
@@ -38,6 +38,7 @@ namespace Tango.PMRGenerator.CLI
GenerateColorLabLiquidTypes(db, pmrFolder);
GenerateDiagnosticsValueComponents(db, pmrFolder);
GenerateDiagnosticsMonitors(db, pmrFolder);
+ GenerateDiagnosticsEventTypes(db, pmrFolder);
}
Console.WriteLine("Done");
@@ -442,6 +443,29 @@ namespace Tango.PMRGenerator.CLI
File.WriteAllText(Path.Combine(pmrFolder, "Diagnostics", messageFile.Name + ".proto"), messageString);
}
+ private static void GenerateDiagnosticsEventTypes(ObservablesContext db, String pmrFolder)
+ {
+ Console.WriteLine("Generating Diagnostics Event Types...");
+
+ ProtoEnumFile enumFile = new ProtoEnumFile();
+ enumFile.Name = "EventType";
+ enumFile.Package = "Tango.PMR.Diagnostics";
+
+ foreach (var field in db.EventTypes.ToList().OrderBy(x => x.Code))
+ {
+ enumFile.Fields.Add(new EnumerationField()
+ {
+ Name = field.Name.Replace(" ", ""),
+ Description = field.Description + String.Format(" (Group = {0}, Category = {1}, Actions = {2})", field.EventTypesGroup.Name, field.EventTypesCategory.Name, String.Join(", ", field.EventTypesActions.Select(x => x.ActionType.Name))),
+ Value = field.Code,
+ });
+ }
+
+ String enumString = enumFile.GenerateCode();
+
+ File.WriteAllText(Path.Combine(pmrFolder, "Diagnostics", enumFile.Name + ".proto"), enumString);
+ }
+
private static String CoercePropertyType(Type type)
{
if (type == typeof(bool))