zypp::ByteCount Class Reference

Store and operate with byte count. More...

#include <ByteCount.h>

List of all members.

Public Types

typedef base::Unit Unit
typedef Unit::ValueType SizeType

Public Member Functions

 ByteCount ()
 Default ctor.
 ByteCount (const Unit &unit_r)
 Ctor taking 1 Unit.
 ByteCount (const SizeType count_r, const Unit &unit_r=B)
 Ctor taking a count and optinal Unit.
 operator SizeType () const
 Conversion to SizeType.
ByteCountfillBlock (ByteCount blocksize_r=K)
 Adjust count to multiple of blocksize_r (default 1K).
ByteCount fullBlocks (ByteCount blocksize_r=K) const
 Return count adjusted to multiple of blocksize_r (default 1K).
SizeType blocks (ByteCount blocksize_r=K) const
 Return number of blocks of size blocksize_r (default 1K).
const UnitbestUnit () const
 Return the best Unit (B,K,M,G,T) for count.
const UnitbestUnit1000 () const
 Return the best Unit (B,kB,MB,GB,TB) for count.
Arithmetic operations.
+ - * / are provided via conversion to SizeType.

ByteCountoperator+= (const SizeType rhs)
ByteCountoperator-= (const SizeType rhs)
ByteCountoperator *= (const SizeType rhs)
ByteCountoperator/= (const SizeType rhs)
ByteCountoperator++ ()
ByteCountoperator-- ()
ByteCount operator++ (int)
ByteCount operator-- (int)
Conversion to string.
  • field_width_r Width for the number part (incl. precision)
  • unit_width_r With for the unit symbol (without symbol if zero)
  • prec_r Precision to use.
    See also:
    zypp::base::Unit


std::string asString (unsigned field_width_r=0, unsigned unit_width_r=1) const
 Auto selected Unit and precision.
std::string asString (unsigned field_width_r, unsigned unit_width_r, unsigned prec_r) const
 Auto selected Unit.
std::string asString (const Unit &unit_r, unsigned field_width_r=0, unsigned unit_width_r=1) const
 Auto selected precision.
std::string asString (const Unit &unit_r, unsigned field_width_r, unsigned unit_width_r, unsigned prec_r) const
 Nothing auto selected.

Static Public Attributes

Byte unit constants.
static const Unit B
 1 Byte
static const Unit K
 1024 Byte
static const Unit M
 1024^2 Byte
static const Unit G
 1024^3 Byte
static const Unit T
 1024^4 Byte
static const Unit kB
 1000 Byte
static const Unit MB
 1000^2 Byte
static const Unit GB
 1000^3 Byte
static const Unit TB
 1000^4 Byte

Private Attributes

SizeType _count

Friends

std::ostream & operator<< (std::ostream &str, const ByteCount &obj)


Detailed Description

Store and operate with byte count.

Definition at line 30 of file ByteCount.h.


Member Typedef Documentation

typedef base::Unit zypp::ByteCount::Unit
 

Definition at line 36 of file ByteCount.h.

typedef Unit::ValueType zypp::ByteCount::SizeType
 

Definition at line 37 of file ByteCount.h.


Constructor & Destructor Documentation

zypp::ByteCount::ByteCount  )  [inline]
 

Default ctor.

Definition at line 64 of file ByteCount.h.

Referenced by fullBlocks().

zypp::ByteCount::ByteCount const Unit unit_r  )  [inline]
 

Ctor taking 1 Unit.

Definition at line 68 of file ByteCount.h.

zypp::ByteCount::ByteCount const SizeType  count_r,
const Unit unit_r = B
[inline]
 

Ctor taking a count and optinal Unit.

Definition at line 72 of file ByteCount.h.


Member Function Documentation

zypp::ByteCount::operator SizeType  )  const [inline]
 

Conversion to SizeType.

Definition at line 79 of file ByteCount.h.

References _count.

ByteCount& zypp::ByteCount::operator+= const SizeType  rhs  )  [inline]
 

Definition at line 86 of file ByteCount.h.

References _count.

ByteCount& zypp::ByteCount::operator-= const SizeType  rhs  )  [inline]
 

Definition at line 87 of file ByteCount.h.

References _count.

ByteCount& zypp::ByteCount::operator *= const SizeType  rhs  )  [inline]
 

Definition at line 88 of file ByteCount.h.

References _count.

ByteCount& zypp::ByteCount::operator/= const SizeType  rhs  )  [inline]
 

Definition at line 89 of file ByteCount.h.

References _count.

ByteCount& zypp::ByteCount::operator++  )  [inline]
 

Definition at line 91 of file ByteCount.h.

References _count.

ByteCount& zypp::ByteCount::operator--  )  [inline]
 

Definition at line 92 of file ByteCount.h.

References _count.

ByteCount zypp::ByteCount::operator++ int   )  [inline]
 

