Add policies for global attribute conflict resolution upon attach

For example when loading parent_merge.xml:

```
WARNING: Attach conflict when attaching 'child' to 'parent_merge', policy is 'merge'
timestep: parent has 0.005, child has 0.002, taking the minimum
iterations: parent has 50, child has 100, taking the maximum
flag 'Damper': added from child
```

When loading parent_error.xml:

```
XML Error: Attach conflict when attaching 'child' to 'parent_error', policy is 'error'
timestep: parent has 0.005, child has 0.002
iterations: parent has 50, child has 100
Element 'attach', line 10
```
PiperOrigin-RevId: 933620810
Change-Id: Ib477863b5ef763474d27fb4be5a4148be1d5d500
This commit is contained in:
Yuval Tassa
2026-06-17 03:34:10 -07:00
committed by Copybara-Service
parent 30357c38a3
commit 410c73168c
37 changed files with 2705 additions and 449 deletions
+6
View File
@@ -583,6 +583,11 @@ public enum mjtOrientation : int{
mjORIENTATION_ZAXIS = 3,
mjORIENTATION_EULER = 4,
}
public enum mjtConflict : int{
mjCONFLICT_WARNING = 0,
mjCONFLICT_MERGE = 1,
mjCONFLICT_ERROR = 2,
}
public enum mjtCTimer : int{
mjCTIMER_TOTAL = 0,
mjCTIMER_ASSETS = 1,
@@ -5865,6 +5870,7 @@ public unsafe struct mjsCompiler_ {
public fixed int inertiagrouprange[2];
public byte saveinertial;
public int alignfree;
public int conflict;
public mjLROpt_ LRopt;
public void* meshdir;
public void* texturedir;