pub struct ExperimentRecord {
pub instrument: ConstantWavelengthInstrument,
pub radiation: RadiationDefinition,
pub axial_geometry: Option<FcjGeometry>,
pub position_correction: MonochromaticPositionCorrection,
}Expand description
Constant-wavelength experiment shared by native workflows and adapters.
Fields§
§instrument: ConstantWavelengthInstrumentReference U/V/W/X/Y instrument.
radiation: RadiationDefinitionMonochromatic or fixed-spectrum radiation.
axial_geometry: Option<FcjGeometry>Optional axial-divergence geometry.
position_correction: MonochromaticPositionCorrectionExplicit zero/specimen-displacement correction.
Implementations§
Source§impl ExperimentRecord
impl ExperimentRecord
Sourcepub fn new(
instrument: ConstantWavelengthInstrument,
radiation: RadiationDefinition,
axial_geometry: Option<FcjGeometry>,
position_correction: MonochromaticPositionCorrection,
) -> Result<Self, DomainError>
pub fn new( instrument: ConstantWavelengthInstrument, radiation: RadiationDefinition, axial_geometry: Option<FcjGeometry>, position_correction: MonochromaticPositionCorrection, ) -> Result<Self, DomainError>
Validate agreement between radiation, instrument, and geometry.
§Errors
Returns DomainError when reference wavelengths disagree or geometry
contains a non-finite/nonphysical value.
Sourcepub fn validate(&self) -> Result<(), DomainError>
pub fn validate(&self) -> Result<(), DomainError>
Revalidate the experiment after direct adapter-side construction.
§Errors
Returns DomainError when reference wavelengths disagree or geometry
contains a non-finite/nonphysical value.
Trait Implementations§
Source§impl Clone for ExperimentRecord
impl Clone for ExperimentRecord
Source§fn clone(&self) -> ExperimentRecord
fn clone(&self) -> ExperimentRecord
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 Debug for ExperimentRecord
impl Debug for ExperimentRecord
Source§impl PartialEq for ExperimentRecord
impl PartialEq for ExperimentRecord
impl StructuralPartialEq for ExperimentRecord
Auto Trait Implementations§
impl Freeze for ExperimentRecord
impl RefUnwindSafe for ExperimentRecord
impl Send for ExperimentRecord
impl Sync for ExperimentRecord
impl Unpin for ExperimentRecord
impl UnsafeUnpin for ExperimentRecord
impl UnwindSafe for ExperimentRecord
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,
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