nominal_api/conjure/objects/scout/video/api/
video_file_segments_metadata.rs1#[derive(
3 Debug,
4 Clone,
5 conjure_object::serde::Serialize,
6 conjure_object::serde::Deserialize,
7 conjure_object::private::DeriveWith
8)]
9#[serde(crate = "conjure_object::serde")]
10#[derive_with(PartialEq, Eq, PartialOrd, Ord, Hash)]
11#[conjure_object::private::staged_builder::staged_builder]
12#[builder(crate = conjure_object::private::staged_builder, update, inline)]
13pub struct VideoFileSegmentsMetadata {
14 #[serde(rename = "rid")]
15 rid: super::super::super::super::api::rids::VideoFileRid,
16 #[serde(rename = "numFrames")]
17 num_frames: i32,
18 #[serde(rename = "numSegments")]
19 num_segments: i32,
20 #[serde(rename = "scaleFactor")]
21 #[derive_with(with = conjure_object::private::DoubleWrapper)]
22 scale_factor: f64,
23 #[builder(
24 custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
25 )]
26 #[serde(rename = "minAbsoluteTimestamp")]
27 min_absolute_timestamp: Box<super::super::super::super::api::Timestamp>,
28 #[builder(
29 custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
30 )]
31 #[serde(rename = "maxAbsoluteTimestamp")]
32 max_absolute_timestamp: Box<super::super::super::super::api::Timestamp>,
33 #[serde(rename = "mediaDurationSeconds")]
34 #[derive_with(with = conjure_object::private::DoubleWrapper)]
35 media_duration_seconds: f64,
36 #[serde(rename = "mediaFrameRate")]
37 #[derive_with(with = conjure_object::private::DoubleWrapper)]
38 media_frame_rate: f64,
39}
40impl VideoFileSegmentsMetadata {
41 #[inline]
42 pub fn rid(&self) -> &super::super::super::super::api::rids::VideoFileRid {
43 &self.rid
44 }
45 #[inline]
46 pub fn num_frames(&self) -> i32 {
47 self.num_frames
48 }
49 #[inline]
50 pub fn num_segments(&self) -> i32 {
51 self.num_segments
52 }
53 #[inline]
54 pub fn scale_factor(&self) -> f64 {
55 self.scale_factor
56 }
57 #[inline]
58 pub fn min_absolute_timestamp(&self) -> &super::super::super::super::api::Timestamp {
59 &*self.min_absolute_timestamp
60 }
61 #[inline]
62 pub fn max_absolute_timestamp(&self) -> &super::super::super::super::api::Timestamp {
63 &*self.max_absolute_timestamp
64 }
65 #[inline]
66 pub fn media_duration_seconds(&self) -> f64 {
67 self.media_duration_seconds
68 }
69 #[inline]
70 pub fn media_frame_rate(&self) -> f64 {
71 self.media_frame_rate
72 }
73}