about summary refs log tree commit diff
path: root/lri-rs/src/block.rs
diff options
context:
space:
mode:
Diffstat (limited to 'lri-rs/src/block.rs')
-rw-r--r--lri-rs/src/block.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/lri-rs/src/block.rs b/lri-rs/src/block.rs
index 4ee0ea1..5660185 100644
--- a/lri-rs/src/block.rs
+++ b/lri-rs/src/block.rs
@@ -5,7 +5,7 @@ use lri_proto::{
 	view_preferences::ViewPreferences, Message as PbMessage,
 };
 
-use crate::{CameraId, CameraInfo, ColorInfo, DataFormat, RawData, RawImage, SensorModel};
+use crate::{CameraId, CameraInfo, ColorInfo, DataFormat, HdrMode, RawData, RawImage, SensorModel};
 
 pub(crate) struct Block<'lri> {
 	pub header: Header,
@@ -215,6 +215,7 @@ impl<'lri> Block<'lri> {
 		let ViewPreferences {
 			image_integration_time_ns,
 			image_gain,
+			hdr_mode,
 			..
 		} = vp;
 
@@ -225,6 +226,10 @@ impl<'lri> Block<'lri> {
 		if let Some(g) = image_gain {
 			ext.image_gain.get_or_insert(g);
 		}
+
+		if let Some(Ok(h)) = hdr_mode.map(|ev| ev.enum_value()) {
+			ext.hdr = Some(h.into());
+		}
 	}
 }
 
@@ -237,6 +242,7 @@ pub(crate) struct ExtractedData {
 	pub image_gain: Option<f32>,
 	pub image_integration_time: Option<Duration>,
 	pub af_achieved: Option<bool>,
+	pub hdr: Option<HdrMode>,
 }
 
 pub enum Message {