From 45a1415a1615ada06fdc6b07e21c9a74f9394ea0 Mon Sep 17 00:00:00 2001 From: Matt Date: Sat, 23 Nov 2019 18:34:10 -0800 Subject: [PATCH] Fix mixup between Pipeline and PipelineSettings in getOrdinalPipeline() --- .../com/chameleonvision/web/ServerHandler.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/Main/src/main/java/com/chameleonvision/web/ServerHandler.java b/Main/src/main/java/com/chameleonvision/web/ServerHandler.java index 370bb6026..1160f9669 100644 --- a/Main/src/main/java/com/chameleonvision/web/ServerHandler.java +++ b/Main/src/main/java/com/chameleonvision/web/ServerHandler.java @@ -222,12 +222,16 @@ public class ServerHandler { private static HashMap getOrdinalPipeline() throws IllegalAccessException { HashMap tmp = new HashMap<>(); - for (Field f : CVPipelineSettings.class.getFields()) { - if (!f.getType().isEnum()) { - tmp.put(f.getName(), f.get(VisionManager.getCurrentUIVisionProcess().getCurrentPipeline())); - } else { - var i = (Enum) f.get(VisionManager.getCurrentUIVisionProcess().getCurrentPipeline()); - tmp.put(f.getName(), i.ordinal()); + for (Field field : CVPipelineSettings.class.getFields()) { // iterate over every field in CVPipelineSettings + try { + if (!field.getType().isEnum()) { // if the field is not an enum, get it based on the current pipeline + tmp.put(field.getName(), field.get(VisionManager.getCurrentUIVisionProcess().getCurrentPipeline().settings)); + } else { + var ordinal = (Enum) field.get(VisionManager.getCurrentUIVisionProcess().getCurrentPipeline().settings); + tmp.put(field.getName(), ordinal.ordinal()); + } + } catch (IllegalArgumentException e) { + e.printStackTrace(); } } return tmp;