Rename <required> tag to <plugin>.

PiperOrigin-RevId: 509237786
Change-Id: I35e812830b479004ac5025cbd9477888f51fb43e
This commit is contained in:
Saran Tunyasuvunakool
2023-02-13 08:41:06 -08:00
committed by Copybara-Service
parent 239e00e3b1
commit db28c31f05
12 changed files with 35 additions and 35 deletions
+1 -1
View File
@@ -446,7 +446,7 @@
| |_|:el:`extension` | \* | *no attribute* | | |_|:el:`extension` | \* | *no attribute* |
| | | | | | | |
+--------------------------+----+------------------------------------------------------------------------------------+ +--------------------------+----+------------------------------------------------------------------------------------+
| |_2|:el:`required` | \* | .. table:: | | |_2|:el:`plugin` | \* | .. table:: |
| | | :class: mjcf-attributes | | | | :class: mjcf-attributes |
| | | | | | | |
| | | +-------------------------+-------------------------+-------------------------+ | | | | +-------------------------+-------------------------+-------------------------+ |
+2 -2
View File
@@ -17,7 +17,7 @@
<include file="scene.xml"/> <include file="scene.xml"/>
<extension> <extension>
<required plugin="mujoco.elasticity.cable"/> <plugin plugin="mujoco.elasticity.cable"/>
</extension> </extension>
<statistic center="0 0 .2" extent="1"/> <statistic center="0 0 .2" extent="1"/>
@@ -74,4 +74,4 @@
<actuator> <actuator>
<motor site="S_last" gear="0 0 0 1 0 0" ctrlrange="-.2 .2"/> <motor site="S_last" gear="0 0 0 1 0 0" ctrlrange="-.2 .2"/>
</actuator> </actuator>
</mujoco> </mujoco>
+1 -1
View File
@@ -17,7 +17,7 @@
<include file="scene.xml"/> <include file="scene.xml"/>
<extension> <extension>
<required plugin="mujoco.elasticity.cable"/> <plugin plugin="mujoco.elasticity.cable"/>
</extension> </extension>
<statistic center="0 0 .3" extent="1"/> <statistic center="0 0 .3" extent="1"/>
+2 -2
View File
@@ -17,7 +17,7 @@
<include file="scene.xml"/> <include file="scene.xml"/>
<extension> <extension>
<required plugin="mujoco.elasticity.cable"/> <plugin plugin="mujoco.elasticity.cable"/>
</extension> </extension>
<statistic center="0 0 .2" extent="1"/> <statistic center="0 0 .2" extent="1"/>
@@ -103,4 +103,4 @@
<actuator> <actuator>
<position joint="slide" name="extend" gear="1 0 0 0 0 0" ctrlrange="-.25 1" kp="100"/> <position joint="slide" name="extend" gear="1 0 0 0 0 0" ctrlrange="-.25 1" kp="100"/>
</actuator> </actuator>
</mujoco> </mujoco>
+1 -1
View File
@@ -17,7 +17,7 @@
<include file="scene.xml"/> <include file="scene.xml"/>
<extension> <extension>
<required plugin="mujoco.elasticity.solid"/> <plugin plugin="mujoco.elasticity.solid"/>
</extension> </extension>
<compiler autolimits="true"/> <compiler autolimits="true"/>
+1 -1
View File
@@ -17,7 +17,7 @@
<include file="scene.xml"/> <include file="scene.xml"/>
<extension> <extension>
<required plugin="mujoco.elasticity.solid"/> <plugin plugin="mujoco.elasticity.solid"/>
</extension> </extension>
<option solver="CG" tolerance="1e-6" timestep=".001"/> <option solver="CG" tolerance="1e-6" timestep=".001"/>
+1 -1
View File
@@ -17,7 +17,7 @@
<include file="scene.xml"/> <include file="scene.xml"/>
<extension> <extension>
<required plugin="mujoco.elasticity.solid"/> <plugin plugin="mujoco.elasticity.solid"/>
</extension> </extension>
<compiler autolimits="true"/> <compiler autolimits="true"/>
+1 -1
View File
@@ -72,7 +72,7 @@ TEST_XML_SENSOR = r"""
TEST_XML_PLUGIN = r""" TEST_XML_PLUGIN = r"""
<mujoco model="test"> <mujoco model="test">
<extension> <extension>
<required plugin="mujoco.elasticity.cable"/> <plugin plugin="mujoco.elasticity.cable"/>
</extension> </extension>
</mujoco> </mujoco>
""" """
+3 -3
View File
@@ -190,11 +190,11 @@ static const char* MJCF[nMJCF][mjXATTRNUM] = {
{"extension", "*", "0"}, {"extension", "*", "0"},
{"<"}, {"<"},
{"required", "*", "1", "plugin"}, {"plugin", "*", "1", "plugin"},
{"<"}, {"<"},
{"instance", "*", "1", "name"}, {"instance", "*", "1", "name"},
{"<"}, {"<"},
{"config", "*", "2", "key", "value"}, {"config", "*", "2", "key", "value"},
{">"}, {">"},
{">"}, {">"},
{">"}, {">"},
@@ -2196,7 +2196,7 @@ void mjXReader::Extension(XMLElement* section) {
// get sub-element name // get sub-element name
std::string_view name = elem->Value(); std::string_view name = elem->Value();
if (name == "required") { if (name == "plugin") {
std::string plugin_name; std::string plugin_name;
int plugin_slot = -1; int plugin_slot = -1;
ReadAttrTxt(elem, "plugin", plugin_name, /* required = */ true); ReadAttrTxt(elem, "plugin", plugin_name, /* required = */ true);
+9 -9
View File
@@ -1081,12 +1081,12 @@ void mjXWriter::Extension(XMLElement* root) {
// create section // create section
XMLElement* section = InsertEnd(root, "extension"); XMLElement* section = InsertEnd(root, "extension");
// keep track of plugins whose <required> section have been created // keep track of plugins whose <plugin> section have been created
std::unordered_set<const mjpPlugin*> seen_plugins; std::unordered_set<const mjpPlugin*> seen_plugins;
// write all plugins // write all plugins
const mjpPlugin* last_plugin = nullptr; const mjpPlugin* last_plugin = nullptr;
XMLElement* required_elem = nullptr; XMLElement* plugin_elem = nullptr;
for (int i = 0; i < model->plugins.size(); ++i) { for (int i = 0; i < model->plugins.size(); ++i) {
mjCPlugin* pp = static_cast<mjCPlugin*>(model->GetObject(mjOBJ_PLUGIN, i)); mjCPlugin* pp = static_cast<mjCPlugin*>(model->GetObject(mjOBJ_PLUGIN, i));
@@ -1096,17 +1096,17 @@ void mjXWriter::Extension(XMLElement* root) {
break; break;
} }
// check if we need to open a new <required> section // check if we need to open a new <plugin> section
const mjpPlugin* plugin = mjp_getPluginAtSlot(pp->plugin_slot); const mjpPlugin* plugin = mjp_getPluginAtSlot(pp->plugin_slot);
if (plugin != last_plugin) { if (plugin != last_plugin) {
required_elem = InsertEnd(section, "required"); plugin_elem = InsertEnd(section, "plugin");
WriteAttrTxt(required_elem, "plugin", plugin->name); WriteAttrTxt(plugin_elem, "plugin", plugin->name);
seen_plugins.insert(plugin); seen_plugins.insert(plugin);
last_plugin = plugin; last_plugin = plugin;
} }
// write instance element // write instance element
XMLElement* elem = InsertEnd(required_elem, "instance"); XMLElement* elem = InsertEnd(plugin_elem, "instance");
WriteAttrTxt(elem, "name", pp->name); WriteAttrTxt(elem, "name", pp->name);
// write plugin config attributes // write plugin config attributes
@@ -1123,11 +1123,11 @@ void mjXWriter::Extension(XMLElement* root) {
} }
} }
// write <required> elements for plugins without explicit instances // write <plugin> elements for plugins without explicit instances
for (const auto& [plugin, slot] : model->active_plugins) { for (const auto& [plugin, slot] : model->active_plugins) {
if (seen_plugins.find(plugin) == seen_plugins.end()) { if (seen_plugins.find(plugin) == seen_plugins.end()) {
required_elem = InsertEnd(section, "required"); plugin_elem = InsertEnd(section, "plugin");
WriteAttrTxt(required_elem, "plugin", plugin->name); WriteAttrTxt(plugin_elem, "plugin", plugin->name);
} }
} }
} }
+5 -5
View File
@@ -343,19 +343,19 @@ class PluginTest : public MujocoTest {
constexpr char xml[] = R"( constexpr char xml[] = R"(
<mujoco> <mujoco>
<extension> <extension>
<required plugin="mujoco.test.sensor"> <plugin plugin="mujoco.test.sensor">
<instance name="twosensors"/> <instance name="twosensors"/>
<instance name="threesensors"> <instance name="threesensors">
<config key="stride" value="3"/> <config key="stride" value="3"/>
</instance> </instance>
</required> </plugin>
<required plugin="mujoco.test.actuator"> <plugin plugin="mujoco.test.actuator">
<instance name="actuator2"> <instance name="actuator2">
<config key="stride" value="2"/> <config key="stride" value="2"/>
<config key="multiplier" value="0.125"/> <config key="multiplier" value="0.125"/>
</instance> </instance>
</required> </plugin>
<required plugin="mujoco.test.passive"/> <plugin plugin="mujoco.test.passive"/>
</extension> </extension>
<worldbody> <worldbody>
<body> <body>
+8 -8
View File
@@ -56,7 +56,7 @@ TEST_F(PluginTest, ElasticEnergy) {
static constexpr char cantilever_xml[] = R"( static constexpr char cantilever_xml[] = R"(
<mujoco> <mujoco>
<extension> <extension>
<required plugin="mujoco.elasticity.solid"/> <plugin plugin="mujoco.elasticity.solid"/>
</extension> </extension>
<worldbody> <worldbody>
@@ -114,7 +114,7 @@ TEST_F(PluginTest, CantileverIntoCircle) {
<mujoco> <mujoco>
<option gravity="0 0 0"/> <option gravity="0 0 0"/>
<extension> <extension>
<required plugin="mujoco.elasticity.cable"/> <plugin plugin="mujoco.elasticity.cable"/>
</extension> </extension>
<worldbody> <worldbody>
<geom type="plane" size="0 0 1" quat="1 0 0 0"/> <geom type="plane" size="0 0 1" quat="1 0 0 0"/>
@@ -167,12 +167,12 @@ TEST_F(PluginTest, InvalidTxtAttribute) {
static constexpr char cantilever_xml[] = R"( static constexpr char cantilever_xml[] = R"(
<mujoco> <mujoco>
<extension> <extension>
<required plugin="mujoco.elasticity.cable"> <plugin plugin="mujoco.elasticity.cable">
<instance name="invalid"> <instance name="invalid">
<config key="twist" value="one"/> <config key="twist" value="one"/>
<config key="bend" value="1"/> <config key="bend" value="1"/>
</instance> </instance>
</required> </plugin>
</extension> </extension>
<worldbody> <worldbody>
<geom type="plane" size="0 0 1" quat="1 0 0 0"/> <geom type="plane" size="0 0 1" quat="1 0 0 0"/>
@@ -190,12 +190,12 @@ TEST_F(PluginTest, InvalidMixedAttribute) {
static constexpr char cantilever_xml[] = R"( static constexpr char cantilever_xml[] = R"(
<mujoco> <mujoco>
<extension> <extension>
<required plugin="mujoco.elasticity.cable"> <plugin plugin="mujoco.elasticity.cable">
<instance name="invalid"> <instance name="invalid">
<config key="twist" value="1"/> <config key="twist" value="1"/>
<config key="bend" value="1 is not a number"/> <config key="bend" value="1 is not a number"/>
</instance> </instance>
</required> </plugin>
</extension> </extension>
<worldbody> <worldbody>
<geom type="plane" size="0 0 1" quat="1 0 0 0"/> <geom type="plane" size="0 0 1" quat="1 0 0 0"/>
@@ -213,12 +213,12 @@ TEST_F(PluginTest, ValidAttributes) {
static constexpr char cantilever_xml[] = R"( static constexpr char cantilever_xml[] = R"(
<mujoco> <mujoco>
<extension> <extension>
<required plugin="mujoco.elasticity.cable"> <plugin plugin="mujoco.elasticity.cable">
<instance name="invalid"> <instance name="invalid">
<config key="twist" value="0.0"/> <config key="twist" value="0.0"/>
<config key="bend" value=" 0 "/> <config key="bend" value=" 0 "/>
</instance> </instance>
</required> </plugin>
</extension> </extension>
<worldbody> <worldbody>
<geom type="plane" size="0 0 1" quat="1 0 0 0"/> <geom type="plane" size="0 0 1" quat="1 0 0 0"/>