#[derive(
Debug,
Clone,
conjure_object::serde::Serialize,
conjure_object::serde::Deserialize,
conjure_object::private::DeriveWith
)]
#[serde(crate = "conjure_object::serde")]
#[derive_with(PartialEq, Eq, PartialOrd, Ord, Hash)]
#[conjure_object::private::staged_builder::staged_builder]
#[builder(crate = conjure_object::private::staged_builder, update, inline)]
pub struct StandardValve {
#[serde(rename = "feedbackChannelVariableName")]
feedback_channel_variable_name: super::super::super::channelvariables::api::ChannelVariableName,
#[builder(default, list(item(type = super::ValveStateMapping)))]
#[serde(rename = "stateMappings", skip_serializing_if = "Vec::is_empty", default)]
state_mappings: Vec<super::ValveStateMapping>,
#[builder(default, list(item(type = super::VizActionOption)))]
#[serde(rename = "actions", skip_serializing_if = "Vec::is_empty", default)]
actions: Vec<super::VizActionOption>,
}
impl StandardValve {
#[inline]
pub fn new(
feedback_channel_variable_name: super::super::super::channelvariables::api::ChannelVariableName,
) -> Self {
Self::builder()
.feedback_channel_variable_name(feedback_channel_variable_name)
.build()
}
#[inline]
pub fn feedback_channel_variable_name(
&self,
) -> &super::super::super::channelvariables::api::ChannelVariableName {
&self.feedback_channel_variable_name
}
#[inline]
pub fn state_mappings(&self) -> &[super::ValveStateMapping] {
&*self.state_mappings
}
#[inline]
pub fn actions(&self) -> &[super::VizActionOption] {
&*self.actions
}
}