Added functionality for user payload data in mjSpec.

PiperOrigin-RevId: 738343134
Change-Id: I6217362ced9993afcd5a2914c78718ffe3bf753a
This commit is contained in:
Alessio Quaglino
2025-03-19 04:35:12 -07:00
committed by Copybara-Service
parent dc50fbbb9b
commit 209d2bd2c5
9 changed files with 184 additions and 2 deletions
+16
View File
@@ -766,6 +766,22 @@ void mjCBase::SetFrame(mjCFrame* _frame) {
}
void mjCBase::SetUserValue(std::string_view key, const void* data) {
user_payload_[std::string(key)] = data;
}
const void* mjCBase::GetUserValue(std::string_view key) {
auto found = user_payload_.find(std::string(key));
return found != user_payload_.end() ? found->second : nullptr;
}
void mjCBase::DeleteUserValue(std::string_view key) {
user_payload_.erase(std::string(key));
}
//------------------ class mjCBody implementation --------------------------------------------------
// constructor