This kind of thing seems to be coming up almost daily on the mailing list...
I think everything is in place to build this kind of functionality. As far as interacting with the device goes, you can always continuously poll the device. But presumably your device supports DMA, and presumably you'd like to take advantage of that to get other computations/plotting/whatever done while waiting for the next batch of data. In that case you can set up a callback to do wait/notify on a Condition variable. In more complex cases you can spawn two (or more) Julia processes and have them pass data back and forth efficiently using SharedArrays. There's information about all this in the sections of the manual on tasks, on interfacing with C, and on parallel programming (see in particular the @sync/@async macros in the parallel section, which is probably the best place to start). To my knowledge, no one has yet posted a NIDAQmx.jl package, but I'd bet real money that someone out there is using Julia to talk to NI devices. For graphical GUIs, there are two options, Tk.jl and Gtk.jl. I recommend the latter. Both integrate with Winston for plotting. Naturally, you'd have to build the particulars of the GUI yourself. --Tim On Friday, February 07, 2014 10:04:13 PM Rick Graham wrote: > Does Julia have or plan to include the ability to process a continuous > stream of data (think DSP operations on data from a device/port/pipe/etc.). > Are there possibilities for a graphical GUI with connected functional > nodes, etc.?
