예제 #1
0
 public DataSize(long size)
 {
     BaseBValue = size;
     Value      = size;
     _unit      = SizeUnitEnum.B;
     while (Value >= ConversionFactor)
     {
         Value /= ConversionFactor;
         _unit++;
     }
 }
예제 #2
0
 public CompressionThreshold(string value)
 {
     if (value.Contains(SizeUnitEnum.Byte.ToString()))
     {
         Size = Convert.ToInt64(value.Replace(SizeUnitEnum.Byte.ToString(), ""));
         Unit = SizeUnitEnum.Byte;
     }
     else if (value.Contains(SizeUnitEnum.Kilobyte.ToString()))
     {
         Size = Convert.ToInt64(value.Replace(SizeUnitEnum.Kilobyte.ToString(), ""));
         Unit = SizeUnitEnum.Kilobyte;
     }
     else
     {
         throw new ArgumentException("String cannot be converted into compression threshold.");
     }
 }
예제 #3
0
        public DataSize(double size, SizeUnitEnum sizeUnit = SizeUnitEnum.B)
        {
            var temp = size;

            for (int i = 0; i < sizeUnit - SizeUnitEnum.B; i++)
            {
                temp *= ConversionFactor;
            }
            BaseBValue = (long)temp;
            while (size >= ConversionFactor && sizeUnit < SizeUnitEnum.P)
            {
                size /= ConversionFactor;
                sizeUnit++;
            }
            Value = size;
            _unit = sizeUnit;
        }
예제 #4
0
 public CompressionThreshold(Int64 size, SizeUnitEnum unit)
 {
     this.Size = size;
     this.Unit = unit;
 }