pub struct DownloadState {
pub model_id: String,
pub filename: String,
pub total_bytes: u64,
pub downloaded_bytes: u64,
pub status: DownloadStatus,
pub cancelled: bool,
pub cancel_token: Option<Arc<AtomicBool>>,
pub download_state: u8,
pub download_state_arc: Option<Arc<AtomicU8>>,
pub start_time: Instant,
pub bytes_per_second: f64,
pub dest: Option<PathBuf>,
}Expand description
Download progress information.
Fields§
§model_id: String§filename: String§total_bytes: u64§downloaded_bytes: u64§status: DownloadStatus§cancelled: bool§cancel_token: Option<Arc<AtomicBool>>§download_state: u8Download control: 1=downloading, 2=paused, 3=cancelled
download_state_arc: Option<Arc<AtomicU8>>Shared atomic state for pausing/resuming the download loop
start_time: Instant§bytes_per_second: f64§dest: Option<PathBuf>Filesystem path where the download is being saved.
Implementations§
Trait Implementations§
Source§impl Clone for DownloadState
impl Clone for DownloadState
Source§fn clone(&self) -> DownloadState
fn clone(&self) -> DownloadState
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 moreAuto Trait Implementations§
impl Freeze for DownloadState
impl RefUnwindSafe for DownloadState
impl Send for DownloadState
impl Sync for DownloadState
impl Unpin for DownloadState
impl UnsafeUnpin for DownloadState
impl UnwindSafe for DownloadState
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> 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 more