#pragma once #include namespace estoraged { /** @class Erase * @brief Erase object provides a base class for the specific erase types */ class Erase { public: /** @brief creates an erase object * @param inDevPath the linux path for the block device */ Erase(std::string_view inDevPath) : devPath(inDevPath) {} virtual ~Erase() = default; /** @brief finds the size of the linux block device in bytes * @return size of a block device using the devPath */ uint64_t findSizeOfBlockDevice(); protected: /* The linux path for the block device */ std::string devPath; }; } // namespace estoraged