pub struct TweezerArrayManager { /* private fields */ }Expand description
Tweezer array manager
Implementations§
Source§impl TweezerArrayManager
impl TweezerArrayManager
Sourcepub fn new(config: TweezerArrayConfig) -> Self
pub fn new(config: TweezerArrayConfig) -> Self
Create a new tweezer array manager
Sourcepub async fn load_atoms(
&mut self,
tweezer_ids: &[usize],
) -> DeviceResult<LoadingResult>
pub async fn load_atoms( &mut self, tweezer_ids: &[usize], ) -> DeviceResult<LoadingResult>
Load atoms into specified tweezers
Sourcepub async fn move_atom(
&mut self,
tweezer_id: usize,
target_position: TweezerPosition,
parameters: MovementParameters,
) -> DeviceResult<String>
pub async fn move_atom( &mut self, tweezer_id: usize, target_position: TweezerPosition, parameters: MovementParameters, ) -> DeviceResult<String>
Move an atom from one position to another
Sourcepub async fn process_movements(&mut self) -> DeviceResult<()>
pub async fn process_movements(&mut self) -> DeviceResult<()>
Process movement operations
Sourcepub const fn get_array_state(&self) -> &TweezerArrayState
pub const fn get_array_state(&self) -> &TweezerArrayState
Get current array state
Sourcepub const fn get_loading_statistics(&self) -> &LoadingStatistics
pub const fn get_loading_statistics(&self) -> &LoadingStatistics
Get loading statistics
Sourcepub fn get_atom_positions(&self) -> Vec<(usize, TweezerPosition)>
pub fn get_atom_positions(&self) -> Vec<(usize, TweezerPosition)>
Get atom positions
Sourcepub async fn optimize_array(&mut self) -> DeviceResult<OptimizationResult>
pub async fn optimize_array(&mut self) -> DeviceResult<OptimizationResult>
Optimize array configuration
Auto Trait Implementations§
impl Freeze for TweezerArrayManager
impl RefUnwindSafe for TweezerArrayManager
impl Send for TweezerArrayManager
impl Sync for TweezerArrayManager
impl Unpin for TweezerArrayManager
impl UnwindSafe for TweezerArrayManager
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.