diff --git a/doc/includes/references.h b/doc/includes/references.h index 79302849..c89a4363 100644 --- a/doc/includes/references.h +++ b/doc/includes/references.h @@ -570,7 +570,9 @@ typedef enum mjtObj_ { // type of MujoCo object mjOBJ_TEXT, // text mjOBJ_TUPLE, // tuple mjOBJ_KEY, // keyframe - mjOBJ_PLUGIN // plugin instance + mjOBJ_PLUGIN, // plugin instance + + mjNOBJECT // number of object types } mjtObj; typedef enum mjtConstraint_ { // type of constraint mjCNSTR_EQUALITY = 0, // equality constraint diff --git a/include/mujoco/mjmodel.h b/include/mujoco/mjmodel.h index 663e191f..49312dd1 100644 --- a/include/mujoco/mjmodel.h +++ b/include/mujoco/mjmodel.h @@ -246,7 +246,9 @@ typedef enum mjtObj_ { // type of MujoCo object mjOBJ_TEXT, // text mjOBJ_TUPLE, // tuple mjOBJ_KEY, // keyframe - mjOBJ_PLUGIN // plugin instance + mjOBJ_PLUGIN, // plugin instance + + mjNOBJECT // number of object types } mjtObj; diff --git a/introspect/enums.py b/introspect/enums.py index bb039f65..4982cf36 100644 --- a/introspect/enums.py +++ b/introspect/enums.py @@ -265,6 +265,7 @@ ENUMS: Mapping[str, EnumDecl] = dict([ ('mjOBJ_TUPLE', 23), ('mjOBJ_KEY', 24), ('mjOBJ_PLUGIN', 25), + ('mjNOBJECT', 26), ]), )), ('mjtConstraint', diff --git a/src/engine/engine_io.c b/src/engine/engine_io.c index 32994e9c..ca55358a 100644 --- a/src/engine/engine_io.c +++ b/src/engine/engine_io.c @@ -1858,6 +1858,8 @@ static int numObjects(const mjModel* m, mjtObj objtype) { return m->nkey; case mjOBJ_PLUGIN: return m->nplugin; + case mjNOBJECT: + return -2; } return -2; } diff --git a/unity/Runtime/Bindings/MjBindings.cs b/unity/Runtime/Bindings/MjBindings.cs index a17a2694..91bf8765 100644 --- a/unity/Runtime/Bindings/MjBindings.cs +++ b/unity/Runtime/Bindings/MjBindings.cs @@ -301,6 +301,7 @@ public enum mjtObj : int{ mjOBJ_TUPLE = 23, mjOBJ_KEY = 24, mjOBJ_PLUGIN = 25, + mjNOBJECT = 26, } public enum mjtConstraint : int{ mjCNSTR_EQUALITY = 0,