27 lines
924 B
Rust
27 lines
924 B
Rust
//! Data types (sample formats) that can come from a DAQ device, or have to be sent as output to a
|
|
//! DAQ device.
|
|
use strum::EnumMessage;
|
|
use strum_macros;
|
|
use serde::{Serialize, Deserialize};
|
|
|
|
/// Data type description for samples coming from a stream
|
|
#[derive(strum_macros::EnumMessage, PartialEq, Copy, Debug, Clone, Serialize, Deserialize)]
|
|
#[allow(dead_code)]
|
|
pub enum DataType {
|
|
/// 32-bit floats
|
|
#[strum(message = "F32", detailed_message = "32-bits floating points")]
|
|
F32 = 0,
|
|
/// 64-bit floats
|
|
#[strum(message = "F64", detailed_message = "64-bits floating points")]
|
|
F64 = 1,
|
|
/// 8-bit integers
|
|
#[strum(message = "I8", detailed_message = "8-bits integers")]
|
|
I8 = 2,
|
|
/// 16-bit integers
|
|
#[strum(message = "I16", detailed_message = "16-bits integers")]
|
|
I16 = 3,
|
|
/// 32-bit integers
|
|
#[strum(message = "I32", detailed_message = "32-bits integers")]
|
|
I32 = 4,
|
|
}
|