Skip to main content

nominal_api/conjure/objects/scout/video/api/
segment_summary.rs

1/// Bounding timestamps for the frames within a segment. For non-frame-mapped videos, the min and max media
2/// timestamps will be empty.
3#[derive(
4    Debug,
5    Clone,
6    conjure_object::serde::Serialize,
7    conjure_object::serde::Deserialize,
8    conjure_object::private::DeriveWith
9)]
10#[serde(crate = "conjure_object::serde")]
11#[derive_with(PartialEq, Eq, PartialOrd, Ord, Hash)]
12#[conjure_object::private::staged_builder::staged_builder]
13#[builder(crate = conjure_object::private::staged_builder, update, inline)]
14pub struct SegmentSummary {
15    #[builder(
16        custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
17    )]
18    #[serde(rename = "minAbsoluteTimestamp")]
19    min_absolute_timestamp: Box<super::super::super::super::api::Timestamp>,
20    #[builder(
21        custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
22    )]
23    #[serde(rename = "maxAbsoluteTimestamp")]
24    max_absolute_timestamp: Box<super::super::super::super::api::Timestamp>,
25    #[serde(rename = "minMediaTimestamp")]
26    #[derive_with(with = conjure_object::private::DoubleWrapper)]
27    min_media_timestamp: f64,
28    #[serde(rename = "maxMediaTimestamp")]
29    #[derive_with(with = conjure_object::private::DoubleWrapper)]
30    max_media_timestamp: f64,
31}
32impl SegmentSummary {
33    #[inline]
34    pub fn min_absolute_timestamp(&self) -> &super::super::super::super::api::Timestamp {
35        &*self.min_absolute_timestamp
36    }
37    #[inline]
38    pub fn max_absolute_timestamp(&self) -> &super::super::super::super::api::Timestamp {
39        &*self.max_absolute_timestamp
40    }
41    #[inline]
42    pub fn min_media_timestamp(&self) -> f64 {
43        self.min_media_timestamp
44    }
45    #[inline]
46    pub fn max_media_timestamp(&self) -> f64 {
47        self.max_media_timestamp
48    }
49}