Skip to content

Dev202503 #79

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Mar 26, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified API-String-Arugments-Support/API String - Add Boolean Strings.vi
Binary file not shown.
Binary file modified API-String-Arugments-Support/API String - Float Format String.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified API-String-Arugments-Support/API String - Set Float Precision.vi
Binary file not shown.
Binary file modified API-String-Arugments-Support/CSM - Broadcast Data As API String.vim
Binary file not shown.
Binary file modified API-String-Arugments-Support/CSM - Convert HexStr to Data.vim
Binary file not shown.
Binary file modified API-String-Arugments-Support/CSM - Module VI Ref.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified API-String-Arugments-Support/_Support/API String to 1D Array.vi
Binary file not shown.
Binary file modified API-String-Arugments-Support/_Support/Boolean Strings.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified API-String-Arugments-Support/_Support/Float Precision.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified API-String-Arugments-Support/_Support/String To Float_csm.vi
Binary file not shown.
Binary file not shown.
Binary file modified API-String-Arugments-Support/_Support/String To Number(I64)_csm.vi
Binary file not shown.
Binary file modified API-String-Arugments-Support/_Support/String to Boolean_csm.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
4 changes: 4 additions & 0 deletions CSM API String Arguments Support.lvproj
Original file line number Diff line number Diff line change
Expand Up @@ -385,10 +385,14 @@
<Item Name="UTC Offset to Seconds.vi" Type="VI" URL="/&lt;vilib&gt;/LabVIEW Open Source Project/Epoch Date &amp; Time/UTC Offset to Seconds.vi"/>
<Item Name="UTC Offsets -- enum.ctl" Type="VI" URL="/&lt;vilib&gt;/LabVIEW Open Source Project/Epoch Date &amp; Time/UTC Offsets -- enum.ctl"/>
<Item Name="Variant to Header Info__ogtk__jki_vi_tester.vi" Type="VI" URL="/&lt;vilib&gt;/addons/_JKI Toolkits/VI Tester/_support/Support.llb/Variant to Header Info__ogtk__jki_vi_tester.vi"/>
<Item Name="VirtualBench.lvlib" Type="Library" URL="/&lt;vilib&gt;/VirtualBench/VirtualBench.lvlib"/>
<Item Name="VITesterUtilities.lvlib" Type="Library" URL="/&lt;vilib&gt;/addons/_JKI Toolkits/VI Tester/_support/VITesterUtilities.lvlib"/>
<Item Name="Waveform Subtype Enum__ogtk__jki_vi_tester.ctl" Type="VI" URL="/&lt;vilib&gt;/addons/_JKI Toolkits/VI Tester/_support/Support.llb/Waveform Subtype Enum__ogtk__jki_vi_tester.ctl"/>
<Item Name="whitespace.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/whitespace.ctl"/>
</Item>
<Item Name="nilciuserapi.dll" Type="Document" URL="nilciuserapi.dll">
<Property Name="NI.PreserveRelativePath" Type="Bool">true</Property>
</Item>
</Item>
<Item Name="Build Specifications" Type="Build"/>
</Item>
Expand Down
12 changes: 3 additions & 9 deletions CSM API String Arguments Support.vipb
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<VI_Package_Builder_Settings Version="2020.1" Created_Date="2023-08-12 17:59:50" Modified_Date="2025-01-13 16:35:21" Creator="yaoli" Comments="" ID="818c2763545630aea5ac5ee9f6a7168d">
<VI_Package_Builder_Settings Version="2020.1" Created_Date="2023-08-12 17:59:50" Modified_Date="2025-03-14 14:31:02" Creator="yaoli" Comments="" ID="72402abcea34045fd96bced42ee2401c">
<Library_General_Settings>
<Package_File_Name>NEVSTOP_lib_CSM_API_String_Arguments_Support</Package_File_Name>
<Library_Version>2025.1.0.15</Library_Version>
<Library_Version>2025.3.0.15</Library_Version>
<Auto_Increment_Version>false</Auto_Increment_Version>
<Library_Source_Folder>.</Library_Source_Folder>
<Library_Output_Folder>vip</Library_Output_Folder>
Expand Down Expand Up @@ -53,13 +53,7 @@ More information for the supported datatype format, please visit: https://github
<Copyright/>
<Packager>NEVSTOP</Packager>
<URL>https://github.com/NEVSTOP-LAB/CSM-API-String-Arugments-Support</URL>
<Release_Notes>[important] #71 Add an option to support just parsing part of the elements in string for cluster datatype
[important] #76 &lt;sub-cluster&gt;.&lt;leaf-element name&gt; is also OK as tag name for cluster datatype
[update] #77 No-tag mode is supported in Convert Data To API String Arguments.vim
[update] #74 Simplify templates following CSM Core's update
[update] #73 update connector pane of CSM - Convert HexStr to Data.vim
[update] improve a little bit for empty string case
[fix] #75 now Set Float Format String.vi support format like "%_6g"</Release_Notes>
<Release_Notes>[add] #78 add VISA/IVI/Tag datatype support</Release_Notes>
</Description>
<Destinations>
<Toolkit_VIs>
Expand Down
Binary file not shown.
Binary file modified Example/Get Module Configuration Example/SubModule.vi
Binary file not shown.
Binary file modified Example/String to Enum Example.vi
Binary file not shown.
Binary file modified Example/String(Float with Unit) To Float Example.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified Example/Supported Datatype Examples/Test Cases - Cluster.vi
Binary file not shown.
Binary file modified Example/Supported Datatype Examples/Test Cases - Complex.vi
Binary file not shown.
Binary file modified Example/Supported Datatype Examples/Test Cases - Datatype Check.vi
Binary file not shown.
Binary file not shown.
Binary file modified Example/Supported Datatype Examples/Test Cases - float.vi
Binary file not shown.
Binary file modified Example/Supported Datatype Examples/Test Cases - timestamp.vi
Binary file not shown.
7 changes: 6 additions & 1 deletion README(CN).md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
- 字符串(String)
- 路径(Path)
- 布尔(Boolean)
- 标签(Tag)
- Refnum(IVI/VISA)
- 整数(I8,I16,I32,I64,U8,U16,U32,U64)
- 浮点数(DBL/SGL)
- 复数(DBL/SGL)
Expand All @@ -27,10 +29,13 @@
- 簇(Cluster)
- 其他(使用CSM-Hexstr)

