Skip to content

Commit

Permalink
Dev202410 (#324)
Browse files Browse the repository at this point in the history
* init Dev202410

* 修改文档相关的VI

* backup src/help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update src/help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* #325

* remove .vianalyzer 配置

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update csmdoc VIs

* 更新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 更新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 更新导入 document 的 VI

* fix https://github.com/NEVSTOP-LAB/Communicable-State-Machine/actions/runs/11315326789

* backup help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 刷新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 更新 arguments API 说明

* 更新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update src/help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 更新文档

* 更新部分文档

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 更新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* fix typos

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 移动位置

* 更新 csmdoc.lvlib api

* 更新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 更新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* Backup code

* backup change to _csmdoc/

* 备份修改

* backup code

* 更新 help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* 更新doc

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(EN)

* update src/help/NEVSTOP/Communicable State Machine(CSM)/VI Description(EN)

* update doc

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(EN).md

* update VI

* 更新文档

* fix broken VIs

* update help/NEVSTOP/Communicable State Machine(CSM)/VI Description(EN).md

* add Utility/System Language.vi

* update vi description

* backup 修改

* new CSM - Switch Language Tool.vi

* update FixJKIHelper.vi

* update FixJKIHelper.vi

* [add] #330 Automatically localize VI description after installation.

* update FixJKIHelper.vi

* [fix] #328 fix bug that CSM Status Change Event is not working.

* [fix] minor fix & update #326

* BACKUP tool update code

* [update] Updated Command Debug Tool, commands listed automatically when switching CSM module.

* 备份修改

---------

Co-authored-by: NEVSTOP <nevstop>
  • Loading branch information
nevstop authored Nov 8, 2024
1 parent e070347 commit f5bca92
Show file tree
Hide file tree
Showing 392 changed files with 7,121 additions and 1,860 deletions.
3 changes: 2 additions & 1 deletion .markdownlint.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"MD033": false,
"MD013": false,
"MD032": false
"MD032": false,
"MD028": false
}
Binary file removed .vianalyzer/JKISM++ SpellCheck.cfg
Binary file not shown.
Binary file removed .vianalyzer/JKISM++.cfg
Binary file not shown.
29 changes: 0 additions & 29 deletions .vianalyzer/dict.txt

This file was deleted.

19 changes: 19 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"cSpell.words": [
"Cacher",
"csmdoc",
"csmlog",
"CSMLS",
"CSMP",
"CSMQ",
"Evnt",
"Gevt",
"HEXSTR",
"lvclass",
"ogtk",
"Refnum",
"Splite",
"Struct",
"usecase"
]
}
2 changes: 1 addition & 1 deletion Communicable State Machine(CSM).lvproj
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@
<Item Name="Wrapper CSM.vi" Type="VI" URL="../testcases/_CSMs/Wrapper CSM.vi"/>
<Item Name="NOT a CSM.vi" Type="VI" URL="../testcases/_CSMs/NOT a CSM.vi"/>
<Item Name="JKISM.vi" Type="VI" URL="../testcases/_CSMs/JKISM.vi"/>
<Item Name="TestCSM.vi" Type="VI" URL="../testcases/_CSMs/TestCSM.vi"/>
</Item>
<Item Name="testcase-csmhelper.lvclass" Type="LVClass" URL="../testcases/testcase-csmhelper/testcase-csmhelper.lvclass"/>
<Item Name="testcase-csm-file-logger.lvclass" Type="LVClass" URL="../testcases/testcase-csm-file-logger/testcase-csm-file-logger.lvclass"/>
Expand Down Expand Up @@ -133,7 +134,6 @@
<Item Name="NI_PackedLibraryUtility.lvlib" Type="Library" URL="/&lt;vilib&gt;/Utility/LVLibp/NI_PackedLibraryUtility.lvlib"/>
<Item Name="subFile Dialog.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/FileDialogBlock.llb/subFile Dialog.vi"/>
<Item Name="ex_CorrectErrorChain.vi" Type="VI" URL="/&lt;vilib&gt;/express/express shared/ex_CorrectErrorChain.vi"/>
<Item Name="LVRowAndColumnUnsignedTypeDef.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/miscctls.llb/LVRowAndColumnUnsignedTypeDef.ctl"/>
<Item Name="Space Constant.vi" Type="VI" URL="/&lt;vilib&gt;/dlg_ctls.llb/Space Constant.vi"/>
<Item Name="Get File Extension.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/libraryn.llb/Get File Extension.vi"/>
<Item Name="imagedata.ctl" Type="VI" URL="/&lt;vilib&gt;/picture/picture.llb/imagedata.ctl"/>
Expand Down
22 changes: 15 additions & 7 deletions Communicable State Machine(CSM).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-07-01 11:20:47" Modified_Date="2024-09-12 22:37:56" Creator="liyao" Comments="" ID="34a4402153d60f76a6204260dd017176">
<VI_Package_Builder_Settings Version="2020.1" Created_Date="2023-07-01 11:20:47" Modified_Date="2024-10-31 16:15:17" Creator="liyao" Comments="" ID="dabd1deffb2311673e3422c594bf39f0">
<Library_General_Settings>
<Package_File_Name>NEVSTOP_lib_Communicable_State_Machine</Package_File_Name>
<Library_Version>2024.9.0.3</Library_Version>
<Library_Version>2024.10.0.3</Library_Version>
<Auto_Increment_Version>false</Auto_Increment_Version>
<Library_Source_Folder>src</Library_Source_Folder>
<Library_Output_Folder>vip</Library_Output_Folder>
Expand Down Expand Up @@ -69,12 +69,20 @@
<Packager>NEVSTOP</Packager>
<URL>https://github.com/NEVSTOP-LAB</URL>
<Release_Notes>#Core
[update] Uncheck inline option in Parse State Queue++.vi.
[fix] minor fix #302 #304 #308 #309
[fix] #328 Fixed CSM Status Change Event not working bug.

