fix: skip unnecessary gets

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-10-18 17:19:46 +01:00
parent 0f5997042c
commit a60966b94e

View File

@@ -242,15 +242,17 @@ fn handle_set(
} }
// White Balance // White Balance
let white_balance = match &options.white_balance { if let Some(white_balance) = &options.white_balance {
Some(white_balance) => { camera.set_white_balance(*white_balance)?;
camera.set_white_balance(*white_balance)?; }
white_balance
}
None => &camera.get_white_balance()?,
};
if let Some(temperature) = &options.white_balance_temperature { if let Some(temperature) = &options.white_balance_temperature {
let white_balance = if let Some(white_balance) = &options.white_balance {
white_balance
} else {
&camera.get_white_balance()?
};
if *white_balance != FujiWhiteBalance::Temperature { if *white_balance != FujiWhiteBalance::Temperature {
warn!("White Balance mode is not set to 'Temperature', refusing to set temperature") warn!("White Balance mode is not set to 'Temperature', refusing to set temperature")
} else { } else {
@@ -267,35 +269,40 @@ fn handle_set(
} }
// Exposure // Exposure
let dynamic_range_priority = match &options.dynamic_range_priority { if let Some(dynamic_range_priority) = &options.dynamic_range_priority {
Some(dynamic_range_priority) => { camera.set_dynamic_range_priority(*dynamic_range_priority)?;
camera.set_dynamic_range_priority(*dynamic_range_priority)?;
dynamic_range_priority
}
None => &camera.get_dynamic_range_priority()?,
};
if let Some(dynamic_range) = &options.dynamic_range {
if *dynamic_range_priority != FujiDynamicRangePriority::Off {
warn!("Dynamic Range Priority is enabled, refusing to set dynamic range")
} else {
camera.set_dynamic_range(*dynamic_range)?;
}
} }
if let Some(highlights) = &options.highlight { if options.dynamic_range.is_some() || options.highlight.is_some() || options.shadow.is_some() {
if *dynamic_range_priority != FujiDynamicRangePriority::Off { let dynamic_range_priority =
warn!("Dynamic Range Priority is enabled, refusing to set highlight tone") if let Some(dynamic_range_priority) = &options.dynamic_range_priority {
} else { dynamic_range_priority
camera.set_highlight_tone(*highlights)?; } else {
} &camera.get_dynamic_range_priority()?
} };
if let Some(shadows) = &options.shadow { if let Some(dynamic_range) = &options.dynamic_range {
if *dynamic_range_priority != FujiDynamicRangePriority::Off { if *dynamic_range_priority != FujiDynamicRangePriority::Off {
warn!("Dynamic Range Priority is enabled, refusing to set shadow tone") warn!("Dynamic Range Priority is enabled, refusing to set dynamic range")
} else { } else {
camera.set_shadow_tone(*shadows)?; camera.set_dynamic_range(*dynamic_range)?;
}
}
if let Some(highlights) = &options.highlight {
if *dynamic_range_priority != FujiDynamicRangePriority::Off {
warn!("Dynamic Range Priority is enabled, refusing to set highlight tone")
} else {
camera.set_highlight_tone(*highlights)?;
}
}
if let Some(shadows) = &options.shadow {
if *dynamic_range_priority != FujiDynamicRangePriority::Off {
warn!("Dynamic Range Priority is enabled, refusing to set shadow tone")
} else {
camera.set_shadow_tone(*shadows)?;
}
} }
} }