Skip to content

Commit

Permalink
add finger bones (#143)
Browse files Browse the repository at this point in the history
  • Loading branch information
Erimelowo authored Oct 30, 2024
1 parent 73fca63 commit 863a38f
Show file tree
Hide file tree
Showing 6 changed files with 341 additions and 11 deletions.
100 changes: 95 additions & 5 deletions protocol/cpp/include/solarxr_protocol/generated/all_generated.h
Original file line number Diff line number Diff line change
Expand Up @@ -613,11 +613,41 @@ enum class BodyPart : uint8_t {
UPPER_CHEST = 22,
LEFT_HIP = 23,
RIGHT_HIP = 24,
LEFT_THUMB_PROXIMAL = 25,
LEFT_THUMB_INTERMEDIATE = 26,
LEFT_THUMB_DISTAL = 27,
LEFT_INDEX_PROXIMAL = 28,
LEFT_INDEX_INTERMEDIATE = 29,
LEFT_INDEX_DISTAL = 30,
LEFT_MIDDLE_PROXIMAL = 31,
LEFT_MIDDLE_INTERMEDIATE = 32,
LEFT_MIDDLE_DISTAL = 33,
LEFT_RING_PROXIMAL = 34,
LEFT_RING_INTERMEDIATE = 35,
LEFT_RING_DISTAL = 36,
LEFT_LITTLE_PROXIMAL = 37,
LEFT_LITTLE_INTERMEDIATE = 38,
LEFT_LITTLE_DISTAL = 39,
RIGHT_THUMB_PROXIMAL = 40,
RIGHT_THUMB_INTERMEDIATE = 41,
RIGHT_THUMB_DISTAL = 42,
RIGHT_INDEX_PROXIMAL = 43,
RIGHT_INDEX_INTERMEDIATE = 44,
RIGHT_INDEX_DISTAL = 45,
RIGHT_MIDDLE_PROXIMAL = 46,
RIGHT_MIDDLE_INTERMEDIATE = 47,
RIGHT_MIDDLE_DISTAL = 48,
RIGHT_RING_PROXIMAL = 49,
RIGHT_RING_INTERMEDIATE = 50,
RIGHT_RING_DISTAL = 51,
RIGHT_LITTLE_PROXIMAL = 52,
RIGHT_LITTLE_INTERMEDIATE = 53,
RIGHT_LITTLE_DISTAL = 54,
MIN = NONE,
MAX = RIGHT_HIP
MAX = RIGHT_LITTLE_DISTAL
};

inline const BodyPart (&EnumValuesBodyPart())[23] {
inline const BodyPart (&EnumValuesBodyPart())[53] {
static const BodyPart values[] = {
BodyPart::NONE,
BodyPart::HEAD,
Expand All @@ -641,13 +671,43 @@ inline const BodyPart (&EnumValuesBodyPart())[23] {
BodyPart::RIGHT_SHOULDER,
BodyPart::UPPER_CHEST,
BodyPart::LEFT_HIP,
BodyPart::RIGHT_HIP
BodyPart::RIGHT_HIP,
BodyPart::LEFT_THUMB_PROXIMAL,
BodyPart::LEFT_THUMB_INTERMEDIATE,
BodyPart::LEFT_THUMB_DISTAL,
BodyPart::LEFT_INDEX_PROXIMAL,
BodyPart::LEFT_INDEX_INTERMEDIATE,
BodyPart::LEFT_INDEX_DISTAL,
BodyPart::LEFT_MIDDLE_PROXIMAL,
BodyPart::LEFT_MIDDLE_INTERMEDIATE,
BodyPart::LEFT_MIDDLE_DISTAL,
BodyPart::LEFT_RING_PROXIMAL,
BodyPart::LEFT_RING_INTERMEDIATE,
BodyPart::LEFT_RING_DISTAL,
BodyPart::LEFT_LITTLE_PROXIMAL,
BodyPart::LEFT_LITTLE_INTERMEDIATE,
BodyPart::LEFT_LITTLE_DISTAL,
BodyPart::RIGHT_THUMB_PROXIMAL,
BodyPart::RIGHT_THUMB_INTERMEDIATE,
BodyPart::RIGHT_THUMB_DISTAL,
BodyPart::RIGHT_INDEX_PROXIMAL,
BodyPart::RIGHT_INDEX_INTERMEDIATE,
BodyPart::RIGHT_INDEX_DISTAL,
BodyPart::RIGHT_MIDDLE_PROXIMAL,
BodyPart::RIGHT_MIDDLE_INTERMEDIATE,
BodyPart::RIGHT_MIDDLE_DISTAL,
BodyPart::RIGHT_RING_PROXIMAL,
BodyPart::RIGHT_RING_INTERMEDIATE,
BodyPart::RIGHT_RING_DISTAL,
BodyPart::RIGHT_LITTLE_PROXIMAL,
BodyPart::RIGHT_LITTLE_INTERMEDIATE,
BodyPart::RIGHT_LITTLE_DISTAL
};
return values;
}

inline const char * const *EnumNamesBodyPart() {
static const char * const names[26] = {
static const char * const names[56] = {
"NONE",
"HEAD",
"NECK",
Expand All @@ -673,13 +733,43 @@ inline const char * const *EnumNamesBodyPart() {
"UPPER_CHEST",
"LEFT_HIP",
"RIGHT_HIP",
"LEFT_THUMB_PROXIMAL",
"LEFT_THUMB_INTERMEDIATE",
"LEFT_THUMB_DISTAL",
"LEFT_INDEX_PROXIMAL",
"LEFT_INDEX_INTERMEDIATE",
"LEFT_INDEX_DISTAL",
"LEFT_MIDDLE_PROXIMAL",
"LEFT_MIDDLE_INTERMEDIATE",
"LEFT_MIDDLE_DISTAL",
"LEFT_RING_PROXIMAL",
"LEFT_RING_INTERMEDIATE",
"LEFT_RING_DISTAL",
"LEFT_LITTLE_PROXIMAL",
"LEFT_LITTLE_INTERMEDIATE",
"LEFT_LITTLE_DISTAL",
"RIGHT_THUMB_PROXIMAL",
"RIGHT_THUMB_INTERMEDIATE",
"RIGHT_THUMB_DISTAL",
"RIGHT_INDEX_PROXIMAL",
"RIGHT_INDEX_INTERMEDIATE",
"RIGHT_INDEX_DISTAL",
"RIGHT_MIDDLE_PROXIMAL",
"RIGHT_MIDDLE_INTERMEDIATE",
"RIGHT_MIDDLE_DISTAL",
"RIGHT_RING_PROXIMAL",
"RIGHT_RING_INTERMEDIATE",
"RIGHT_RING_DISTAL",
"RIGHT_LITTLE_PROXIMAL",
"RIGHT_LITTLE_INTERMEDIATE",
"RIGHT_LITTLE_DISTAL",
nullptr
};
return names;
}

inline const char *EnumNameBodyPart(BodyPart e) {
if (flatbuffers::IsOutRange(e, BodyPart::NONE, BodyPart::RIGHT_HIP)) return "";
if (flatbuffers::IsOutRange(e, BodyPart::NONE, BodyPart::RIGHT_LITTLE_DISTAL)) return "";
const size_t index = static_cast<size_t>(e);
return EnumNamesBodyPart()[index];
}
Expand Down
32 changes: 31 additions & 1 deletion protocol/java/src/solarxr_protocol/datatypes/BodyPart.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,38 @@ private BodyPart() { }
public static final int UPPER_CHEST = 22;
public static final int LEFT_HIP = 23;
public static final int RIGHT_HIP = 24;
public static final int LEFT_THUMB_PROXIMAL = 25;
public static final int LEFT_THUMB_INTERMEDIATE = 26;
public static final int LEFT_THUMB_DISTAL = 27;
public static final int LEFT_INDEX_PROXIMAL = 28;
public static final int LEFT_INDEX_INTERMEDIATE = 29;
public static final int LEFT_INDEX_DISTAL = 30;
public static final int LEFT_MIDDLE_PROXIMAL = 31;
public static final int LEFT_MIDDLE_INTERMEDIATE = 32;
public static final int LEFT_MIDDLE_DISTAL = 33;
public static final int LEFT_RING_PROXIMAL = 34;
public static final int LEFT_RING_INTERMEDIATE = 35;
public static final int LEFT_RING_DISTAL = 36;
public static final int LEFT_LITTLE_PROXIMAL = 37;
public static final int LEFT_LITTLE_INTERMEDIATE = 38;
public static final int LEFT_LITTLE_DISTAL = 39;
public static final int RIGHT_THUMB_PROXIMAL = 40;
public static final int RIGHT_THUMB_INTERMEDIATE = 41;
public static final int RIGHT_THUMB_DISTAL = 42;
public static final int RIGHT_INDEX_PROXIMAL = 43;
public static final int RIGHT_INDEX_INTERMEDIATE = 44;
public static final int RIGHT_INDEX_DISTAL = 45;
public static final int RIGHT_MIDDLE_PROXIMAL = 46;
public static final int RIGHT_MIDDLE_INTERMEDIATE = 47;
public static final int RIGHT_MIDDLE_DISTAL = 48;
public static final int RIGHT_RING_PROXIMAL = 49;
public static final int RIGHT_RING_INTERMEDIATE = 50;
public static final int RIGHT_RING_DISTAL = 51;
public static final int RIGHT_LITTLE_PROXIMAL = 52;
public static final int RIGHT_LITTLE_INTERMEDIATE = 53;
public static final int RIGHT_LITTLE_DISTAL = 54;

public static final String[] names = { "NONE", "HEAD", "NECK", "CHEST", "WAIST", "HIP", "LEFT_UPPER_LEG", "RIGHT_UPPER_LEG", "LEFT_LOWER_LEG", "RIGHT_LOWER_LEG", "LEFT_FOOT", "RIGHT_FOOT", "", "", "LEFT_LOWER_ARM", "RIGHT_LOWER_ARM", "LEFT_UPPER_ARM", "RIGHT_UPPER_ARM", "LEFT_HAND", "RIGHT_HAND", "LEFT_SHOULDER", "RIGHT_SHOULDER", "UPPER_CHEST", "LEFT_HIP", "RIGHT_HIP", };
public static final String[] names = { "NONE", "HEAD", "NECK", "CHEST", "WAIST", "HIP", "LEFT_UPPER_LEG", "RIGHT_UPPER_LEG", "LEFT_LOWER_LEG", "RIGHT_LOWER_LEG", "LEFT_FOOT", "RIGHT_FOOT", "", "", "LEFT_LOWER_ARM", "RIGHT_LOWER_ARM", "LEFT_UPPER_ARM", "RIGHT_UPPER_ARM", "LEFT_HAND", "RIGHT_HAND", "LEFT_SHOULDER", "RIGHT_SHOULDER", "UPPER_CHEST", "LEFT_HIP", "RIGHT_HIP", "LEFT_THUMB_PROXIMAL", "LEFT_THUMB_INTERMEDIATE", "LEFT_THUMB_DISTAL", "LEFT_INDEX_PROXIMAL", "LEFT_INDEX_INTERMEDIATE", "LEFT_INDEX_DISTAL", "LEFT_MIDDLE_PROXIMAL", "LEFT_MIDDLE_INTERMEDIATE", "LEFT_MIDDLE_DISTAL", "LEFT_RING_PROXIMAL", "LEFT_RING_INTERMEDIATE", "LEFT_RING_DISTAL", "LEFT_LITTLE_PROXIMAL", "LEFT_LITTLE_INTERMEDIATE", "LEFT_LITTLE_DISTAL", "RIGHT_THUMB_PROXIMAL", "RIGHT_THUMB_INTERMEDIATE", "RIGHT_THUMB_DISTAL", "RIGHT_INDEX_PROXIMAL", "RIGHT_INDEX_INTERMEDIATE", "RIGHT_INDEX_DISTAL", "RIGHT_MIDDLE_PROXIMAL", "RIGHT_MIDDLE_INTERMEDIATE", "RIGHT_MIDDLE_DISTAL", "RIGHT_RING_PROXIMAL", "RIGHT_RING_INTERMEDIATE", "RIGHT_RING_DISTAL", "RIGHT_LITTLE_PROXIMAL", "RIGHT_LITTLE_INTERMEDIATE", "RIGHT_LITTLE_DISTAL", };

public static String name(int e) { return names[e]; }
}
Expand Down
32 changes: 31 additions & 1 deletion protocol/kotlin/src/solarxr_protocol/datatypes/BodyPart.kt
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,37 @@ class BodyPart private constructor() {
const val UPPERCHEST: UByte = 22u
const val LEFTHIP: UByte = 23u
const val RIGHTHIP: UByte = 24u
val names : Array<String> = arrayOf("NONE", "HEAD", "NECK", "CHEST", "WAIST", "HIP", "LEFT_UPPER_LEG", "RIGHT_UPPER_LEG", "LEFT_LOWER_LEG", "RIGHT_LOWER_LEG", "LEFT_FOOT", "RIGHT_FOOT", "", "", "LEFT_LOWER_ARM", "RIGHT_LOWER_ARM", "LEFT_UPPER_ARM", "RIGHT_UPPER_ARM", "LEFT_HAND", "RIGHT_HAND", "LEFT_SHOULDER", "RIGHT_SHOULDER", "UPPER_CHEST", "LEFT_HIP", "RIGHT_HIP")
const val LEFTTHUMBPROXIMAL: UByte = 25u
const val LEFTTHUMBINTERMEDIATE: UByte = 26u
const val LEFTTHUMBDISTAL: UByte = 27u
const val LEFTINDEXPROXIMAL: UByte = 28u
const val LEFTINDEXINTERMEDIATE: UByte = 29u
const val LEFTINDEXDISTAL: UByte = 30u
const val LEFTMIDDLEPROXIMAL: UByte = 31u
const val LEFTMIDDLEINTERMEDIATE: UByte = 32u
const val LEFTMIDDLEDISTAL: UByte = 33u
const val LEFTRINGPROXIMAL: UByte = 34u
const val LEFTRINGINTERMEDIATE: UByte = 35u
const val LEFTRINGDISTAL: UByte = 36u
const val LEFTLITTLEPROXIMAL: UByte = 37u
const val LEFTLITTLEINTERMEDIATE: UByte = 38u
const val LEFTLITTLEDISTAL: UByte = 39u
const val RIGHTTHUMBPROXIMAL: UByte = 40u
const val RIGHTTHUMBINTERMEDIATE: UByte = 41u
const val RIGHTTHUMBDISTAL: UByte = 42u
const val RIGHTINDEXPROXIMAL: UByte = 43u
const val RIGHTINDEXINTERMEDIATE: UByte = 44u
const val RIGHTINDEXDISTAL: UByte = 45u
const val RIGHTMIDDLEPROXIMAL: UByte = 46u
const val RIGHTMIDDLEINTERMEDIATE: UByte = 47u
const val RIGHTMIDDLEDISTAL: UByte = 48u
const val RIGHTRINGPROXIMAL: UByte = 49u
const val RIGHTRINGINTERMEDIATE: UByte = 50u
const val RIGHTRINGDISTAL: UByte = 51u
const val RIGHTLITTLEPROXIMAL: UByte = 52u
const val RIGHTLITTLEINTERMEDIATE: UByte = 53u
const val RIGHTLITTLEDISTAL: UByte = 54u
val names : Array<String> = arrayOf("NONE", "HEAD", "NECK", "CHEST", "WAIST", "HIP", "LEFT_UPPER_LEG", "RIGHT_UPPER_LEG", "LEFT_LOWER_LEG", "RIGHT_LOWER_LEG", "LEFT_FOOT", "RIGHT_FOOT", "", "", "LEFT_LOWER_ARM", "RIGHT_LOWER_ARM", "LEFT_UPPER_ARM", "RIGHT_UPPER_ARM", "LEFT_HAND", "RIGHT_HAND", "LEFT_SHOULDER", "RIGHT_SHOULDER", "UPPER_CHEST", "LEFT_HIP", "RIGHT_HIP", "LEFT_THUMB_PROXIMAL", "LEFT_THUMB_INTERMEDIATE", "LEFT_THUMB_DISTAL", "LEFT_INDEX_PROXIMAL", "LEFT_INDEX_INTERMEDIATE", "LEFT_INDEX_DISTAL", "LEFT_MIDDLE_PROXIMAL", "LEFT_MIDDLE_INTERMEDIATE", "LEFT_MIDDLE_DISTAL", "LEFT_RING_PROXIMAL", "LEFT_RING_INTERMEDIATE", "LEFT_RING_DISTAL", "LEFT_LITTLE_PROXIMAL", "LEFT_LITTLE_INTERMEDIATE", "LEFT_LITTLE_DISTAL", "RIGHT_THUMB_PROXIMAL", "RIGHT_THUMB_INTERMEDIATE", "RIGHT_THUMB_DISTAL", "RIGHT_INDEX_PROXIMAL", "RIGHT_INDEX_INTERMEDIATE", "RIGHT_INDEX_DISTAL", "RIGHT_MIDDLE_PROXIMAL", "RIGHT_MIDDLE_INTERMEDIATE", "RIGHT_MIDDLE_DISTAL", "RIGHT_RING_PROXIMAL", "RIGHT_RING_INTERMEDIATE", "RIGHT_RING_DISTAL", "RIGHT_LITTLE_PROXIMAL", "RIGHT_LITTLE_INTERMEDIATE", "RIGHT_LITTLE_DISTAL")
@JvmStatic
fun name(e: Int) : String = names[e]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ use super::*;
#[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")]
pub const ENUM_MIN_BODY_PART: u8 = 0;
#[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")]
pub const ENUM_MAX_BODY_PART: u8 = 24;
pub const ENUM_MAX_BODY_PART: u8 = 54;
#[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")]
#[allow(non_camel_case_types)]
pub const ENUM_VALUES_BODY_PART: [BodyPart; 23] = [
pub const ENUM_VALUES_BODY_PART: [BodyPart; 53] = [
BodyPart::NONE,
BodyPart::HEAD,
BodyPart::NECK,
Expand All @@ -39,6 +39,36 @@ pub const ENUM_VALUES_BODY_PART: [BodyPart; 23] = [
BodyPart::UPPER_CHEST,
BodyPart::LEFT_HIP,
BodyPart::RIGHT_HIP,
BodyPart::LEFT_THUMB_PROXIMAL,
BodyPart::LEFT_THUMB_INTERMEDIATE,
BodyPart::LEFT_THUMB_DISTAL,
BodyPart::LEFT_INDEX_PROXIMAL,
BodyPart::LEFT_INDEX_INTERMEDIATE,
BodyPart::LEFT_INDEX_DISTAL,
BodyPart::LEFT_MIDDLE_PROXIMAL,
BodyPart::LEFT_MIDDLE_INTERMEDIATE,
BodyPart::LEFT_MIDDLE_DISTAL,
BodyPart::LEFT_RING_PROXIMAL,
BodyPart::LEFT_RING_INTERMEDIATE,
BodyPart::LEFT_RING_DISTAL,
BodyPart::LEFT_LITTLE_PROXIMAL,
BodyPart::LEFT_LITTLE_INTERMEDIATE,
BodyPart::LEFT_LITTLE_DISTAL,
BodyPart::RIGHT_THUMB_PROXIMAL,
BodyPart::RIGHT_THUMB_INTERMEDIATE,
BodyPart::RIGHT_THUMB_DISTAL,
BodyPart::RIGHT_INDEX_PROXIMAL,
BodyPart::RIGHT_INDEX_INTERMEDIATE,
BodyPart::RIGHT_INDEX_DISTAL,
BodyPart::RIGHT_MIDDLE_PROXIMAL,
BodyPart::RIGHT_MIDDLE_INTERMEDIATE,
BodyPart::RIGHT_MIDDLE_DISTAL,
BodyPart::RIGHT_RING_PROXIMAL,
BodyPart::RIGHT_RING_INTERMEDIATE,
BodyPart::RIGHT_RING_DISTAL,
BodyPart::RIGHT_LITTLE_PROXIMAL,
BodyPart::RIGHT_LITTLE_INTERMEDIATE,
BodyPart::RIGHT_LITTLE_DISTAL,
];

/// Different parts of the body. Maps to each possible non-tracker bone in the skeleton.
Expand Down Expand Up @@ -71,9 +101,39 @@ impl BodyPart {
pub const UPPER_CHEST: Self = Self(22);
pub const LEFT_HIP: Self = Self(23);
pub const RIGHT_HIP: Self = Self(24);
pub const LEFT_THUMB_PROXIMAL: Self = Self(25);
pub const LEFT_THUMB_INTERMEDIATE: Self = Self(26);
pub const LEFT_THUMB_DISTAL: Self = Self(27);
pub const LEFT_INDEX_PROXIMAL: Self = Self(28);
pub const LEFT_INDEX_INTERMEDIATE: Self = Self(29);
pub const LEFT_INDEX_DISTAL: Self = Self(30);
pub const LEFT_MIDDLE_PROXIMAL: Self = Self(31);
pub const LEFT_MIDDLE_INTERMEDIATE: Self = Self(32);
pub const LEFT_MIDDLE_DISTAL: Self = Self(33);
pub const LEFT_RING_PROXIMAL: Self = Self(34);
pub const LEFT_RING_INTERMEDIATE: Self = Self(35);
pub const LEFT_RING_DISTAL: Self = Self(36);
pub const LEFT_LITTLE_PROXIMAL: Self = Self(37);
pub const LEFT_LITTLE_INTERMEDIATE: Self = Self(38);
pub const LEFT_LITTLE_DISTAL: Self = Self(39);
pub const RIGHT_THUMB_PROXIMAL: Self = Self(40);
pub const RIGHT_THUMB_INTERMEDIATE: Self = Self(41);
pub const RIGHT_THUMB_DISTAL: Self = Self(42);
pub const RIGHT_INDEX_PROXIMAL: Self = Self(43);
pub const RIGHT_INDEX_INTERMEDIATE: Self = Self(44);
pub const RIGHT_INDEX_DISTAL: Self = Self(45);
pub const RIGHT_MIDDLE_PROXIMAL: Self = Self(46);
pub const RIGHT_MIDDLE_INTERMEDIATE: Self = Self(47);
pub const RIGHT_MIDDLE_DISTAL: Self = Self(48);
pub const RIGHT_RING_PROXIMAL: Self = Self(49);
pub const RIGHT_RING_INTERMEDIATE: Self = Self(50);
pub const RIGHT_RING_DISTAL: Self = Self(51);
pub const RIGHT_LITTLE_PROXIMAL: Self = Self(52);
pub const RIGHT_LITTLE_INTERMEDIATE: Self = Self(53);
pub const RIGHT_LITTLE_DISTAL: Self = Self(54);

pub const ENUM_MIN: u8 = 0;
pub const ENUM_MAX: u8 = 24;
pub const ENUM_MAX: u8 = 54;
pub const ENUM_VALUES: &'static [Self] = &[
Self::NONE,
Self::HEAD,
Expand All @@ -98,6 +158,36 @@ impl BodyPart {
Self::UPPER_CHEST,
Self::LEFT_HIP,
Self::RIGHT_HIP,
Self::LEFT_THUMB_PROXIMAL,
Self::LEFT_THUMB_INTERMEDIATE,
Self::LEFT_THUMB_DISTAL,
Self::LEFT_INDEX_PROXIMAL,
Self::LEFT_INDEX_INTERMEDIATE,
Self::LEFT_INDEX_DISTAL,
Self::LEFT_MIDDLE_PROXIMAL,
Self::LEFT_MIDDLE_INTERMEDIATE,
Self::LEFT_MIDDLE_DISTAL,
Self::LEFT_RING_PROXIMAL,
Self::LEFT_RING_INTERMEDIATE,
Self::LEFT_RING_DISTAL,
Self::LEFT_LITTLE_PROXIMAL,
Self::LEFT_LITTLE_INTERMEDIATE,
Self::LEFT_LITTLE_DISTAL,
Self::RIGHT_THUMB_PROXIMAL,
Self::RIGHT_THUMB_INTERMEDIATE,
Self::RIGHT_THUMB_DISTAL,
Self::RIGHT_INDEX_PROXIMAL,
Self::RIGHT_INDEX_INTERMEDIATE,
Self::RIGHT_INDEX_DISTAL,
Self::RIGHT_MIDDLE_PROXIMAL,
Self::RIGHT_MIDDLE_INTERMEDIATE,
Self::RIGHT_MIDDLE_DISTAL,
Self::RIGHT_RING_PROXIMAL,
Self::RIGHT_RING_INTERMEDIATE,
Self::RIGHT_RING_DISTAL,
Self::RIGHT_LITTLE_PROXIMAL,
Self::RIGHT_LITTLE_INTERMEDIATE,
Self::RIGHT_LITTLE_DISTAL,
];
/// Returns the variant's name or "" if unknown.
pub fn variant_name(self) -> Option<&'static str> {
Expand Down Expand Up @@ -125,6 +215,36 @@ impl BodyPart {
Self::UPPER_CHEST => Some("UPPER_CHEST"),
Self::LEFT_HIP => Some("LEFT_HIP"),
Self::RIGHT_HIP => Some("RIGHT_HIP"),
Self::LEFT_THUMB_PROXIMAL => Some("LEFT_THUMB_PROXIMAL"),
Self::LEFT_THUMB_INTERMEDIATE => Some("LEFT_THUMB_INTERMEDIATE"),
Self::LEFT_THUMB_DISTAL => Some("LEFT_THUMB_DISTAL"),
Self::LEFT_INDEX_PROXIMAL => Some("LEFT_INDEX_PROXIMAL"),
Self::LEFT_INDEX_INTERMEDIATE => Some("LEFT_INDEX_INTERMEDIATE"),
Self::LEFT_INDEX_DISTAL => Some("LEFT_INDEX_DISTAL"),
Self::LEFT_MIDDLE_PROXIMAL => Some("LEFT_MIDDLE_PROXIMAL"),
Self::LEFT_MIDDLE_INTERMEDIATE => Some("LEFT_MIDDLE_INTERMEDIATE"),
Self::LEFT_MIDDLE_DISTAL => Some("LEFT_MIDDLE_DISTAL"),
Self::LEFT_RING_PROXIMAL => Some("LEFT_RING_PROXIMAL"),
Self::LEFT_RING_INTERMEDIATE => Some("LEFT_RING_INTERMEDIATE"),
Self::LEFT_RING_DISTAL => Some("LEFT_RING_DISTAL"),
Self::LEFT_LITTLE_PROXIMAL => Some("LEFT_LITTLE_PROXIMAL"),
Self::LEFT_LITTLE_INTERMEDIATE => Some("LEFT_LITTLE_INTERMEDIATE"),
Self::LEFT_LITTLE_DISTAL => Some("LEFT_LITTLE_DISTAL"),
Self::RIGHT_THUMB_PROXIMAL => Some("RIGHT_THUMB_PROXIMAL"),
Self::RIGHT_THUMB_INTERMEDIATE => Some("RIGHT_THUMB_INTERMEDIATE"),
Self::RIGHT_THUMB_DISTAL => Some("RIGHT_THUMB_DISTAL"),
Self::RIGHT_INDEX_PROXIMAL => Some("RIGHT_INDEX_PROXIMAL"),
Self::RIGHT_INDEX_INTERMEDIATE => Some("RIGHT_INDEX_INTERMEDIATE"),
Self::RIGHT_INDEX_DISTAL => Some("RIGHT_INDEX_DISTAL"),
Self::RIGHT_MIDDLE_PROXIMAL => Some("RIGHT_MIDDLE_PROXIMAL"),
Self::RIGHT_MIDDLE_INTERMEDIATE => Some("RIGHT_MIDDLE_INTERMEDIATE"),
Self::RIGHT_MIDDLE_DISTAL => Some("RIGHT_MIDDLE_DISTAL"),
Self::RIGHT_RING_PROXIMAL => Some("RIGHT_RING_PROXIMAL"),
Self::RIGHT_RING_INTERMEDIATE => Some("RIGHT_RING_INTERMEDIATE"),
Self::RIGHT_RING_DISTAL => Some("RIGHT_RING_DISTAL"),
Self::RIGHT_LITTLE_PROXIMAL => Some("RIGHT_LITTLE_PROXIMAL"),
Self::RIGHT_LITTLE_INTERMEDIATE => Some("RIGHT_LITTLE_INTERMEDIATE"),
Self::RIGHT_LITTLE_DISTAL => Some("RIGHT_LITTLE_DISTAL"),
_ => None,
}
}
Expand Down
Loading

0 comments on commit 863a38f

Please sign in to comment.