LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Acquiring images and detecting user event simultaneously

Hello,

I'm building an interface to acquire and process still images and videos.
As I'm a beginner in Labview, until now I haven't use multithreading, but I would like to improve my interface by allowing , for instance, the user to run the same process subvi for two different images ( there would then have two front panel popup window of the same subvi working on different images ) and to still be able to push some buttons in the interface to trigger another events. How could I do that and is it difficult to build ? For the moment, I used an architecture consisting in an event structure inside a while loop. Therefore I can't work on two images simultaneously.

Thank you for your answer !
0 Kudos
Message 1 of 3
(2,798 Views)
> As I'm a beginner in Labview, until now I haven't use multithreading,
> but I would like to improve my interface by allowing , for instance,
> the user to run the same process subvi for two different images (
> there would then have two front panel popup window of the same subvi
> working on different images ) and to still be able to push some
> buttons in the interface to trigger another events. How could I do
> that and is it difficult to build ? For the moment, I used an
> architecture consisting in an event structure inside a while loop.
> Therefore I can't work on two images simultaneously.
>

It sounds like you want to asynchronously run one or more subVIs, and
possibly get notified when they are closed. A regular subVI call waits
until the
subVI returns, which means that at least part of the calling
diagram is waiting. If you use the VI Server to Open a VI reference and
execute the Run method, you do not need to wait for the subVI. It is
also possible to open another reference to a different VI, or to a
different instance of a .vit, a VI template file. This is a common
technique used to rum as many instances as you need of a subVI.
Finally, if you need notification of completion, then you can set up a
system using notifiers to pass the VI refnum and any additional data
back to the calling VI just before the subVI completes, or you can try
to use the VI close event and dynamic registration to intercept the
close event and harvest any data as the subVI is being closed.

Greg McKaskle
0 Kudos
Message 2 of 3
(2,798 Views)
Hello,

Thank you for your answer! I read somewhere that, with the Run method, you can't show the front panel of a VI and pass parameters. Can we do that using notifiers ?
0 Kudos
Message 3 of 3
(2,798 Views)