<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Adaptable Terminal Type in LabVIEW</title>
    <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626511#M290339</link>
    <description>&lt;DIV&gt;Hi guys,&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;I have seen VIs such as the "Unflatten from String" that take a "Type" input and can adapt their input/output value terminals to that type. Basically if you connect a string constant to the type terminal then the value terminal becomes a string, but if you connect an integer, then the value output is of type integer.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;How do they do that?? I would like to do the same for some of my VIs.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Thanks.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
    <pubDate>Thu, 13 Dec 2007 18:59:15 GMT</pubDate>
    <dc:creator>EMDI</dc:creator>
    <dc:date>2007-12-13T18:59:15Z</dc:date>
    <item>
      <title>Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626511#M290339</link>
      <description>&lt;DIV&gt;Hi guys,&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;I have seen VIs such as the "Unflatten from String" that take a "Type" input and can adapt their input/output value terminals to that type. Basically if you connect a string constant to the type terminal then the value terminal becomes a string, but if you connect an integer, then the value output is of type integer.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;How do they do that?? I would like to do the same for some of my VIs.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Thanks.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Thu, 13 Dec 2007 18:59:15 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626511#M290339</guid>
      <dc:creator>EMDI</dc:creator>
      <dc:date>2007-12-13T18:59:15Z</dc:date>
    </item>
    <item>
      <title>Re: Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626513#M290341</link>
      <description>&lt;DIV&gt;You can create a &lt;STRONG&gt;polymorphic VI&lt;/STRONG&gt;.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Check the online help. (&lt;A href="https://www.ni.com/docs/en-US/bundle/labview-api-ref/page/dialog-boxes/polymorphic-vi-window.html" target="_blank" rel="noopener"&gt;https://www.ni.com/docs/en-US/bundle/labview-api-ref/page/dialog-boxes/polymorphic-vi-window.html&lt;/A&gt;)&lt;/DIV&gt;</description>
      <pubDate>Tue, 23 Dec 2025 16:32:00 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626513#M290341</guid>
      <dc:creator>altenbach</dc:creator>
      <dc:date>2025-12-23T16:32:00Z</dc:date>
    </item>
    <item>
      <title>Re: Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626521#M290346</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;There are also XNodes, which do work like the primitives, but they are much more complicated and&amp;nbsp;not supported by NI. You can find out more in the LAVA forums' XNodes forum, but I would also advise that you use a polymorphic VI if you really need this.</description>
      <pubDate>Thu, 13 Dec 2007 19:28:11 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626521#M290346</guid>
      <dc:creator>tst</dc:creator>
      <dc:date>2007-12-13T19:28:11Z</dc:date>
    </item>
    <item>
      <title>Re: Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626529#M290350</link>
      <description>The other way to do this in LabVIEW is with LabVIEW Classes and dynamic methods. Granted, this is a very limited option in the overall scope of LabVIEW, but I though it would be worth mentioning. Here's how it goes.&lt;BR /&gt;&lt;BR /&gt;If you have a child that inherits from a parent, then that child can call all the parent's methods. The connector pane for the parent method will usually have a parent object input and output. All other things being equal, if you wired a child up to the parent object input, you should still have a parent object output as defined by the subVI, but LabVIEW is smart enough to propogate the child type directly to the output. So you don't have to downcast when calling parent methods. Pretty cool stuff.&lt;BR /&gt;&lt;BR /&gt;If that doesn't make any sense to you, you might consider reading up on LVOOP for fun. I'm not claiming this technology solves the problem you mentioned, but it's worth noting. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 13 Dec 2007 19:41:25 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626529#M290350</guid>
      <dc:creator>Jarrod_S.</dc:creator>
      <dc:date>2007-12-13T19:41:25Z</dc:date>
    </item>
    <item>
      <title>Re: Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626546#M290357</link>
      <description>&lt;DIV&gt;Thanks guys.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;A quick follow up about polymorphic VIs: Is there a performance hit with using polymorphic VIs? For example, if a VI takes in an integer as an input, is there a performance difference if the VI is coded as a simple VI with an integer terminal versus the case where it is coded as a polymorphic VI?&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Thanks again.&lt;/DIV&gt;</description>
      <pubDate>Thu, 13 Dec 2007 20:11:13 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626546#M290357</guid>
      <dc:creator>EMDI</dc:creator>
      <dc:date>2007-12-13T20:11:13Z</dc:date>
    </item>
    <item>
      <title>Re: Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626554#M290359</link>
      <description>Polymorphic VIs only have different Edit Mode behavior. During run-time (when they can no longer switch between instances), they are exactly like any other subVI.&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 13 Dec 2007 20:29:40 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626554#M290359</guid>
      <dc:creator>Jarrod_S.</dc:creator>
      <dc:date>2007-12-13T20:29:40Z</dc:date>
    </item>
    <item>
      <title>Re: Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626582#M290367</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;But there is a memory hit on having to load all the instances.</description>
      <pubDate>Thu, 13 Dec 2007 20:56:14 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626582#M290367</guid>
      <dc:creator>tst</dc:creator>
      <dc:date>2007-12-13T20:56:14Z</dc:date>
    </item>
    <item>
      <title>Re: Adaptable Terminal Type</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626640#M290400</link>
      <description>There's also the variant control. &lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 13 Dec 2007 22:44:36 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Adaptable-Terminal-Type/m-p/626640#M290400</guid>
      <dc:creator>smercurio_fc</dc:creator>
      <dc:date>2007-12-13T22:44:36Z</dc:date>
    </item>
  </channel>
</rss>

