power_level library

Provides type-safe units for logarithmic power levels.

Import this file to use power level quantities and their num extensions (like 20.dBm or 0.dBW).

Classes

AffineQuantity<T extends Unit<T>, Q extends AffineQuantity<T, Q>>
Base class for quantities whose conversions are affine instead of purely multiplicative.
InverseQuantity<T extends Unit<T>, Q extends InverseQuantity<T, Q>>
Base class for quantities whose conversions route through a reciprocal canonical form.
LinearQuantity<T extends LinearUnit<T>, Q extends LinearQuantity<T, Q>>
An abstract base class for physical quantities with linear (factor-based) unit conversions.
LinearUnit<T extends LinearUnit<T>>
A contract for units that scale linearly (via a simple multiplier).
LogarithmicQuantity<T extends Unit<T>, Q extends LogarithmicQuantity<T, Q>>
Base class for quantities that represent logarithmic levels of another physical dimension.
PowerLevel
Represents an absolute logarithmic power level.
Quantity<T extends Unit<T>>
An abstract representation of a physical quantity, encapsulating a numerical value and a specific unit of measurement.
Unit<T extends Unit<T>>
A base contract for all unit enums.

Enums

PowerLevelUnit
Represents units of absolute power level.

Extensions

PowerLevelCreation on num
Provides convenient factory methods for creating PowerLevel instances.
PowerLevelPowerBridge on PowerLevel
Provides bridge helpers from PowerLevel back to Power.
PowerLevelValueGetters on PowerLevel
Provides convenient access to PowerLevel values in specific units.
PowerPowerLevelBridge on Power
Provides bridge helpers between Power and PowerLevel.