add parameters for device charging state
This commit is contained in:
@@ -109,7 +109,7 @@ impl OscSender {
|
|||||||
TrackedDeviceRole::Hmd => {
|
TrackedDeviceRole::Hmd => {
|
||||||
// XSOverlay style (float)
|
// XSOverlay style (float)
|
||||||
// this parameter doesn't exist, but it's a stepping stone for 0-1 values (i presume XSOverlay would use the full name headset and not the abbreviation hmd)
|
// this parameter doesn't exist, but it's a stepping stone for 0-1 values (i presume XSOverlay would use the full name headset and not the abbreviation hmd)
|
||||||
parameter = "headsetBattery";
|
parameter = "headset";
|
||||||
|
|
||||||
// legacy OVR Toolkit style (int)
|
// legacy OVR Toolkit style (int)
|
||||||
// according to their docs, OVR Toolkit is now supposed to use float 0-1.
|
// according to their docs, OVR Toolkit is now supposed to use float 0-1.
|
||||||
@@ -121,14 +121,14 @@ impl OscSender {
|
|||||||
)?;
|
)?;
|
||||||
|
|
||||||
}
|
}
|
||||||
TrackedDeviceRole::LeftHand => {parameter = "leftControllerBattery"}
|
TrackedDeviceRole::LeftHand => {parameter = "leftController"}
|
||||||
TrackedDeviceRole::RightHand => {parameter = "rightControllerBattery"}
|
TrackedDeviceRole::RightHand => {parameter = "rightController"}
|
||||||
TrackedDeviceRole::Tracker => {
|
TrackedDeviceRole::Tracker => {
|
||||||
//TODO: the String gets dropped i presume once this block exits (so parameter becomes a null ref), even if i set owner.
|
//TODO: the String gets dropped i presume once this block exits (so parameter becomes a null ref)
|
||||||
//parameter = format!("tracker{tracker_idx}Battery").as_str();
|
// get this working, we can remove the duplicated code for sending the parameter below
|
||||||
|
//parameter = format!("tracker{tracker_idx}").as_str();
|
||||||
// ^^^^^^ "temporary value dropped" ^^^^^
|
// ^^^^^^ "temporary value dropped" ^^^^^
|
||||||
|
|
||||||
//TODO: figure out how to put the number in the string properly as above (which doesn't work)
|
|
||||||
parameter = "tracker";
|
parameter = "tracker";
|
||||||
tracker_idx += 1;
|
tracker_idx += 1;
|
||||||
}
|
}
|
||||||
@@ -136,19 +136,27 @@ impl OscSender {
|
|||||||
|
|
||||||
// send level parameter
|
// send level parameter
|
||||||
if !parameter.is_empty() {
|
if !parameter.is_empty() {
|
||||||
//TODO: figure out how to put the number in the string, ideally in the TrackedDeviceRole section where we set the parameters
|
//TODO: figure out how to put the number in the string in the TrackedDeviceRole section above where we set the parameters
|
||||||
if parameter == "tracker" {
|
if parameter == "tracker" {
|
||||||
self.send_message(
|
self.send_message(
|
||||||
format!("/avatar/parameters/tracker{tracker_idx}Battery").into(),
|
format!("/avatar/parameters/tracker{tracker_idx}Battery").into(),
|
||||||
vec![OscType::Float(level)],
|
vec![OscType::Float(level)],
|
||||||
)?;
|
)?;
|
||||||
|
self.send_message(
|
||||||
|
format!("/avatar/parameters/tracker{tracker_idx}Charging").into(),
|
||||||
|
vec![OscType::Bool(device.charging)],
|
||||||
|
)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else {
|
||||||
self.send_message(
|
self.send_message(
|
||||||
format!("/avatar/parameters/{parameter}").into(),
|
format!("/avatar/parameters/{parameter}Battery").into(),
|
||||||
vec![OscType::Float(level)],
|
vec![OscType::Float(level)],
|
||||||
)?;
|
)?;
|
||||||
|
self.send_message(
|
||||||
|
format!("/avatar/parameters/{parameter}Charging").into(),
|
||||||
|
vec![OscType::Bool(device.charging)],
|
||||||
|
)?;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user