<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://labviewwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ygyluvyz</id>
	<title>LabVIEW Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://labviewwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ygyluvyz"/>
	<link rel="alternate" type="text/html" href="https://labviewwiki.org/wiki/Special:Contributions/Ygyluvyz"/>
	<updated>2026-05-12T22:17:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://labviewwiki.org/w/index.php?title=Cluster_data_type&amp;diff=4252</id>
		<title>Cluster data type</title>
		<link rel="alternate" type="text/html" href="https://labviewwiki.org/w/index.php?title=Cluster_data_type&amp;diff=4252"/>
		<updated>2010-11-15T18:04:06Z</updated>

		<summary type="html">&lt;p&gt;Ygyluvyz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A cluster is a [[LabVIEW]] [[Data_type|datatype]] that groups data elements of mixed types. A cluster is similar to a record or a struct in text-based&lt;br /&gt;
programming languages. Clusters can be stored solitarely in a [[ctl]].&lt;br /&gt;
&lt;br /&gt;
Bundling several data elements into clusters eliminates wire&lt;br /&gt;
clutter on the block diagram and reduces the number of&lt;br /&gt;
connector pane terminals that subVIs need. The connector pane&lt;br /&gt;
has, at most, 28 terminals. If a&lt;br /&gt;
front panel contains more than&lt;br /&gt;
28 controls and indicators that&lt;br /&gt;
you want to use programmatically, you can group some of them into a&lt;br /&gt;
cluster and assign the cluster to a terminal on the connector&lt;br /&gt;
pane. Like an array, a cluster is either a control or an&lt;br /&gt;
indicator. A cluster cannot contain a mixture of controls and&lt;br /&gt;
indicators.&lt;br /&gt;
&lt;br /&gt;
The color of the cluster on the [[Block_Diagram]] gives some insight on the included data-types. A brown cluster consists of numeric data types and numerical actions as &#039;plus&#039;, &#039;minus&#039; and others can be applied to the cluster directly. Additionally the size of the cluster (bytewise) is fixed. A pink cluster has a variable size because of the use of (for instance) [[String|strings]] or [[Array|arrays]].&lt;br /&gt;
&lt;br /&gt;
&amp;gt;== Creating Cluster Controls and Indicators ==&lt;br /&gt;
&lt;br /&gt;
To create a cluster control or indicator,&lt;br /&gt;
select a cluster on the Controls&amp;amp;gt;&amp;amp;gt;All Controls&amp;amp;gt;&amp;amp;gt;Array&lt;br /&gt;
&amp;amp;amp; Cluster palette, place it on the front panel,&lt;br /&gt;
and drag controls or indicators into the cluster&lt;br /&gt;
shell. Resize the cluster shell by dragging the&lt;br /&gt;
cursor while you place the cluster shell.&lt;br /&gt;
&lt;br /&gt;
[[Image:cluster.png|center|frame|A cluster of three controls]]&lt;br /&gt;
*[http://wiki.lavag.org/Image:Create_cluster_video.gif Watch video of cluster creation process]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://inaroregi.co.cc UNDER COSTRUCTION, PLEASE SEE THIS POST IN RESERVE COPY]=&lt;br /&gt;
----&lt;br /&gt;
=[http://inaroregi.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Creating Cluster Constants==&lt;br /&gt;
&lt;br /&gt;
Create a cluster constant on the block diagram&lt;br /&gt;
by selecting a cluster constant on the&lt;br /&gt;
Cluster palette, placing it on the block&lt;br /&gt;
diagram, and dragging a constant into the&lt;br /&gt;
cluster shell.&lt;br /&gt;
&lt;br /&gt;
If you have a cluster control or indicator on&lt;br /&gt;
the front panel and you want to create a cluster&lt;br /&gt;
constant containing the same elements on the block&lt;br /&gt;
diagram, you can either drag that cluster from the front&lt;br /&gt;
panel to the block diagram or right-click the cluster on the&lt;br /&gt;
front panel and select Create&amp;gt;&amp;gt;Constant from&lt;br /&gt;
the shortcut menu.&lt;br /&gt;
&lt;br /&gt;
==Cluster Order==&lt;br /&gt;
Cluster elements have a logical order unrelated to their&lt;br /&gt;
position in the shell. The first object you place in the&lt;br /&gt;
cluster is element 0, the&lt;br /&gt;
second is element 1, and so&lt;br /&gt;
on. If you delete an element, the order adjusts&lt;br /&gt;
automatically.	&lt;br /&gt;
&lt;br /&gt;
The cluster order determines the order in which the elements&lt;br /&gt;
appear as terminals on the Bundle and&lt;br /&gt;
Unbundle functions on the block diagram.&lt;br /&gt;
	&lt;br /&gt;
You can view and modify the cluster order by right-clicking&lt;br /&gt;
the cluster border and selecting Reorder Controls In&lt;br /&gt;
Cluster from the shortcut menu.&lt;br /&gt;
&lt;br /&gt;
The white box on each element shows its current place in the&lt;br /&gt;
cluster order. The black box shows the new place in the&lt;br /&gt;
order for an element. To set the order of a cluster element,&lt;br /&gt;
type the new order number in the Click to set&lt;br /&gt;
to text box and click the element. The cluster order&lt;br /&gt;
of the element changes, and the cluster order of other&lt;br /&gt;
elements adjusts. Save the changes by clicking the&lt;br /&gt;
Confirm button on the toolbar. Revert to the&lt;br /&gt;
original order by clicking the Cancel button.&lt;br /&gt;
&lt;br /&gt;
Corresponding elements, determined by the cluster order,&lt;br /&gt;
must have compatible data types. For example, in one&lt;br /&gt;
cluster, element 0 is a&lt;br /&gt;
numeric control, and element 1&lt;br /&gt;
is a string control. In a second cluster, element&lt;br /&gt;
0 is a numeric indicator, and&lt;br /&gt;
element  1 is a string&lt;br /&gt;
indicator. The cluster control correctly wires to the&lt;br /&gt;
cluster indicator.	&lt;br /&gt;
&lt;br /&gt;
However, if you change the cluster order of the indicator so&lt;br /&gt;
the string is element 00, and&lt;br /&gt;
the numeric is element 11, the&lt;br /&gt;
wire from the cluster control to the cluster indicator&lt;br /&gt;
appears broken, indicating that the data types do not match.&lt;br /&gt;
[[Image:cluster order mismatch.png|center|frame|Broken wire due to cluster order mismatch]]&lt;br /&gt;
[[category:Data_types]]&lt;br /&gt;
[[category:LabVIEW fundamentals]]&lt;/div&gt;</summary>
		<author><name>Ygyluvyz</name></author>
	</entry>
	<entry>
		<id>https://labviewwiki.org/w/index.php?title=NaN&amp;diff=4251</id>
		<title>NaN</title>
		<link rel="alternate" type="text/html" href="https://labviewwiki.org/w/index.php?title=NaN&amp;diff=4251"/>
		<updated>2010-11-15T12:45:08Z</updated>

		<summary type="html">&lt;p&gt;Ygyluvyz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;NaN&#039;&#039;&#039; is the notation in LabVIEW for the floating-point value &#039;&#039;Not-a-Number&#039;&#039;. LabVIEW implements the [http://grouper.ieee.org/groups/754/ IEEE-754 standard] for floating-point calculations, which specifies unique values for the outputs of mathematical operations which have no meaningful numerical result. A few examples of calculations which produce NaN are:&lt;br /&gt;
&lt;br /&gt;
*division of zero by zero&lt;br /&gt;
*square root of a negative number&lt;br /&gt;
*division of an infinity by an infinity&lt;br /&gt;
*logarithm (any base) of a non-positive number&lt;br /&gt;
*any calculation which includes NaN as one of its operands&lt;br /&gt;
&lt;br /&gt;
The last example above implies that any calculation sequence which generates NaN as an intermediate step will propagate NaN through all subsequent calculations. While this is generally true, there are exceptions (the LabVIEW &#039;&#039;&#039;Power of X&#039;&#039;&#039; primitive returns one for zero raised to NaN).&lt;br /&gt;
&lt;br /&gt;
One salient feature of the NaN value is that all comparison operations involving NaN return &#039;&#039;&#039;FALSE&#039;&#039;&#039;, including the equality operator (in other words, NaN&amp;amp;nbsp;!= NaN). LabVIEW provides the &#039;&#039;&#039;Not A Number/Path/Refnum?&#039;&#039;&#039; primitive, which is the proper way to test for NaN.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable FCK__ShowTableBorders&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Not A Number/Path/Refnum? &amp;lt;br&amp;gt;primitive&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:Nanfunc.png|center]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
Floating-point controls, indicators, and block diagram constants support the direct entry of NaN (case-insensitive). Similarly, string-to-numeric and numeric-to-string primitives convert or format NaN without regard to format specifiers.&lt;br /&gt;
&lt;br /&gt;
&amp;gt;== Use Cases ==&lt;br /&gt;
&lt;br /&gt;
*indicating &amp;amp;quot;missing&amp;amp;quot; data in data-tables in files.&lt;br /&gt;
*used for lifting the &amp;amp;quot;plotting pen&amp;amp;quot; in graph, for instance if a value would be out of its allowed range.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ywejoxecy.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ywejoxecy.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== External links  ==&lt;br /&gt;
&lt;br /&gt;
*[http://grouper.ieee.org/groups/754/ IEEE-754: Standard for Binary Floating-Point Arithmetic]&lt;br /&gt;
*[http://en.wikipedia.org/wiki/NaN Wikipedia entry on NaN]&lt;/div&gt;</summary>
		<author><name>Ygyluvyz</name></author>
	</entry>
	<entry>
		<id>https://labviewwiki.org/w/index.php?title=Daemon&amp;diff=4250</id>
		<title>Daemon</title>
		<link rel="alternate" type="text/html" href="https://labviewwiki.org/w/index.php?title=Daemon&amp;diff=4250"/>
		<updated>2010-11-15T07:28:35Z</updated>

		<summary type="html">&lt;p&gt;Ygyluvyz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A &#039;&#039;&#039;daemon&#039;&#039;&#039; is a process that runs in the background, not usually visible to a user. In LabVIEW, daemons are usually implemented as one of two types: self-launched or launched.&lt;br /&gt;
&lt;br /&gt;
&amp;gt;==Self-launching daemon==&lt;br /&gt;
A &#039;&#039;self-launching daemon&#039;&#039; is a VI that executes, closes its own [[front panel]], and continues to run in the background. A VI normally ceases to execute when its front panel is closed. To avoid this, a daemon VI first opens a [[VI reference]] to itself. The VI can then use the Front Panel:Open method to set the state of the VI to &amp;amp;quot;hidden.&amp;amp;quot; In LabVIEW versions earlier than 8.0, the Front Panel:Open method is not available, but the Front Panel Window:Open property can be used.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ygysegapu.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ygysegapu.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Launched daemon==&lt;br /&gt;
A &#039;&#039;launched daemon&#039;&#039; is a daemon VI that is opened by an intermediate, &amp;quot;launcher&amp;quot; VI. This allows a high-level VI to launch a background process and continue executing. In this case, the launcher VI opens a reference to the daemon VI and starts it using the Run VI method, with &amp;quot;Wait Until Done&amp;quot; set to False and &amp;quot;Auto Dispose Ref&amp;quot; set to True. The launcher VI must not close the VI reference to the daemon VI. Once the daemon VI has launched, the launcher VI can close itself.&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
* [http://zone.ni.com/devzone/cda/tut/p/id/5237 LabVIEW Application Design Patterns]&lt;br /&gt;
&lt;br /&gt;
[[category:design patterns]]&lt;/div&gt;</summary>
		<author><name>Ygyluvyz</name></author>
	</entry>
</feed>