From b7dfe65b3f39bcfd2736b31bbdd02e374690e4c1 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Fri, 15 May 2020 23:33:47 -0500 Subject: DiskMan: Add manual pages --- diskman/man/Horizon::DiskMan::Disk::total_size.3 | 78 ++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 diskman/man/Horizon::DiskMan::Disk::total_size.3 (limited to 'diskman/man/Horizon::DiskMan::Disk::total_size.3') diff --git a/diskman/man/Horizon::DiskMan::Disk::total_size.3 b/diskman/man/Horizon::DiskMan::Disk::total_size.3 new file mode 100644 index 0000000..cc2573b --- /dev/null +++ b/diskman/man/Horizon::DiskMan::Disk::total_size.3 @@ -0,0 +1,78 @@ +.Dd May 15, 2020 +.Dt Horizon::DiskMan::Disk::total_size 3 +.Os "Adélie Linux" +.Sh NAME +.Nm Horizon::DiskMan::Disk::total_size , +.Nm Horizon::DiskMan::Disk::free_space , +.Nm Horizon::DiskMan::Disk::contiguous_block , +.Nm Horizon::DiskMan::Disk::sector_size +.Nd retrieve sizing information for a disk +.Sh SYNOPSIS +.In diskman/disk.hh +.Cm using Horizon::DiskMan::Disk; +.Ft uint32_t +.Fo Disk::total_size +.Fc +.Ft uint32_t +.Fo Disk::free_space +.Fc +.Ft uint32_t +.Fo Disk::contiguous_block +.Fc +.Ft uint32_t +.Fo Disk::sector_size +.Fc +.Sh DESCRIPTION +The +.Fn Disk::total_size +function provides the size of the specified disk. +.Pp +The +.Fn Disk::free_space +and +.Fn Disk::contiguous_block +functions provide the amount of total free space, and the largest contiguous +block of free space, respectively. +.Pp +The +.Fn Disk::sector_size +function provides the disk's sector size. +.Sh RETURN VALUES +The +.Fn Disk::total_size , +.Fn Disk::free_space , +and +.Fn Disk::contiguous_block +functions return the requested information in mebibytes (MiB). +.Pp +The +.Fn Disk::sector_size +function returns the sector size in bytes. +.Sh EXAMPLES +The following is a simple utility that prints the name, total size, and free +space for each disk attached to the system: +.Bd -literal -offset indent +#include +#include + +int main(void) { + Horizon::DiskMan::DiskMan dm; + auto disks = dm.find_disks(false, false, false); + for(auto &disk : disks) { + std::cout << "Disk: " << disk.name() << ":" << std::endl; + std::cout << std::to_string(disk.total_size()) << " MiB total"; + std::cout << " (" << std::to_string(disk.free_space()) << " MiB free; "; + std::cout << std::to_string(disk.contiguous_block()) << " MiB largest contiguous block)" << std::endl; + } + return 0; +} +.Ed +.Sh SEE ALSO +.Xr Horizon::DiskMan::Disk 3 , +.Xr Horizon::DiskMan::DiskMan 3 , +.Xr Horizon::DiskMan::Partition 3 . +.Sh HISTORY +The DiskMan library first appeared in Horizon 0.9. +.Sh AUTHORS +.An A. Wilcox +.Aq awilfox@adelielinux.org -- cgit v1.2.3-60-g2f50