Introduce mjtBool for boolean types.

PiperOrigin-RevId: 920201340
Change-Id: I3b19c11a00357e06a1df08b8819832955c37f9ff
This commit is contained in:
Yuval Tassa
2026-05-23 09:13:21 -07:00
committed by Copybara-Service
parent 466d068089
commit 7667e7110e
7 changed files with 34 additions and 12 deletions
+6 -5
View File
@@ -36,16 +36,17 @@
typedef char mj_assert_##type[sizeof(type) == (size) ? 1 : -1]
#endif
// mjtnum.h
MJ_ASSERT_SIZE(mjtByte, 1);
MJ_ASSERT_SIZE(mjtSize, 8);
// primitive types
#if !defined(mjUSESINGLE)
MJ_ASSERT_SIZE(mjtNum, 8);
#else
MJ_ASSERT_SIZE(mjtNum, 4);
#endif
MJ_ASSERT_SIZE(mjtByte, 1);
MJ_ASSERT_SIZE(mjtBool, 1);
MJ_ASSERT_SIZE(mjtSize, 8);
// mjmodel.h
// mjModel enums
MJ_ASSERT_SIZE(mjtDisableBit, 4);
MJ_ASSERT_SIZE(mjtEnableBit, 4);
MJ_ASSERT_SIZE(mjtJoint, 4);
@@ -79,7 +80,7 @@ MJ_ASSERT_SIZE(mjtLRMode, 4);
MJ_ASSERT_SIZE(mjtFlexSelf, 4);
MJ_ASSERT_SIZE(mjtSDFType, 4);
// mjdata.h
// mjData enums
MJ_ASSERT_SIZE(mjtState, 4);
MJ_ASSERT_SIZE(mjtConstraint, 4);
MJ_ASSERT_SIZE(mjtConstraintState, 4);
+7 -2
View File
@@ -15,6 +15,7 @@
#ifndef MUJOCO_INCLUDE_MJTYPE_H_
#define MUJOCO_INCLUDE_MJTYPE_H_
#include <stdbool.h>
#include <stdint.h>
@@ -33,9 +34,13 @@
//---------------------------------- byte definition -----------------------------------------------
typedef unsigned char mjtByte; // used for true/false
typedef unsigned char mjtByte; // used for small integers and binary data
#ifndef __cplusplus
typedef _Bool mjtBool; // used for boolean values
#else
typedef bool mjtBool; // used for boolean values
#endif
//---------------------------------- size definition -----------------------------------------------