tekhsi_rs 0.1.1

High-performance client for Tektronix TekHSI enabled oscilloscopes
Documentation
use thiserror::Error;

use crate::tekscope::WfmReplyStatus;

/// Errors returned while acquiring headers or waveform data.
#[derive(Debug, Clone, Error)]
pub enum AcquisitionError {
    #[error("channel off or unavailable")]
    ChannelOff,
    #[error("download failed: {message}")]
    DownloadFailed { message: String },
    #[error("header request failed: {status}")]
    HeaderRequestFailed { status: String },
}

impl From<WfmReplyStatus> for AcquisitionError {
    fn from(status: WfmReplyStatus) -> Self {
        AcquisitionError::DownloadFailed {
            message: format!("waveform status: {:?}", status),
        }
    }
}