12 #ifndef ZYPP_DISKUSAGE_COUNTER_H 13 #define ZYPP_DISKUSAGE_COUNTER_H 67 const std::string & f = std::string(),
68 long long bs = 0LL,
long long total = 0LL,
long long used = 0LL,
long long pkg = 0LL,
81 const std::string & f = std::string(),
82 long long bs = 0LL,
long long total = 0LL,
long long used = 0LL,
long long pkg = 0LL,
84 :
MountPoint(
std::string(d?d:
""), f, bs, total, used, pkg, hints )
90 long long bs,
long long total = 0LL,
long long used = 0LL,
long long pkg = 0LL,
96 long long bs,
long long total = 0LL,
long long used = 0LL,
long long pkg = 0LL,
98 :
MountPoint(
std::string(d?d:
""), bs, total, used, pkg, hints )
198 template<
class Iterator>
202 for_( it, begin_r, end_r )
227 #endif // ZYPP_DISKUSAGE_COUNTER_H A Solvable object within the sat Pool.
ByteCount freeAfterCommit() const
Free size after installation as ByteCount for convenience.
MountPoint(const std::string &d, Hint hint)
ByteCount blockSize() const
Block size of the filesystem as ByteCount for convenience.
growonly partitions (e.g. snapshotting btrfs)
Store and operate with byte count.
static MountPointSet justRootPartition()
Only one entry for "/" to collect total sizes.
bool readonly
hint for readonly partitions
ByteCount usedSize() const
Used size of the filesystem as ByteCount for convenience.
ZYPP_DECLARE_OPERATORS_FOR_FLAGS(DiskUsageCounter::MountPoint::HintFlags)
void set(size_type idx_r)
Set bit idx_r.
String related utilities and Regular expression matching.
MountPoint(const std::string &d, long long bs, long long total=0LL, long long used=0LL, long long pkg=0LL, HintFlags hints=NoHint)
Ctor initialize directory and sizes.
#define for_(IT, BEG, END)
Convenient for-loops using iterator.
friend std::ostream & operator<<(std::ostream &str, const MountPoint &obj)
TraitsType::constPtrType constPtr
long long total_size
Total size of the filesystem in KiB (0 if you don't care)
bool operator<(const MountPoint &rhs) const
Sort by directory name.
std::ostream & operator<<(std::ostream &str, const DiskUsageCounter &obj)
MountPoint(const char *d, const std::string &f=std::string(), long long bs=0LL, long long total=0LL, long long used=0LL, long long pkg=0LL, HintFlags hints=NoHint)
DiskUsageCounter(const MountPointSet &mps_r)
Ctor taking the MountPointSet to compute.
std::string fstype
Filesystem type (provided by detectMountPoints)
long long used_size
Used size of the filesystem in KiB (0 if you don't care)
std::set< MountPoint > MountPointSet
MountPoint(const std::string &d="/", const std::string &f=std::string(), long long bs=0LL, long long total=0LL, long long used=0LL, long long pkg=0LL, HintFlags hints=NoHint)
Ctor initialize directory, fstype and sizes.
std::ostream & operator<<(std::ostream &str, const Exception &obj)
ByteCount totalSize() const
Total size of the filesystem as ByteCount for convenience.
Mount point description If block_size is set DiskUsageCoutner will assume half a block_size is wasted...
std::string dir
Directory name.
MountPoint(const char *d, Hint hint)
MountPointSet disk_usage(Iterator begin_r, Iterator end_r) const
Compute disk usage of a collection (convertible by asSolvable).
MountPointSet disk_usage(const ResObject::constPtr &obj_r) const
long long pkg_size
Used size after installation in KiB (computed by DiskUsageCoutner)
static constexpr PoolSizeType poolSize
An object indicating the bitmap should match the current pools capacity.
const MountPointSet & getMountPoints() const
Get the current MountPointSet.
MountPointSet disk_usage(const ResPool &pool) const
Compute disk usage if the current transaction woud be commited.
static const Unit B
1 Byte
MountPointSet disk_usage(const PoolItem &pi_r) const
Compute disk space occupied by packages across partitions/directories.
MountPoint(const char *d, HintFlags hints)
ZYPP_DECLARE_FLAGS(HintFlags, Hint)
static const Unit K
1024 Byte
ByteCount freeSize() const
Free size of the filesystem as ByteCount for convenience.
Combining sat::Solvable and ResStatus.
MountPoint(const char *d, long long bs, long long total=0LL, long long used=0LL, long long pkg=0LL, HintFlags hints=NoHint)
bool growonly
hint for growonly partitions (e.g. snapshotting btrfs)
Libsolv (bit)Map wrapper.
To Solvable transform functor.
ByteCount usedAfterCommit() const
Used size after installation as ByteCount for convenience.
Easy-to use interface to the ZYPP dependency resolver.
long long block_size
Block size of the filesystem in B (0 if you don't care)
void setMountPoints(const MountPointSet &mps_r)
Set a MountPointSet to compute.
ByteCount commitDiff() const
Size change due to installation as ByteCount for convenience.
static MountPointSet detectMountPoints(const std::string &rootdir="/")
Get mountpoints of system below rootdir If we happen to detect snapshotting btrfs partitions...
MountPoint(const std::string &d, HintFlags hints)
Ctor just name and hints, all sizes 0.