### 字符串(String)/路径(Path)
### 字符串(String)/路径(Path)/Refnum(IVI/VISA)/标签(Tag)

字符串/路径遵循CSM的规则。'->|' '->' '-@' '-&' '>>' ',' ';' 在传递之前应该被替换为 %[Hex] 字符串。效果与使用 **CSM AdvanceAPI\CSM Make String Arguments Safe.vi** 相同。

> [!NOTE]
> LabVIEW 的 Refnum(IVI/VISA) 和标签(Tag) 也支持,规则与 String 类型相同。

### 布尔(Boolean)

内置的TRUE/FALSE字符串:
Expand Down
7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ Two more templates which include "Data: Get Configuration", "Data: Set Configura

- String
- Path
- Tag
- Refnum(IVI/VISA)
- Boolean
- Integer(I8,I16,I32,I64,U8,U16,U32,U64)
- Float(DBL/SGL)
Expand All @@ -26,10 +28,13 @@ Two more templates which include "Data: Get Configuration", "Data: Set Configura
- Cluster
- Other(use CSM-Hexstr)

### String/Path
### String/Path/Refnum(IVI/VISA)/Tag

For String/Path datatype, CSM Key words '->|' '->' '-@' '-&' '>>' ',' ';' will be replaced with %[Hex] String before passing, which is as same as using **CSM AdvanceAPI\CSM Make String Arguments Safe.vi**.

> [!NOTE]
> Refnum(IVI/VISA) and Tag also support, and the rule is the same as String type.

### Boolean

