AFIO  v2.00 late alpha
afio_v2_xxx::statfs_t Struct Reference

Metadata about a filing system. Unsupported entries are all bits set. More...

#include "statfs.hpp"


struct  f_flags_t
struct  want_base
 Used to indicate what metadata should be filled in. More...

Public Types

using want = quickcpplib::_xxx ::bitfield::bitfield< want_base >

Public Member Functions

 statfs_t ()
 Constructs a default initialised instance (all bits set)
result< size_t > fill (const handle &h, want wanted=want::all) noexcept
 Fills in the structure with metadata, returning number of items filled in.

Public Attributes

struct afio_v2_xxx::statfs_t::f_flags_t f_flags
uint64_t f_bsize {_allbits1_64}
uint64_t f_iosize {_allbits1_64}
uint64_t f_blocks {_allbits1_64}
uint64_t f_bfree {_allbits1_64}
uint64_t f_bavail {_allbits1_64}
uint64_t f_files {_allbits1_64}
uint64_t f_ffree {_allbits1_64}
uint32_t f_namemax {_allbits1_32}
int16_t f_owner {-1}
uint64_t f_fsid [2] {_allbits1_64, _allbits1_64}
std::string f_fstypename
std::string f_mntfromname
filesystem::path f_mntonname

Static Public Attributes

static constexpr uint32_t _allbits1_32 = ~0U
static constexpr uint64_t _allbits1_64 = ~0ULL

Detailed Description

Metadata about a filing system. Unsupported entries are all bits set.

Member Data Documentation

◆ f_bavail

uint64_t afio_v2_xxx::statfs_t::f_bavail {_allbits1_64}

free blocks avail to non-superuser (Windows, POSIX)

◆ f_bfree

uint64_t afio_v2_xxx::statfs_t::f_bfree {_allbits1_64}

free blocks in filesystem (Windows, POSIX)

◆ f_blocks

uint64_t afio_v2_xxx::statfs_t::f_blocks {_allbits1_64}

total data blocks in filesystem (Windows, POSIX)

◆ f_bsize

uint64_t afio_v2_xxx::statfs_t::f_bsize {_allbits1_64}

fundamental filesystem block size (Windows, POSIX)

◆ f_ffree

uint64_t afio_v2_xxx::statfs_t::f_ffree {_allbits1_64}

free nodes avail to non-superuser (POSIX)

◆ f_files

uint64_t afio_v2_xxx::statfs_t::f_files {_allbits1_64}

total file nodes in filesystem (POSIX)

◆ f_flags

struct afio_v2_xxx::statfs_t::f_flags_t afio_v2_xxx::statfs_t::f_flags

copy of mount exported flags (Windows, POSIX)

◆ f_fsid

uint64_t afio_v2_xxx::statfs_t::f_fsid[2] {_allbits1_64, _allbits1_64}

filesystem id (Windows, POSIX)

◆ f_fstypename

std::string afio_v2_xxx::statfs_t::f_fstypename

filesystem type name (Windows, POSIX)

◆ f_iosize

uint64_t afio_v2_xxx::statfs_t::f_iosize {_allbits1_64}

optimal transfer block size (Windows, POSIX)

◆ f_mntfromname

std::string afio_v2_xxx::statfs_t::f_mntfromname

mounted filesystem (Windows, POSIX)

◆ f_mntonname

filesystem::path afio_v2_xxx::statfs_t::f_mntonname

directory on which mounted (Windows, POSIX)

◆ f_namemax

uint32_t afio_v2_xxx::statfs_t::f_namemax {_allbits1_32}

maximum filename length (Windows, POSIX)

◆ f_owner

int16_t afio_v2_xxx::statfs_t::f_owner {-1}

user that mounted the filesystem (BSD, OS X)

The documentation for this struct was generated from the following file: