pub struct NewRunDraft {Show 39 fields
pub driver: Option<TuneDriver>,
pub template: Option<String>,
pub tagname: Option<String>,
pub server: Option<String>,
pub bridge_host: Option<String>,
pub process_type: Option<ProcessType>,
pub controller_type: Option<ControllerType>,
pub relay_amp: Option<f32>,
pub cycles_skip: Option<u32>,
pub cycles_count: Option<u32>,
pub noise_protection_secs: Option<u32>,
pub mrft_delay: Option<u32>,
pub poll_interval_ms: Option<u64>,
pub timeout_secs: Option<u64>,
pub op_timeout_secs: Option<u64>,
pub restore_timeout_secs: Option<u64>,
pub direction: Option<ControllerDirection>,
pub tag_overrides: Option<TagOverrides>,
pub source_driver: Option<TuneDriver>,
pub source_direction: Option<ControllerDirection>,
pub pv_range_high: Option<f32>,
pub pv_range_low: Option<f32>,
pub mv_range_high: Option<f32>,
pub mv_range_low: Option<f32>,
pub source_pv_range_high: Option<f32>,
pub source_pv_range_low: Option<f32>,
pub source_mv_range_high: Option<f32>,
pub source_mv_range_low: Option<f32>,
pub tag_sources: Option<DraftTagSources>,
pub value_sources: Option<DraftValueSources>,
pub sim_gain: Option<f32>,
pub sim_tau: Option<f32>,
pub sim_dead_time: Option<f32>,
pub sim_noise: Option<f32>,
pub sim_seed: Option<u64>,
pub sim_initial_pv: Option<f32>,
pub sim_initial_mv: Option<f32>,
pub write_pid: Option<ResponseLevel>,
pub yes: Option<bool>,
}Expand description
The editable state of the New Tune form.
Fields are optional because the form is allowed to be incomplete while it is being edited.
The frontend sends the complete shape on each save, using null for a cleared numeric or
enum field. Notes are intentionally absent: they describe one run, not a reusable draft.
Fields§
§driver: Option<TuneDriver>§template: Option<String>§tagname: Option<String>§server: Option<String>§bridge_host: Option<String>§process_type: Option<ProcessType>§controller_type: Option<ControllerType>§relay_amp: Option<f32>§cycles_skip: Option<u32>§cycles_count: Option<u32>§noise_protection_secs: Option<u32>§mrft_delay: Option<u32>§poll_interval_ms: Option<u64>§timeout_secs: Option<u64>§op_timeout_secs: Option<u64>§restore_timeout_secs: Option<u64>§direction: Option<ControllerDirection>§tag_overrides: Option<TagOverrides>§source_driver: Option<TuneDriver>Driver context for the saved direction/range values. New drafts keep this alongside source metadata; older drafts use it to infer whether legacy values are OPC fixed overrides or simulator values.
source_direction: Option<ControllerDirection>Simulator-specific direction/range values. These are draft-only and never go into a run request when the OPC DA driver is active.
pv_range_high: Option<f32>§pv_range_low: Option<f32>§mv_range_high: Option<f32>§mv_range_low: Option<f32>§source_pv_range_high: Option<f32>§source_pv_range_low: Option<f32>§source_mv_range_high: Option<f32>§source_mv_range_low: Option<f32>§tag_sources: Option<DraftTagSources>Draft-only source selectors for tag names and direction/range values.
value_sources: Option<DraftValueSources>§sim_gain: Option<f32>§sim_tau: Option<f32>§sim_dead_time: Option<f32>§sim_noise: Option<f32>§sim_seed: Option<u64>§sim_initial_pv: Option<f32>§sim_initial_mv: Option<f32>§write_pid: Option<ResponseLevel>§yes: Option<bool>Trait Implementations§
Source§impl Clone for NewRunDraft
impl Clone for NewRunDraft
Source§fn clone(&self) -> NewRunDraft
fn clone(&self) -> NewRunDraft
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ComposeSchema for NewRunDraft
impl ComposeSchema for NewRunDraft
Source§impl Debug for NewRunDraft
impl Debug for NewRunDraft
Source§impl<'de> Deserialize<'de> for NewRunDraft
impl<'de> Deserialize<'de> for NewRunDraft
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for NewRunDraft
impl PartialEq for NewRunDraft
Source§fn eq(&self, other: &NewRunDraft) -> bool
fn eq(&self, other: &NewRunDraft) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for NewRunDraft
impl Serialize for NewRunDraft
impl StructuralPartialEq for NewRunDraft
Auto Trait Implementations§
impl Freeze for NewRunDraft
impl RefUnwindSafe for NewRunDraft
impl Send for NewRunDraft
impl Sync for NewRunDraft
impl Unpin for NewRunDraft
impl UnsafeUnpin for NewRunDraft
impl UnwindSafe for NewRunDraft
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].