Predefined TRUE/FALSE String Pairs:
Expand Down
Binary file modified Template/CSM Module Template(+Configuration).vi
Binary file not shown.
Binary file modified Template/CSM User Interface(UI) Module Template(+Configuration).vi
Binary file not shown.
Binary file modified _test/Show DBL postfix.vi
Binary file not shown.
Binary file modified _test/Test Cases - API String Arguments Support(VIM).vi
Binary file not shown.
Binary file modified _test/Untitled 1.vi
Binary file not shown.
Binary file modified _test/Untitled 12.vi
Binary file not shown.
Binary file added _test/Untitled 15.vi
Binary file not shown.
Binary file modified _test/benchmark of to 1d array.vi
Binary file not shown.
Binary file modified _test/remove zero.vi
Binary file not shown.
Binary file modified _test/test - strip brackets.vi
Binary file not shown.
Binary file modified _test/test Enum.vi
Binary file not shown.
Binary file modified _test/test boolean strings.vi
Binary file not shown.
Binary file modified _test/test tag value mode.vi
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/setUp.vi
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/tearDown.vi
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/temp_VI_UnderTest.vi
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/testExample.vit
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,24 @@
<Property Name="NI.ClassItem.Priority" Type="Int">1</Property>
<Property Name="NI.ClassItem.State" Type="Int">1342972434</Property>
</Item>
<Item Name="test - Refnum.vi" Type="VI" URL="../testcases/test - Refnum.vi">
<Property Name="NI.ClassItem.ConnectorPane" Type="Bin">&amp;Q#!!!!!!!)!"1!&amp;!!!-!%!!!@````]!!!!"!!%!!!&amp;!!!!!#1!-1#%'=X2B&gt;(6T!!!,1!-!"'.P:'5!!""!-0````]'=W^V=G.F!!!71&amp;!!!Q!!!!%!!AFF=H*P=C"P&gt;81!"!!!!$R!=!!?!!!F)X2F=X2D98.F,6.V=("P=H2F:#V%982B&gt;(FQ:3ZM&gt;G.M98.T!!R5:8.U1W&amp;T:3"P&gt;81!!#"!5!!$!!!!!1!#%W6S=G^S)'FO)#BO&lt;S"F=H*P=CE!/E"Q!"Y!!#5D&gt;'6T&gt;'.B=W5N5X6Q='^S&gt;'6E,52B&gt;'&amp;U?8"F,GRW9WRB=X-!#V2F=X2$98.F)'FO!'%!]!!-!!-!"!!%!!5!"!!%!!1!"!!'!!1!"!!(!Q!!?!!!#1!!!!!!!!!!!!!!$1M!!!!!!!!!!!!!!!!!!!!!!!!+!!!!!!!!!!!!!!!3!!!.!!!!$!!!!!!!!!!!!!!"!!A!!!!!</Property>
<Property Name="NI.ClassItem.ExecutionSystem" Type="Int">-1</Property>
<Property Name="NI.ClassItem.Flags" Type="Int">16777216</Property>
<Property Name="NI.ClassItem.IsStaticMethod" Type="Bool">true</Property>
<Property Name="NI.ClassItem.MethodScope" Type="UInt">1</Property>
<Property Name="NI.ClassItem.Priority" Type="Int">1</Property>
<Property Name="NI.ClassItem.State" Type="Int">1342972432</Property>
</Item>
<Item Name="test - Tag.vi" Type="VI" URL="../testcases/test - Tag.vi">
<Property Name="NI.ClassItem.ConnectorPane" Type="Bin">&amp;Q#!!!!!!!)!"1!&amp;!!!-!%!!!@````]!!!!"!!%!!!&amp;!!!!!#1!-1#%'=X2B&gt;(6T!!!,1!-!"'.P:'5!!""!-0````]'=W^V=G.F!!!71&amp;!!!Q!!!!%!!AFF=H*P=C"P&gt;81!"!!!!$R!=!!?!!!F)X2F=X2D98.F,6.V=("P=H2F:#V%982B&gt;(FQ:3ZM&gt;G.M98.T!!R5:8.U1W&amp;T:3"P&gt;81!!#"!5!!$!!!!!1!#%W6S=G^S)'FO)#BO&lt;S"F=H*P=CE!/E"Q!"Y!!#5D&gt;'6T&gt;'.B=W5N5X6Q='^S&gt;'6E,52B&gt;'&amp;U?8"F,GRW9WRB=X-!#V2F=X2$98.F)'FO!'%!]!!-!!-!"!!%!!5!"!!%!!1!"!!'!!1!"!!(!Q!!?!!!#1!!!!!!!!!!!!!!$1M!!!!!!!!!!!!!!!!!!!!!!!!+!!!!!!!!!!!!!!!3!!!.!!!!$!!!!!!!!!!!!!!"!!A!!!!!</Property>
<Property Name="NI.ClassItem.ExecutionSystem" Type="Int">-1</Property>
<Property Name="NI.ClassItem.Flags" Type="Int">16777216</Property>
<Property Name="NI.ClassItem.IsStaticMethod" Type="Bool">true</Property>
<Property Name="NI.ClassItem.MethodScope" Type="UInt">1</Property>
<Property Name="NI.ClassItem.Priority" Type="Int">1</Property>
<Property Name="NI.ClassItem.State" Type="Int">1074278928</Property>
</Item>
</Item>
<Item Name="setUp.vi" Type="VI" URL="../setUp.vi">
<Property Name="NI.ClassItem.ConnectorPane" Type="Bin">&amp;Q#!!!!!!!)!"1!&amp;!!!-!%!!!@````]!!!!"!!%!!!&amp;#!!!!#1!-1#%'=X2B&gt;(6T!!!,1!-!"'.P:'5!!""!-0````]'=W^V=G.F!!!71&amp;!!!Q!!!!%!!AFF=H*P=C"P&gt;81!"!!!!$R!=!!?!!!F)X2F=X2D98.F,6.V=("P=H2F:#V%982B&gt;(FQ:3ZM&gt;G.M98.T!!VS:7:F=G6O9W5A&lt;X6U!#"!5!!$!!!!!1!#%W6S=G^S)'FO)#BO&lt;S"F=H*P=CE!0%"Q!"Y!!#5D&gt;'6T&gt;'.B=W5N5X6Q='^S&gt;'6E,52B&gt;'&amp;U?8"F,GRW9WRB=X-!$(*F:G6S:7ZD:3"J&lt;A!!91$Q!!Q!!Q!%!!1!"1!%!!1!"!!%!!9!"!!%!!=$!!"Y!!!.#!!!!!!!!!!!!!!.#Q!!!!!!!!!!!!!!!!!!!!!!!!I!!!!!!!!!!!!!!")!!!U!!!!-!!!!!!!!!!!!!!%!#!!!!!!</Property>
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/testcases/test - Cluster.vi
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/testcases/test - Complex.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/testcases/test - Enum.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified testcases/testcase-Supported-Datatype/testcases/test - float.vi
Binary file not shown.
Binary file not shown.
Loading