pub struct DbInterval {
    pub min: i32,
    pub max: i32,
    pub linear: bool,
    pub mute_avail: bool,
}
Expand description

The data to express dB interval in TLV (Type-Length-Value) of ALSA control interface.

It has three variants below;

  • SNDRV_CTL_TLVT_DB_LINEAR(=2)
  • SNDRV_CTL_TLVT_DB_MINMAX(=4)
  • SNDRV_CTL_TLVT_DB_MINMAX_MUTE(=5)

All of them have two elements in value field.

Fields

min: i32

The minimum value by dB expression, in 0.1 dB unit. This corresponds to the minimum value in the state of control element.

max: i32

The maximum value by dB expression, 0.1 dB unit. This corresponds to the maximum value in the state of control element.

linear: bool

If true, the value in the state of control element increases linearly, thus need calculation to convert to the value by dB expression. The calculation shall be:

20 * log10( current_value / ( maximum_value - minimum_value ) ) (* 100 in 0.1dB unit)

Else, the value in the state of control element corresponds to dB expression itself.

mute_avail: bool

If true, the value less than or equals to CTL_VALUE_MUTE (=-9999999) is available to mute the control element explicitly.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Converts to this type from the input type.

Converts to this type from the input type.

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

The length from the minimum to maximum.

Whether the val is between the minimum and maximum.

Return the value of type field. It should come from UAPI of Linux kernel.

Return the length of value field. It should be in byte unit and multiples of 4 as result.

Generate vector with u32 element for raw data.

The type returned in the event of a conversion error.

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.