Jump to content

Call 'em Launch 'em Load 'em Open 'em


eberaud

Recommended Posts

One of the significant confusion stone in my understanding of LabVIEW shoe is the difference between "Call", "Launch", "Load", and "Open". I'm not adding "Run" to this list, as it is more self-explanatory, at least I believe.  :rolleyes:

 

In the Execution window of a VI Properties, we can see the following options:

 

"Auto handle menus at launch"

"Run when opened"

 

In the Customize Appearance window, we can see those other options:

 

"Show front panel when called"

"Show front panel when loaded"

 

I'm not asking for an explanation of those specific options, but I'd like a more general understanding of what those "Call", "Launch", "Load", and "Open" verbs mean.

 

Thanks!

Link to comment

One of the significant confusion stone in my understanding of LabVIEW shoe is the difference between "Call", "Launch", "Load", and "Open". I'm not adding "Run" to this list, as it is more self-explanatory, at least I believe.  :rolleyes:

 

In the Execution window of a VI Properties, we can see the following options:

 

"Auto handle menus at launch"

"Run when opened"

 

In the Customize Appearance window, we can see those other options:

 

"Show front panel when called"

"Show front panel when loaded"

 

I'm not asking for an explanation of those specific options, but I'd like a more general understanding of what those "Call", "Launch", "Load", and "Open" verbs mean.

 

Thanks!

 

Auto handle menus at launch: never used that and not sure exactly what it does

Run when opened: When the front panel is opened the VI is automatically started.

 

"Show front panel when called": When the VI is called as subVI, this will open the front panel automatically

"Show front panel when loaded" . When the VI is loaded into memory, this will open the front panel automatically.

 

so basically they are all related in some ways but do different things at different moments.

Link to comment

"Launch" - I believe this refers to LabVIEW starting.  If you're running an executable, it would be when that executable is opened.

 

"Open" - This is when a specific VI (or control, though there're not many things that happen when a control is opened) is started (double click on it in a project or in a file system folder), and you can see its front panel on your user-interface.

 

"Call" - When something is executed from the block diagram of another executing VI.

 

"Loaded" - Things are loaded into memory at different times.  Anything in the direct hierarchy of a VI is loaded when that VI is opened and loaded (If you open "Main", it and all of its sub-vis and their dependents will be loaded into memory). For dynamically loaded VIs, when the code which loads the VI (not runs) executes, it is loaded into memory.

 

I hope this clears up any confusion.

  • Like 1
Link to comment

Thanks. Still a bit of confusion:

 

"Open" - This is when a specific VI (or control, though there're not many things that happen when a control is opened) is started (double click on it in a project or in a file system folder), and you can see its front panel on your user-interface.

 

When a VI is started? You don't mean executed, right? To me it's rather "when its front panel is open". Sorry I just find the word "started" very ambiguous here.

 

Run when opened: When the front panel is opened the VI is automatically started.

 

When would you ever want to do that? I always want to control when a VI runs, either statically as a subvi on a block diagram, or through the proper VI Server method if it's a dynamic call. Do you mean that, for example, you would use a simple "Open FP" invoke node and that will run the VI automatically in addition to opening its front panel? Any other use case?

Edited by Manudelavega
Link to comment
When would you ever want to do that? I always want to control when a VI runs, either statically as a subvi on a block diagram, or through the proper VI Server method if it's a dynamic call. Do you mean that, for example, you would use a simple "Open FP" invoke node and that will run the VI automatically in addition to opening its front panel? Any other use case?

You'll see this sometimes when the developer doesn't have access to the application builder, but wants the user to be able to double-click the VI on their desktop and have it start running immediately instead of being presented with the opportunity to edit the VI.

 

If you need to edit a VI with that setting enabled, you can drop it as a subVI through "Select a VI..." and then control-double-click it to get to the block diagram.

Link to comment

You'll see this sometimes when the developer doesn't have access to the application builder, but wants the user to be able to double-click the VI on their desktop and have it start running immediately instead of being presented with the opportunity to edit the VI.

 

Thanks, that makes sense. We only work in a executable environment, so I rarely think about the needs of those of us who need to run the sources.

Link to comment

Thanks, that makes sense. We only work in a executable environment, so I rarely think about the needs of those of us who need to run the sources.

Actually that setting is inherently used by the application builder. Whatever you define as top level VI in there gets intrinsically set this flag and will cause the VI to launch your application.

Link to comment

This is probably one of those situation where you ask 10 people and get 10 different answers. So here's mine.

 

Open=Prepare resource. (General programming term used for comms (e.g. TCPIP) primitives, files, memory etc)

OR

Open=Particular function in LabVIEW to make a VIs front panel visible - only used in the FP context. Synonymous with "Show".

Called/call = execute.

Load/Loading/Loaded=Open (prepare resource meaning) from disk and place into memory...

Launch=Run When Opened=Open (prepare resource meaning) then show the front panel (we can argue about this step) then execute.

Edited by ShaunR
Link to comment
  • 2 weeks later...

"Open" is used in two contexts. Opening the VI is separate from opening the front panel of the VI.

Run when open -- specifically when the VI is opened using File >> Open or its equivalent of double clicking the VI in the OS file system. It has no effect on VIs loaded programmatically.

Open panel when called -- when the VI is called as a subVI, open the VI's panel.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.