Skip to content
Snippets Groups Projects
Commit 1937004e authored by Thomas Bock's avatar Thomas Bock :speech_balloon:
Browse files

Fluke RPM4 pp

parent 593b3747
No related branches found
No related tags found
No related merge requests found
......@@ -9,6 +9,7 @@
[devhub.pp-scripts.servo-se3 :as servo-se3]
[devhub.pp-scripts.servo-ppc :as servo-ppc]
[devhub.pp-scripts.im540 :as im540]
[devhub.pp-scripts.rpm4 :as rpm4]
[devhub.pp-scripts.inf-cube :as inf-cube]
[devhub.pp-scripts.inf-vgc :as inf-vgc]
[devhub.pp-scripts.inf-bcg450 :as inf-bcg450]
......@@ -97,6 +98,10 @@
:inf-vgc.read-out (inf-vgc/read-out task)
:inf-vgc.read-vec (inf-vgc/read-vec task)
:rpm4.read-vec (rpm4/read-vec task)
:rpm4.read-out (rpm4/read-out task)
{:error (str "no :PostScript named: " ps)}))
(defn pre-dispatch [conf {ps :PreScript :as task}]
......
(ns devhub.pp-scripts.rpm4
^{:author "Thomas Bock <wactbprot@gmail.com>"
:doc "Post processing for Fluke/Europascal PPC/RPM4."}
(:require [devhub.pp-utils :as ppu]
[devhub.utils :as u]
[clojure.string :as string]))
(comment
(def test-vec ["R 0.078 mbara"
"R 0.078 mbara"
"R 33.076 mbara"
"R 111111.079 mbara"
"R 222.078 mbara"])
(mapv extract-value test-vec)
;; => [0.078 0.078 33.076 111111.079 222.078]
(mapv extract-unit test-vec)
;; => ["mbar" "mbar" "mbar" "mbar" "mbar"]
,,,)
(defn extract [s]
(let [r #"^R\s*([0-9]*\.[0-9]*)\s([a-zA-Z]*)a$"]
(re-matches r s)))
(defn extract-value [s] (-> s extract second u/number))
(defn extract-unit [s] (-> s extract last)
(defn read-vec [{x :_x :as task}]
(assoc task :Result [{:Type (get-in task [:PostScriptInput :Type])
:Value (mapv extract-value x)
:Unit (extract-unit (first x))}]))
(defn read-out [{x :_x :as task}]
(assoc task :Result [(ppu/vl-result (get-in task [:PostScriptInput :Type])
(->> (mapv extract-value x)
(drop 2)
vec)
(extract-unit (first x)))]))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment