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)
 Stream output.


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().

Referenced by zypp::repo::cached::SrcPackageImpl::diskusage(), and zypp::repo::cached::PackageImpl::diskusage().

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(), zypp::repo::cached::SrcPackageImpl::diskusage(), zypp::repo::cached::PackageImpl::diskusage(), and zypp::target::rpm::RpmHeader::tag_du().

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 Tue Sep 25 19:23:14 2007 for libzypp by  doxygen 1.5.3