Definition at line 94 of file ByteCount.h.

References _count.

ByteCount zypp::ByteCount::operator-- int   )  [inline]
 

Definition at line 95 of file ByteCount.h.

References _count.

ByteCount & zypp::ByteCount::fillBlock ByteCount  blocksize_r = K  ) 
 

Adjust count to multiple of blocksize_r (default 1K).

Zero blocksize_r is treated as 1B.

Definition at line 38 of file ByteCount.cc.

References _count.

ByteCount zypp::ByteCount::fullBlocks ByteCount  blocksize_r = K  )  const [inline]
 

Return count adjusted to multiple of blocksize_r (default 1K).

Definition at line 104 of file ByteCount.h.

References ByteCount().

Referenced by blocks().

SizeType zypp::ByteCount::blocks ByteCount  blocksize_r = K  )  const [inline]
 

Return number of blocks of size blocksize_r (default 1K).

Definition at line 108 of file ByteCount.h.

References fullBlocks().

const ByteCount::Unit & zypp::ByteCount::bestUnit  )  const
 

Return the best Unit (B,K,M,G,T) for count.

Definition at line 65 of file ByteCount.cc.

References _count, B, zypp::base::Unit::factor(), G, K, M, and T.

Referenced by asString().

const ByteCount::Unit & zypp::ByteCount::bestUnit1000  )  const
 

Return the best Unit (B,kB,MB,GB,TB) for count.

Definition at line 84 of file ByteCount.cc.

References _count, B, zypp::base::Unit::factor(), GB, kB, MB, and TB.

std::string zypp::ByteCount::asString unsigned  field_width_r = 0,
unsigned  unit_width_r = 1
const [inline]
 

Auto selected Unit and precision.

Definition at line 127 of file ByteCount.h.

References bestUnit().

Referenced by asString().

std::string zypp::ByteCount::asString unsigned  field_width_r,
unsigned  unit_width_r,
unsigned  prec_r
const [inline]
 

Auto selected Unit.

Definition at line 131 of file ByteCount.h.

References asString(), and bestUnit().

std::string zypp::ByteCount::asString const Unit unit_r,
unsigned  field_width_r = 0,
unsigned  unit_width_r = 1
const [inline]
 

Auto selected precision.

Definition at line 136 of file ByteCount.h.

References asString(), and zypp::base::Unit::prec().

std::string zypp::ByteCount::asString const Unit unit_r,
unsigned  field_width_r,
unsigned  unit_width_r,
unsigned  prec_r
const [inline]
 

Nothing auto selected.

Definition at line 141 of file ByteCount.h.

References _count, and zypp::base::Unit::form().


Friends And Related Function Documentation

std::ostream & operator<< std::ostream &  str,
const ByteCount obj
[friend]
 

Stream output

Definition at line 154 of file ByteCount.h.


Member Data Documentation

const ByteCount::Unit zypp::ByteCount::B [static]
 

1 Byte

Definition at line 42 of file ByteCount.h.

Referenced by bestUnit(), and bestUnit1000().

const ByteCount::Unit zypp::ByteCount::K [static]
 

1024 Byte

Definition at line 44 of file ByteCount.h.

Referenced by bestUnit().

const ByteCount::Unit zypp::ByteCount::M [static]
 

1024^2 Byte

Definition at line 46 of file ByteCount.h.

Referenced by bestUnit().

const ByteCount::Unit zypp::ByteCount::G [static]
 

1024^3 Byte

Definition at line 48 of file ByteCount.h.

Referenced by bestUnit().

const ByteCount::Unit zypp::ByteCount::T [static]
 

1024^4 Byte

Definition at line 50 of file ByteCount.h.

Referenced by bestUnit().

const ByteCount::Unit zypp::ByteCount::kB [static]
 

1000 Byte

Definition at line 52 of file ByteCount.h.

Referenced by bestUnit1000().

const ByteCount::Unit zypp::ByteCount::MB [static]
 

1000^2 Byte

Definition at line 54 of file ByteCount.h.

Referenced by bestUnit1000().

const ByteCount::Unit zypp::ByteCount::GB [static]
 

1000^3 Byte

Definition at line 56 of file ByteCount.h.

Referenced by bestUnit1000().

const ByteCount::Unit zypp::ByteCount::TB [static]
 

1000^4 Byte

Definition at line 58 of file ByteCount.h.

Referenced by bestUnit1000().

SizeType zypp::ByteCount::_count [private]
 

Definition at line 149 of file ByteCount.h.

Referenced by asString(), bestUnit(), bestUnit1000(), fillBlock(), operator *=(), operator SizeType(), operator++(), operator+=(), operator--(), operator-=(), and operator/=().


The documentation for this class was generated from the following files:
Generated on Thu Jul 6 00:07:30 2006 for zypp by  doxygen 1.4.6