From 4e1268445a5e88e53ff7ba308a16a8f2c9992564 Mon Sep 17 00:00:00 2001 From: Dani The Skunk Date: Mon, 24 Oct 2022 22:59:17 +0000 Subject: [PATCH] displaying data --- fonts/ega-16x28.png | Bin 0 -> 8422 bytes src/com/skunkworks/Parameter.java | 25 +++++++++ src/com/skunkworks/SkunkMeter.java | 87 +++++++++++++++++++++++++++++ 3 files changed, 112 insertions(+) create mode 100644 fonts/ega-16x28.png create mode 100644 src/com/skunkworks/Parameter.java diff --git a/fonts/ega-16x28.png b/fonts/ega-16x28.png new file mode 100644 index 0000000000000000000000000000000000000000..f039dc4108a14e1d708a1ead0b5c99fd29f13c81 GIT binary patch literal 8422 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 e?f)tBDq7oU`_#7CFkgXvz processData(String in) { + var elems = in.split("\r\n\r\n"); + //skip first empty element + var elemsParsed = new HashMap(); + for(int i = 1; i < elems.length; ++i) { + var elem = elems[i].split("\r\n"); + String identifier = ""; + String name = ""; + double value = 0.0; + for(var par : elem) { + var kv = par.split("\s*:\s*"); + switch(kv[0]) { + case "Identifier": + identifier = kv[1]; + break; + case "Name": + name = kv[1]; + break; + case "Value": + value = Double.parseDouble(kv[1]); + break; + } + } + elemsParsed.put(identifier, new Parameter(identifier, name, value)); + } + return elemsParsed; + } + + @Override + protected void render(IRenderContext rc) { + rc.drawTerminal(term); + } + + @Override + protected void update(double delta) { + nextSecond -= delta; + if(nextSecond <= 0.0) { + var data = processData(getData()); + term.clear(Color.BLACK); + var cpuPackage = data.get("/intelcpu/0/temperature/4"); + term.drawString(new Vec2i(0, 0), cpuPackage.getName() + ":"); + term.drawString(new Vec2i(15, 0), + String.valueOf(cpuPackage.getValue()) + "C"); + nextSecond += 1.0; + } + super.update(delta); } public static void main(String[] args) {