aws_sdk_mediaconvert/types/
_xavc_hd_intra_cbg_profile_settings.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// Required when you set Profile to the value XAVC_HD_INTRA_CBG.
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct XavcHdIntraCbgProfileSettings {
7    /// Specify the XAVC Intra HD (CBG) Class to set the bitrate of your output. Outputs of the same class have similar image quality over the operating points that are valid for that class.
8    pub xavc_class: ::std::option::Option<crate::types::XavcHdIntraCbgProfileClass>,
9}
10impl XavcHdIntraCbgProfileSettings {
11    /// Specify the XAVC Intra HD (CBG) Class to set the bitrate of your output. Outputs of the same class have similar image quality over the operating points that are valid for that class.
12    pub fn xavc_class(&self) -> ::std::option::Option<&crate::types::XavcHdIntraCbgProfileClass> {
13        self.xavc_class.as_ref()
14    }
15}
16impl XavcHdIntraCbgProfileSettings {
17    /// Creates a new builder-style object to manufacture [`XavcHdIntraCbgProfileSettings`](crate::types::XavcHdIntraCbgProfileSettings).
18    pub fn builder() -> crate::types::builders::XavcHdIntraCbgProfileSettingsBuilder {
19        crate::types::builders::XavcHdIntraCbgProfileSettingsBuilder::default()
20    }
21}
22
23/// A builder for [`XavcHdIntraCbgProfileSettings`](crate::types::XavcHdIntraCbgProfileSettings).
24#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
25#[non_exhaustive]
26pub struct XavcHdIntraCbgProfileSettingsBuilder {
27    pub(crate) xavc_class: ::std::option::Option<crate::types::XavcHdIntraCbgProfileClass>,
28}
29impl XavcHdIntraCbgProfileSettingsBuilder {
30    /// Specify the XAVC Intra HD (CBG) Class to set the bitrate of your output. Outputs of the same class have similar image quality over the operating points that are valid for that class.
31    pub fn xavc_class(mut self, input: crate::types::XavcHdIntraCbgProfileClass) -> Self {
32        self.xavc_class = ::std::option::Option::Some(input);
33        self
34    }
35    /// Specify the XAVC Intra HD (CBG) Class to set the bitrate of your output. Outputs of the same class have similar image quality over the operating points that are valid for that class.
36    pub fn set_xavc_class(mut self, input: ::std::option::Option<crate::types::XavcHdIntraCbgProfileClass>) -> Self {
37        self.xavc_class = input;
38        self
39    }
40    /// Specify the XAVC Intra HD (CBG) Class to set the bitrate of your output. Outputs of the same class have similar image quality over the operating points that are valid for that class.
41    pub fn get_xavc_class(&self) -> &::std::option::Option<crate::types::XavcHdIntraCbgProfileClass> {
42        &self.xavc_class
43    }
44    /// Consumes the builder and constructs a [`XavcHdIntraCbgProfileSettings`](crate::types::XavcHdIntraCbgProfileSettings).
45    pub fn build(self) -> crate::types::XavcHdIntraCbgProfileSettings {
46        crate::types::XavcHdIntraCbgProfileSettings { xavc_class: self.xavc_class }
47    }
48}