nominal_api/conjure/objects/ingest/api/
video_opts_v2.rs1#[derive(
2 Debug,
3 Clone,
4 conjure_object::serde::Serialize,
5 conjure_object::serde::Deserialize,
6 conjure_object::private::DeriveWith
7)]
8#[serde(crate = "conjure_object::serde")]
9#[derive_with(PartialEq, Eq, PartialOrd, Ord, Hash)]
10#[conjure_object::private::staged_builder::staged_builder]
11#[builder(crate = conjure_object::private::staged_builder, update, inline)]
12pub struct VideoOptsV2 {
13 #[builder(custom(type = super::IngestSource, convert = Box::new))]
14 #[serde(rename = "source")]
15 source: Box<super::IngestSource>,
16 #[builder(custom(type = super::DatasetIngestTarget, convert = Box::new))]
17 #[serde(rename = "target")]
18 target: Box<super::DatasetIngestTarget>,
19 #[builder(
20 custom(
21 type = super::super::super::scout::video::api::VideoFileTimestampManifest,
22 convert = Box::new
23 )
24 )]
25 #[serde(rename = "timestampManifest")]
26 timestamp_manifest: Box<
27 super::super::super::scout::video::api::VideoFileTimestampManifest,
28 >,
29 #[serde(rename = "channel")]
30 channel: super::super::super::api::Channel,
31 #[builder(
32 default,
33 map(
34 key(type = super::super::super::api::TagName),
35 value(type = super::super::super::api::TagValue)
36 )
37 )]
38 #[serde(
39 rename = "tags",
40 skip_serializing_if = "std::collections::BTreeMap::is_empty",
41 default
42 )]
43 tags: std::collections::BTreeMap<
44 super::super::super::api::TagName,
45 super::super::super::api::TagValue,
46 >,
47 #[builder(default, into)]
48 #[serde(
49 rename = "overWriteSegments",
50 skip_serializing_if = "Option::is_none",
51 default
52 )]
53 over_write_segments: Option<bool>,
54}
55impl VideoOptsV2 {
56 #[inline]
57 pub fn source(&self) -> &super::IngestSource {
58 &*self.source
59 }
60 #[inline]
61 pub fn target(&self) -> &super::DatasetIngestTarget {
62 &*self.target
63 }
64 #[inline]
65 pub fn timestamp_manifest(
66 &self,
67 ) -> &super::super::super::scout::video::api::VideoFileTimestampManifest {
68 &*self.timestamp_manifest
69 }
70 #[inline]
71 pub fn channel(&self) -> &super::super::super::api::Channel {
72 &self.channel
73 }
74 #[inline]
75 pub fn tags(
76 &self,
77 ) -> &std::collections::BTreeMap<
78 super::super::super::api::TagName,
79 super::super::super::api::TagValue,
80 > {
81 &self.tags
82 }
83 #[inline]
86 pub fn over_write_segments(&self) -> Option<bool> {
87 self.over_write_segments.as_ref().map(|o| *o)
88 }
89}