Closed dbendele closed 3 years ago
@rtzoeller and @buckd, this is the second installment of that monstrosity of a PR I submitted (temporarily) just before Thanksgiving. This PR focuses on the changes made within the 32-bit class to add functionality and to consume changes made in Encoding and Decoding reuse library.
Bleep bloop!
LabVIEW Diff Robot here with some diffs served up hot for your pull request.
Notice something funny? Help fix me on my GitHub repo.
Notes to reviewers
32-bit Word.lvclass--Initialize.vi
ARINC 429.lvclass
ARINC 429.lvclass--Write Parity Index.vi
Bleep bloop!
LabVIEW Diff Robot here with some diffs served up hot for your pull request.
Notice something funny? Help fix me on my GitHub repo.
@dbendele feel free to merge after addressing the required items, and reviewing the optional feedback.
I love the diagram/Wikipedia example in the Multiparameter Datetime test.
This VI isn't part of this PR, but I needed to look at it to understand the PR changes and therefore am including feedback for them.
Encoding and Decoding.lvlib:Update Bit Field.vim
can use the Assert Unsigned Integer Type.vim
malleable provided by LabVIEW, instead of reimplementing it.Optional Feedback
This VI isn't part of this PR, but I needed to look at it to understand the PR changes and therefore am including feedback for them.
- [ ]
Encoding and Decoding.lvlib:Update Bit Field.vim
can use theAssert Unsigned Integer Type.vim
malleable provided by LabVIEW, instead of reimplementing it.
will submit separate PR
What does this Pull Request accomplish?
Adds abstract class for ARINC 429 and concrete class for ARINC 429 32-bit word. This concrete class provides accessors for 32-bit word properties including Label, SDI, Parameters, SSM, and Parity. Additionally. the 32-bit word can be written or read. Supported parameter (en/de)codings are BNR, BCD, and Discrete. The 32-bit class will be used in the implementation of the Ballard ARINC 429 custom device.
Why should this Pull Request be merged?
These classes encode and decode ARINC 429 32-bit words and can be used in Engine, System Explorer, and Scripting.
What testing has been done?
Local hand tests verify encoding and decoding of signed BNR and signed and unsigned BCD parameters. Automated unit tests for concrete 32-bit Word class implemented for positive and negative (signed) BNR parameters and for multiparameter word including BNR and BCD parameters.