#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub struct Snow3gCryptoVirtualDevice
{
index: u5,
maximNumberOfQueuePairs: u31,
maximNumberOfSessions: u31,
numaSocketId: NumaSocketId,
}
impl VirtualDevice for Snow3gCryptoVirtualDevice
{
type V = CryptoVirtualDeviceDriverName;
const DriverName: CryptoVirtualDeviceDriverName = CryptoVirtualDeviceDriverName::Snow3g;
#[inline(always)]
fn index(&self) -> u5
{
self.index
}
#[inline(always)]
fn formattedVirtualDeviceArgumentsWithLeadingComma(&self) -> String
{
self.formattedVirtualDeviceArgumentsWithLeadingCommaCommon()
}
}
impl CryptoVirtualDevice for Snow3gCryptoVirtualDevice
{
#[inline(always)]
fn maximNumberOfQueuePairs(&self) -> u31
{
self.maximNumberOfQueuePairs
}
#[inline(always)]
fn maximNumberOfSessions(&self) -> u31
{
self.maximNumberOfSessions
}
#[inline(always)]
fn numaSocketId(&self) -> NumaSocketId
{
self.numaSocketId
}
}
impl Snow3gCryptoVirtualDevice
{
#[inline(always)]
pub fn defaultish(index: u5, numaSocketId: NumaSocketId) -> Self
{
Self::new(index, numaSocketId, Self::DefaultMaximumNumberOfQueuePairs, Self::DefaultMaximumNumberOfSessions)
}
#[inline(always)]
pub fn new(index: u5, numaSocketId: NumaSocketId, maximNumberOfQueuePairs: u31, maximNumberOfSessions: u31) -> Self
{
assert!(index < VirtualDeviceName::<CryptoVirtualDeviceDriverName>::MaximumIndex, "index '{}' can not equal or exceed MaximumIndex '{}'", index, VirtualDeviceName::<CryptoVirtualDeviceDriverName>::MaximumIndex);
Snow3gCryptoVirtualDevice
{
index: index,
maximNumberOfQueuePairs: maximNumberOfQueuePairs,
maximNumberOfSessions: maximNumberOfSessions,
numaSocketId: numaSocketId,
}
}
}