#Tool
[important] #92 #287 Add Vi analyzer Support.
[update] #305 include *.vit files in Add "VI Reference" Tool.</Release_Notes>
#VI Analyzer
[fix] Minor fixes &amp; updates for #325, #326.

#installer
[add] #330 Automatically localize VI description after installation.

#Documenation
[update] Updated VI Description markdown help files in zh-cn.

#tools
[update] Updated Switch Language Tool.
[update] Updated Command Debug Tool, commands listed automatically when switching CSM module. </Release_Notes>
</Description>
<Destinations>
<Toolkit_VIs>
Expand Down
Binary file modified src/API Tree.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
840 changes: 0 additions & 840 deletions src/help/NEVSTOP/Communicable State Machine(CSM)/VI Description(CN).md

This file was deleted.

866 changes: 46 additions & 820 deletions src/help/NEVSTOP/Communicable State Machine(CSM)/VI Description(EN).md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
# CSM API

## Templates

> [!NOTE] CSM Name Rules
> - The CSM module name must be unique to avoid entering the "Critical Error" state.
> - If the input is "", a UUID will be used as the module name. This module will operate in independent mode and will not be listed in the module list.
> - If the input ends with '#', the module will run in work mode. Modules with the same name will share the same message queue. External messages will be handled by the idle module.
> [!NOTE] CSM Initialization State
> - The default value is "Macro: Initialize", consistent with the JKISM state machine.
> - This state is typically not modified and is provided to facilitate external programmatic changes to the initialization state.
### CSM Module Template.vi

Creates a template for a CSM module without a user interface.

> Ref: CSM Name Rules
> Ref: CSM Initialization State
-- <b>Controls</b> --
- <b>Name("" to use uuid)</b>: CSM Module Name
- <b>Init State("Macro: Initialize")</b>: Initialization State, default is "Macro: Initialize"

### CSM User Interface(UI) Module Template.vi

Creates a template for a CSM module with a user interface, including a user event structure to respond to user actions.

> Ref: CSM Name Rules
> Ref: CSM Initialization State
-- <b>Controls</b> --
- <b>Name("" to use uuid)</b>: CSM Module Name
- <b>Init State("Macro: Initialize")</b>: Initialization State, default is "Macro: Initialize"

### CSM Module Template - Tiny.vi

Creates a compact template for a CSM module without a user interface.

> Ref: CSM Name Rules
> Ref: CSM Initialization State
-- <b>Controls</b> --
- <b>Name("" to use uuid)</b>: CSM Module Name
- <b>Init State("Macro: Initialize")</b>: Initialization State, default is "Macro: Initialize"

### CSM User Interface(UI) Module Template - Tiny.vi

Creates a compact template for a CSM module with a user interface, including a user event structure to respond to user actions.

> Ref: CSM Name Rules
> Ref: CSM Initialization State
-- <b>Controls</b> --
- <b>Name("" to use uuid)</b>: CSM Module Name
- <b>Init State("Macro: Initialize")</b>: Initialization State, default is "Macro: Initialize"

### Template Support VIs

#### CSM - Get New State Notifier Event.vi

Obtains the user event handle for CSM modules with an event structure. This event interrupts the wait in the event structure when a new message is received, allowing execution to continue.

-- <b>Controls</b> --
- <b>Name("" to use uuid) in</b>: CSM Module Name

-- <b>Indicators</b> --
- <b>New State Notifier Event</b>: User event handle to interrupt the wait in the event structure when a message is received

#### Timeout Selector.vi

Used in templates with a user event structure.

-- <b>Controls</b> --
- <b>Timeout Expected</b>: Expected timeout setting
- <b>Remaining States</b>: Outputs 0 if there are remaining states; otherwise, outputs the expected value

-- <b>Indicators</b> --
- <b>Timeout</b>: Timeout setting after arbitration

#### Error Handler for Templates

##### CSM Critical Error.vi

Generates a critical error message for the CSM module, usually due to a duplicate module name.

-- <b>Controls</b> --
- <b>Arguments(as Reason)</b>: Reason for the error
- <b>CSM Name</b>: CSM Module Name

##### CSM No Target Error.vi

Generates a target module not found error message for the CSM module when a CSM Module Name is required but an empty string is input.

##### CSM Target Error.vi

Generates a target module not found error message for the CSM module.

-- <b>Controls</b> --
- <b>Arguments(as CSM Name)</b>: Connection parameters, passing the target module name

##### CSM Target Timeout Error.vi

Generates a timeout error message for the target module of the CSM.

-- <b>Controls</b> --
- <b>Arguments(as CSM Name)</b>: Connection parameters, passing the target module name

##### CSM Unhandled State Error.vi

Generates an unhandled state error message for the CSM module. Possible scenarios:
- An error occurs when an undefined state is used in the internal message rotation (consistent with JKISM behavior).
- An error occurs when an undefined state is received from an external source.

-- <b>Controls</b> --
- <b>Undefined State</b>: Undefined State
- <b>CSM Name</b>: CSM Module Name
Loading

0 comments on commit f5bca92

Please sign in to comment.