|
libyui
|
#include <FSize.h>
Public Types | |
| enum | Unit { B = 0, K, M, G, T } |
Public Member Functions | |
| FSize (const long long size_r=0) | |
| FSize (const long long size_r, const Unit unit_r) | |
| FSize (const std::string &sizeStr, const Unit unit_r=B) | |
| operator long long () const | |
| FSize & | operator+= (const long long rhs) |
| FSize & | operator-= (const long long rhs) |
| FSize & | operator*= (const long long rhs) |
| FSize & | operator/= (const long long rhs) |
| FSize & | operator++ () |
| FSize & | operator-- () |
| FSize | operator++ (int) |
| FSize | operator-- (int) |
| FSize & | fillBlock (FSize blocksize_r=KB) |
| FSize | fullBlock (FSize blocksize_r=KB) const |
| long long | operator() (const Unit unit_r) const |
| Unit | bestUnit () const |
| std::string | form (const Unit unit_r, unsigned fw=0, unsigned prec=bestPrec, const bool showunit=true) const |
| std::string | form (unsigned fw=0, unsigned prec=bestPrec, const bool showunit=true) const |
| std::string | asString () const |
Static Public Member Functions | |
| static long long | factor (const Unit unit_r) |
| static const char * | unit (const Unit unit_r) |
Static Public Attributes | |
| static const long long | KB = 1024 |
| static const long long | MB = 1024 * KB |
| static const long long | GB = 1024 * MB |
| static const long long | TB = 1024 * GB |
| static const unsigned | bestPrec = (unsigned)-1 |
Store and operate on (file/package/partition) sizes (long long).
| enum FSize::Unit |
The Units
| FSize::FSize | ( | const long long | size_r = 0 | ) | [inline] |
Construct from size in Byte.
| FSize::FSize | ( | const long long | size_r, |
| const Unit | unit_r | ||
| ) | [inline] |
Construct from size in certain unit. E.g. FSize( 1, FSize::K ) makes 1024 Byte.
| FSize::FSize | ( | const std::string & | sizeStr, |
| const Unit | unit_r = B |
||
| ) |
Construct from string containing a number in given unit.
| std::string FSize::asString | ( | ) | const |
Default string representation (precision 1 and unit appended).
| FSize::Unit FSize::bestUnit | ( | ) | const |
Return the best unit for string representation.
| static long long FSize::factor | ( | const Unit | unit_r | ) | [inline, static] |
Return ammount of Byte in Unit.
| std::string FSize::form | ( | const Unit | unit_r, |
| unsigned | fw = 0, |
||
| unsigned | prec = bestPrec, |
||
| const bool | showunit = true |
||
| ) | const |
Return string representation in given Unit. Parameter fw and prec denote field width and precision as in a "%*.*f" printf format string. Avalue of bestPrec automatically picks an appropriate precision depending on the unit. If showunit ist true, the string representaion of Unit is appended separated by a single blank.
If Unit is Byte, precision is set to zero.
| std::string FSize::form | ( | unsigned | fw = 0, |
| unsigned | prec = bestPrec, |
||
| const bool | showunit = true |
||
| ) | const [inline] |
Return string representation in bestUnit.
Return size adjusted to multiple of blocksize_r
| FSize::operator long long | ( | ) | const [inline] |
Conversion to long long
| long long FSize::operator() | ( | const Unit | unit_r | ) | const [inline] |
Return size in Unit ( not rounded )
| static const char* FSize::unit | ( | const Unit | unit_r | ) | [inline, static] |
String representation of Unit.
const unsigned FSize::bestPrec = (unsigned)-1 [static] |
Used as precision argument to form(), the 'best' precision according to Unist is chosen.
1.7.3