Skip to content
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

Buffer conversions to string buffer are not returning expected results #21

Closed
dbendele opened this issue Sep 23, 2020 · 1 comment · Fixed by #24
Closed

Buffer conversions to string buffer are not returning expected results #21

dbendele opened this issue Sep 23, 2020 · 1 comment · Fixed by #24
Labels
bug Something isn't working

Comments

@dbendele
Copy link
Contributor

Describe the bug
conversions to U64 datatype did not correctly convert/transfer values in the string buffer

To Reproduce
Steps to reproduce the behavior:

  1. Go to the scripting example system definition file: ".\VeriStand\Data Sharing Custom Device\Source\Scripting Examples\Assets\DSF_UDP_Loopback.nivssdf"
  2. Open this system definition in System Explorer.
    3a. Under each thread, modify the 'Iterations' channel string datatype to be U64.
    3b. Enable data conversions and manually set string offsets for each channel (to correct multiple of 8)
  3. Go to the Framework page.
  4. Enable debugging and the data server.
  5. Save the system definition.
  6. Run.
  7. Modify the value of the iterations channel to be nonzero.
  8. Data Viewer shows string buffer that does not capture modified channel values.

Expected behavior
The DSF Data Viewer should always show agreement between engine buffer and string buffer.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: Windows
  • Version: 10 Enterprise

Additional context
This issue was observed while drafting scripting examples for DSF

@dbendele dbendele added the bug Something isn't working label Sep 23, 2020
@dbendele
Copy link
Contributor Author

@ryanpoulos

@dbendele dbendele linked a pull request Sep 30, 2020 that will close this issue
1 task
dbendele pushed a commit that referenced this issue Sep 30, 2020
* Changed Default Buffer Converter class to use little-endian as the default byte order rather than big-endian, since this matches the OS/CPU on all targets supported by the DSF.

* Updated Data Viewer to allow user to select big or little endian when viewing a buffer. Also fixed a small bug where characters from a larger number would still be shown when the value lowers to a smaller value.

* Small update to Framework Test for checking that data conversion works. Changed the default configuration cluster value on front panel to include some string offsets for converting engine channels to string channels.

* Changed int conversion of enum to be Scan From String.

* Added subVI for code that converts data string to display string for the Data Viewer.

* Lib update to include subVI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant