rlm@1: (ns clojureDemo.VisionReader rlm@1: (:gen-class rlm@1: :implements [connections.WiredBox] rlm@1: :methods [ [process [Object] void] [setFile [Object] void] ] rlm@1: :post-init register)) rlm@1: rlm@1: (import '(davidNackoul PlotUnitMatchAlgorithm StoryGraph PlotUnit)) rlm@1: (import '(bridge.reps.things Sequence Thing)) rlm@1: rlm@1: rlm@1: (defn -setFile rlm@1: [this file] rlm@1: (println "file is " file)) rlm@1: rlm@1: (defn -register rlm@1: "equivalent to Connections.getPorts(this).addSignalProcessor(\"process\"); in Java" rlm@1: [this] rlm@1: (println "ClojureBox (register) : Register is run rlm@1: only when the object is created, as if it were in every constructor.") rlm@1: (. (connections.Connections/getPorts this) addSignalProcessor "process")) rlm@1: rlm@1: (defn -process [ _ _ ] rlm@1: (println "ClojureBox (process) : This is a LISP function, rlm@1: being called through Java, through the wiredBox metaphor.")) rlm@1: rlm@1: (defn -getName rlm@1: "the [_] means that the function gets an explicit 'this' rlm@1: argument, just like python. In this case we don't care about it." rlm@1: [_] "VisionReader") rlm@1: rlm@1: