redfish_codegen/models/control/v1_3_0/
control.rs

1// Generated by redfish-codegen. Do not modify.
2
3use crate::models;
4
5/// The Control schema describes a control point and its properties.
6#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct Control {
10    #[serde(rename = "@odata.context")]
11    #[serde(skip_deserializing)]
12    #[serde(default, skip_serializing_if = "Option::is_none")]
13    pub odata_context: Option<models::odata_v4::Context>,
14    #[serde(rename = "@odata.etag")]
15    #[serde(skip_deserializing)]
16    #[serde(default, skip_serializing_if = "Option::is_none")]
17    pub odata_etag: Option<models::odata_v4::Etag>,
18    #[serde(rename = "@odata.id")]
19    #[serde(skip_deserializing)]
20    pub odata_id: models::odata_v4::Id,
21    #[serde(rename = "@odata.type")]
22    #[serde(skip_deserializing)]
23    #[derivative(Default(value = "models::odata_v4::Type(\"#Control.v1_3_0.Control\".to_string())"))]
24    pub odata_type: models::odata_v4::Type,
25    /// The estimated percent error of measured versus actual values.
26    #[serde(rename = "Accuracy")]
27    #[serde(default, skip_serializing_if = "Option::is_none")]
28    pub accuracy: Option<f64>,
29    #[serde(rename = "Actions")]
30    #[serde(default, skip_serializing_if = "Option::is_none")]
31    pub actions: Option<models::control::v1_3_0::Actions>,
32    /// The maximum possible setting for this control.
33    #[serde(rename = "AllowableMax")]
34    #[serde(default, skip_serializing_if = "Option::is_none")]
35    pub allowable_max: Option<f64>,
36    /// The minimum possible setting for this control.
37    #[serde(rename = "AllowableMin")]
38    #[serde(default, skip_serializing_if = "Option::is_none")]
39    pub allowable_min: Option<f64>,
40    /// The supported values for the set point.
41    #[serde(rename = "AllowableNumericValues")]
42    #[serde(default, skip_serializing_if = "Option::is_none")]
43    pub allowable_numeric_values: Option<Vec<f64>>,
44    /// An array of links to the sensors associated with this control.
45    #[serde(rename = "AssociatedSensors")]
46    #[serde(default, skip_serializing_if = "Option::is_none")]
47    pub associated_sensors: Option<Vec<models::odata_v4::IdRef>>,
48    #[serde(rename = "AssociatedSensors@odata.count")]
49    #[serde(default, skip_serializing_if = "Option::is_none")]
50    pub associated_sensors_odata_count: Option<models::odata_v4::Count>,
51    /// The time delay in seconds before the control will activate once the value has deviated from the set point.
52    #[serde(rename = "ControlDelaySeconds")]
53    #[serde(default, skip_serializing_if = "Option::is_none")]
54    pub control_delay_seconds: Option<f64>,
55    #[serde(rename = "ControlLoop")]
56    #[serde(default, skip_serializing_if = "Option::is_none")]
57    pub control_loop: Option<models::control::v1_3_0::ControlLoop>,
58    #[serde(rename = "ControlMode")]
59    #[serde(default, skip_serializing_if = "Option::is_none")]
60    pub control_mode: Option<models::control::v1_3_0::ControlMode>,
61    #[serde(rename = "ControlType")]
62    #[serde(default, skip_serializing_if = "Option::is_none")]
63    pub control_type: Option<models::control::v1_3_0::ControlType>,
64    /// The maximum deviation from the set point allowed before the control will activate.
65    #[serde(rename = "DeadBand")]
66    #[serde(default, skip_serializing_if = "Option::is_none")]
67    pub dead_band: Option<f64>,
68    /// The default set point of the control.
69    #[serde(rename = "DefaultSetPoint")]
70    #[serde(default, skip_serializing_if = "Option::is_none")]
71    pub default_set_point: Option<f64>,
72    #[serde(rename = "Description")]
73    #[serde(default, skip_serializing_if = "Option::is_none")]
74    pub description: Option<models::resource::Description>,
75    #[serde(rename = "Id")]
76    #[serde(skip_deserializing)]
77    pub id: models::resource::Id,
78    #[serde(rename = "Implementation")]
79    #[serde(default, skip_serializing_if = "Option::is_none")]
80    pub implementation: Option<models::control::v1_3_0::ImplementationType>,
81    /// The smallest increment supported for the set point.
82    #[serde(rename = "Increment")]
83    #[serde(default, skip_serializing_if = "Option::is_none")]
84    pub increment: Option<f64>,
85    #[serde(rename = "Location")]
86    #[serde(default, skip_serializing_if = "Option::is_none")]
87    pub location: Option<models::resource::Location>,
88    #[serde(rename = "Name")]
89    #[serde(skip_deserializing)]
90    pub name: models::resource::Name,
91    #[serde(rename = "Oem")]
92    #[serde(default, skip_serializing_if = "Option::is_none")]
93    pub oem: Option<models::resource::Oem>,
94    #[serde(rename = "PhysicalContext")]
95    #[serde(default, skip_serializing_if = "Option::is_none")]
96    pub physical_context: Option<models::physical_context::PhysicalContext>,
97    #[serde(rename = "PhysicalSubContext")]
98    #[serde(default, skip_serializing_if = "Option::is_none")]
99    pub physical_sub_context: Option<models::physical_context::PhysicalSubContext>,
100    /// An array of links to resources that this control services.
101    #[serde(rename = "RelatedItem")]
102    #[serde(default, skip_serializing_if = "Option::is_none")]
103    pub related_item: Option<Vec<models::odata_v4::IdRef>>,
104    #[serde(rename = "RelatedItem@odata.count")]
105    #[serde(default, skip_serializing_if = "Option::is_none")]
106    pub related_item_odata_count: Option<models::odata_v4::Count>,
107    #[serde(rename = "Sensor")]
108    #[serde(default, skip_serializing_if = "Option::is_none")]
109    pub sensor: Option<models::sensor::SensorExcerpt>,
110    /// The desired set point of the control.
111    #[serde(rename = "SetPoint")]
112    #[serde(default, skip_serializing_if = "Option::is_none")]
113    pub set_point: Option<f64>,
114    #[serde(rename = "SetPointType")]
115    #[serde(default, skip_serializing_if = "Option::is_none")]
116    pub set_point_type: Option<models::control::v1_3_0::SetPointType>,
117    /// The units of the set point.
118    #[serde(rename = "SetPointUnits")]
119    #[serde(default, skip_serializing_if = "Option::is_none")]
120    pub set_point_units: Option<String>,
121    /// The date and time that the set point was changed.
122    #[serde(rename = "SetPointUpdateTime")]
123    #[serde(default, skip_serializing_if = "Option::is_none")]
124    pub set_point_update_time: Option<String>,
125    /// The maximum set point in the allowed range.
126    #[serde(rename = "SettingMax")]
127    #[serde(default, skip_serializing_if = "Option::is_none")]
128    pub setting_max: Option<f64>,
129    /// The minimum set point in the allowed range.
130    #[serde(rename = "SettingMin")]
131    #[serde(default, skip_serializing_if = "Option::is_none")]
132    pub setting_min: Option<f64>,
133    #[serde(rename = "Status")]
134    #[serde(default, skip_serializing_if = "Option::is_none")]
135    pub status: Option<models::resource::Status>,
136}
137
138impl crate::Metadata<'static> for Control {
139    const JSON_SCHEMA: &'static str = "Control.v1_3_0.json";
140}