diff --git a/doc/includes/references.h b/doc/includes/references.h index 541dab8d..d3e7ba18 100644 --- a/doc/includes/references.h +++ b/doc/includes/references.h @@ -607,7 +607,8 @@ typedef enum mjtObj_ { // type of MujoCo object // meta elements, do not appear in mjModel mjOBJ_FRAME = 100, // frame - mjOBJ_DEFAULT // default + mjOBJ_DEFAULT, // default + mjOBJ_MODEL // entire model } mjtObj; typedef enum mjtConstraint_ { // type of constraint diff --git a/include/mujoco/mjmodel.h b/include/mujoco/mjmodel.h index 185d31de..632f6ddd 100644 --- a/include/mujoco/mjmodel.h +++ b/include/mujoco/mjmodel.h @@ -269,7 +269,8 @@ typedef enum mjtObj_ { // type of MujoCo object // meta elements, do not appear in mjModel mjOBJ_FRAME = 100, // frame - mjOBJ_DEFAULT // default + mjOBJ_DEFAULT, // default + mjOBJ_MODEL // entire model } mjtObj; diff --git a/python/mujoco/introspect/enums.py b/python/mujoco/introspect/enums.py index 66b937a2..9443566f 100644 --- a/python/mujoco/introspect/enums.py +++ b/python/mujoco/introspect/enums.py @@ -288,6 +288,7 @@ ENUMS: Mapping[str, EnumDecl] = dict([ ('mjNOBJECT', 26), ('mjOBJ_FRAME', 100), ('mjOBJ_DEFAULT', 101), + ('mjOBJ_MODEL', 102), ]), )), ('mjtConstraint', diff --git a/src/engine/engine_io.c b/src/engine/engine_io.c index ec1757f6..f982941f 100644 --- a/src/engine/engine_io.c +++ b/src/engine/engine_io.c @@ -2143,6 +2143,7 @@ static int numObjects(const mjModel* m, mjtObj objtype) { case mjOBJ_DEFAULT: case mjOBJ_FRAME: case mjOBJ_UNKNOWN: + case mjOBJ_MODEL: return -1; case mjOBJ_BODY: case mjOBJ_XBODY: diff --git a/src/user/user_model.cc b/src/user/user_model.cc index 11ef0755..402f738b 100644 --- a/src/user/user_model.cc +++ b/src/user/user_model.cc @@ -166,7 +166,7 @@ static void processlist(mjListKeyMap& ids, vector& list, // constructor mjCModel::mjCModel() { mjs_defaultSpec(&spec); - elemtype = mjOBJ_UNKNOWN; + elemtype = mjOBJ_MODEL; spec_comment_.clear(); spec_modelfiledir_.clear(); spec_meshdir_.clear(); diff --git a/unity/Runtime/Bindings/MjBindings.cs b/unity/Runtime/Bindings/MjBindings.cs index 7aecffe5..d7e79806 100644 --- a/unity/Runtime/Bindings/MjBindings.cs +++ b/unity/Runtime/Bindings/MjBindings.cs @@ -320,6 +320,7 @@ public enum mjtObj : int{ mjNOBJECT = 26, mjOBJ_FRAME = 100, mjOBJ_DEFAULT = 101, + mjOBJ_MODEL = 102, } public enum mjtConstraint : int{ mjCNSTR_EQUALITY = 0,