Skip to content

Import taskdata xml - #41

Merged
sujandumaru merged 7 commits into
mainfrom
import-taskdata-xml
Oct 27, 2026
Merged

sujandumaru merged 7 commits into
mainfrom
import-taskdata-xml

Conversation

@sujandumaru

Copy link
Copy Markdown
Member

Describe your changes

This adds File -> Import ISOXML. It reads the device description out of an ISOXML TASKDATA.XML and loads it as a DDOP, so a device exported from an FMIS or by our own Export as ISOXML can be edited again.

  • If the file holds more than one device, a popup asks which one to load.
  • A bad file shows its errors in a popup and the open pool is kept. Values out of range and text too long for the chosen TC version are rejected, not truncated.
  • tinyxml2 is added as a submodule for the XML parsing.
  • The example DDOPs moved into examples/, next to a new example TASKDATA.XML.
  • Fix a bug where a failed Open used to wipe the open pool, and now it keeps it.

How has this been tested?

New task_data_import_test imports examples/TASKDATA.XML, checks every device and object against the file, and checks the result survives an export and re-import. It also checks that broken files are rejected.

cmake -S . -B build -DCAN_DRIVER=None -DSDL_CCACHE=OFF
cmake --build build
ctest --test-dir build --output-on-failure

@sujandumaru sujandumaru added the enhancement New feature or request label Oct 1, 2026
@sujandumaru sujandumaru self-assigned this Oct 1, 2026
@sujandumaru
sujandumaru merged commit 586ff7d into main Oct 27, 2026
6 checks passed
@sujandumaru
sujandumaru deleted the import-taskdata-xml branch October 27, 2026 03:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant