#include "my_device.h" namespace Devices { std::vector Get_device::get_all_device() { std::vector vec_mount_devices; std::vector vec_str; std::ifstream file("/proc/mounts"); if (file.is_open()) { std::string line; while (std::getline(file, line)) { vec_str = Utils::split(line, ' '); struct Mount mount; mount.device = vec_str[0]; mount.destination = vec_str[1]; mount.fstype = vec_str[2]; mount.options = vec_str[3]; mount.dump = vec_str[4]; mount.pass = vec_str[5]; vec_mount_devices.push_back(mount); } } file.close(); return vec_mount_devices; } std::vector Get_device::get_part_devices(string find_device_name) { std::vector vec_mount_devices; for (const auto &device: this->get_all_device()) { if (device.device.find(find_device_name) != std::string::npos) { vec_mount_devices.push_back(device); } } return vec_mount_devices; } map_str_device Get_device::get_map_part_devices(string find_device_name) { map_str_device map_device; for (const auto &device: this->get_part_devices(find_device_name)) { map_device[device.device] = device; } return map_device; } }