pub enum TofCommand {
Show 23 variants
Unknown(u32),
Ping(u32),
Moni(u32),
Power(u32),
SetThresholds(u32),
SetMTConfig(u32),
SetPreampBias(u32),
DataRunStop(u32),
DataRunStart(u32),
StartValidationRun(u32),
GetFullWaveforms(u32),
NoiCalibration(u32),
VoltageCalibration(u32),
TimingCalibration(u32),
DefaultCalibration(u32),
UnspoolEventCache(u32),
TriggerModeForced(u32),
TriggerModeForcedMTB(u32),
SystemdReboot(u32),
Listen(u32),
Lock(u32),
Unlock(u32),
Kill(u32),
}
Expand description
General command class for ALL commands to the tof C&C instance and readout boards
Each command can carry a 32bit field with further instructionns
Variants§
Unknown(u32)
Ping(u32)
Moni(u32)
Power(u32)
SetThresholds(u32)
SetMTConfig(u32)
SetPreampBias(u32)
DataRunStop(u32)
DataRunStart(u32)
StartValidationRun(u32)
GetFullWaveforms(u32)
NoiCalibration(u32)
VoltageCalibration(u32)
TimingCalibration(u32)
DefaultCalibration(u32)
UnspoolEventCache(u32)
TriggerModeForced(u32)
TriggerModeForcedMTB(u32)
SystemdReboot(u32)
Listen(u32)
Lock(u32)
Unlock(u32)
Kill(u32)
Implementations§
Source§impl TofCommand
impl TofCommand
pub fn get_value(&self) -> u32
Sourcepub fn from_command_code(cc: TofCommandCode, value: u32) -> TofCommand
pub fn from_command_code(cc: TofCommandCode, value: u32) -> TofCommand
Generate a TofCommand from the specific bytecode representation
Sourcepub fn to_command_code(cmd: &TofCommand) -> Option<TofCommandCode>
pub fn to_command_code(cmd: &TofCommand) -> Option<TofCommandCode>
Translate a TofCommand into its specific byte representation
pub fn from_tof_packet(packet: &TofPacket) -> Option<TofCommand>
Trait Implementations§
Source§impl Clone for TofCommand
impl Clone for TofCommand
Source§fn clone(&self) -> TofCommand
fn clone(&self) -> TofCommand
Returns a copy of the value. Read more
1.0.0 · 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 TofCommand
impl Debug for TofCommand
Source§impl<'de> Deserialize<'de> for TofCommand
impl<'de> Deserialize<'de> for TofCommand
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for TofCommand
impl Display for TofCommand
Source§impl From<&TofCommand> for TofPacket
impl From<&TofCommand> for TofPacket
Source§fn from(cmd: &TofCommand) -> Self
fn from(cmd: &TofCommand) -> Self
Converts to this type from the input type.
Source§impl FromRandom for TofCommand
impl FromRandom for TofCommand
fn from_random() -> Self
Source§impl Packable for TofCommand
impl Packable for TofCommand
const PACKET_TYPE: PacketType = PacketType::TofCommand
Source§fn pack(&self) -> TofPacketwhere
Self: Serialization,
fn pack(&self) -> TofPacketwhere
Self: Serialization,
Wrap myself in a TofPacket
Source§impl PartialEq for TofCommand
impl PartialEq for TofCommand
Source§impl Serialization for TofCommand
impl Serialization for TofCommand
const HEAD: u16 = 43_690u16
const TAIL: u16 = 21_845u16
Source§const SIZE: usize = 9usize
const SIZE: usize = 9usize
The SIZE is the size of the serialized
bytestream INCLUDING 4 bytes for head
and tail bytes. In case the struct does
NOT HAVE a fixed size, SIZE will be 0
(so default value of the trait
Source§fn to_bytestream(&self) -> Vec<u8>
fn to_bytestream(&self) -> Vec<u8>
Encode a serializable to a bytestream
Source§fn from_bytestream(
stream: &Vec<u8>,
pos: &mut usize,
) -> Result<Self, SerializationError>
fn from_bytestream( stream: &Vec<u8>, pos: &mut usize, ) -> Result<Self, SerializationError>
Decode a serializable from a bytestream
Source§fn verify_fixed(
stream: &Vec<u8>,
pos: &mut usize,
) -> Result<(), SerializationError>
fn verify_fixed( stream: &Vec<u8>, pos: &mut usize, ) -> Result<(), SerializationError>
Verify that the serialized representation of the struct has the
correct size, including header + footer. Read more
Source§fn from_tofpacket(packet: &TofPacket) -> Result<Self, SerializationError>where
Self: Sized,
fn from_tofpacket(packet: &TofPacket) -> Result<Self, SerializationError>where
Self: Sized,
Decode a serializable directly from a TofPacket
fn from_slice(
_slice: &[u8],
_start_pos: usize,
) -> Result<Self, SerializationError>where
Self: Sized,
Source§impl Serialize for TofCommand
impl Serialize for TofCommand
impl Copy for TofCommand
impl StructuralPartialEq for TofCommand
Auto Trait Implementations§
impl Freeze for TofCommand
impl RefUnwindSafe for TofCommand
impl Send for TofCommand
impl Sync for TofCommand
impl Unpin for TofCommand
impl UnwindSafe for TofCommand
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 moreSource§impl<T> IntoSql for T
impl<T> IntoSql for T
Source§fn into_sql<T>(self) -> Self::Expression
fn into_sql<T>(self) -> Self::Expression
Convert
self
to an expression for Diesel’s query builder. Read moreSource§fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
Convert
&self
to an expression for Diesel’s query builder. Read more