| Index: ui/base/text/bytes_formatting.h
|
| diff --git a/ui/base/text/bytes_formatting.h b/ui/base/text/bytes_formatting.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..66f403e78dd9359969fa10c8ae437dd467e5b9e1
|
| --- /dev/null
|
| +++ b/ui/base/text/bytes_formatting.h
|
| @@ -0,0 +1,44 @@
|
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef UI_BASE_TEXT_BYTES_FORMATTING_H_
|
| +#define UI_BASE_TEXT_BYTES_FORMATTING_H_
|
| +#pragma once
|
| +
|
| +#include "base/basictypes.h"
|
| +#include "base/string16.h"
|
| +
|
| +namespace ui {
|
| +
|
| +enum DataUnits {
|
| + DATA_UNITS_NATURAL = -1,
|
| + DATA_UNITS_BYTE = 0,
|
| + DATA_UNITS_KIBIBYTE,
|
| + DATA_UNITS_MEBIBYTE,
|
| + DATA_UNITS_GIBIBYTE,
|
| + DATA_UNITS_TEBIBYTE,
|
| + DATA_UNITS_PEBIBYTE
|
| +};
|
| +
|
| +// Return the unit type that is appropriate for displaying the amount of bytes
|
| +// passed in. Most of the time, an explicit call to this isn't necessary; just
|
| +// use the DATA_UNITS_NATURAL argument to FormatBytes()/FormatSpeed().
|
| +DataUnits GetByteDisplayUnits(int64 bytes);
|
| +
|
| +// Return a byte string in human-readable format with an optional unit suffix.
|
| +// Specify a |units| argument to explictly request the units to be used, or pass
|
| +// in DATA_UNITS_NATURAL to have the units to match the scale of the |bytes|
|
| +// argument (the value that GetBytesDisplayUnits() would return).
|
| +// Ex: FormatBytes(512, DATA_UNITS_KIBIBYTE, true) => "0.5 kB"
|
| +// Ex: FormatBytes(10*1024, DATA_UNITS_MEBIBYTE, false) => "0.1"
|
| +string16 FormatBytes(int64 bytes, DataUnits units, bool show_units);
|
| +
|
| +// As above, but with "/s" units.
|
| +// Ex: FormatSpeed(512, DATA_UNITS_KIBIBYTE, true) => "0.5 kB/s"
|
| +// Ex: FormatSpeed(10*1024, DATA_UNITS_MEBIBYTE, false) => "0.1"
|
| +string16 FormatSpeed(int64 bytes, DataUnits units, bool show_units);
|
| +
|
| +} // namespace ui
|
| +
|
| +#endif // UI_BASE_TEXT_BYTES_FORMATTING_H_
|
|
|