public DataVolume(double value, IDataVolumeUnit unit, IBigPrefix prefix) : base(value, unit, prefix) { }
protected internal DataVolumeBase(double value, T unit, IBigPrefix prefix) : base(value, unit, prefix) { }
public override string ToString(T unit, IBigPrefix prefix = null) => $"{GetValue(unit)} {prefix?.Abbreviation ?? ""}{unit.Abbreviation}";
public double GetOctet(IBigPrefix prefix) => GetValue((T)Unit.Octet, prefix);
public double GetWord(IBigPrefix prefix) => GetValue((T)Unit.Word, prefix);
public double GetByte(IBigPrefix prefix) => GetValue((T)Unit.Byte, prefix);
public double GetBit(IBigPrefix prefix) => GetValue((T)Unit.Bit, prefix);
public static TD FromWord(double value, IBigPrefix prefix) => Create(value, (T)Unit.Word, prefix);
public static TD FromOctet(double value, IBigPrefix prefix) => Create(value, (T)Unit.Octet, prefix);
public static TD FromByte(double value, IBigPrefix prefix) => Create(value, (T)Unit.Byte, prefix);