Add to_file function to save the Spec to a file.

Fixes #2415.

PiperOrigin-RevId: 725161617
Change-Id: I6c374cc7f7cb3f1da1cc0da531dd7e5be5d62b6a
This commit is contained in:
Alessio Quaglino
2025-02-10 04:32:32 -08:00
committed by Copybara-Service
parent 0e01b51590
commit 4156350708
2 changed files with 9 additions and 5 deletions
+6
View File
@@ -518,6 +518,12 @@ PYBIND11_MODULE(_specs, m) {
}
return std::string(buf.get());
});
mjSpec.def("to_file", [](MjSpec& self, std::string& file) {
std::array<char, 1024> err;
if (mj_saveXML(self.ptr, file.c_str(), err.data(), err.size()) < 0) {
throw FatalError(std::string(err.data()));
}
});
mjSpec.def(
"add_default",
[](MjSpec* spec, std::string& classname,