xref: /openbmc/estoraged/include/erase.hpp (revision 82897c35761f505c2b881f72c61f726f7d562692)
1 #pragma once
2 #include <string>
3 
4 namespace estoraged
5 {
6 /** @class Erase
7  *  @brief Erase object provides a base class for the specific erase types
8  */
9 class Erase
10 {
11   public:
12     /** @brief creates an erase object
13      *  @param inDevPath the linux path for the block device
14      */
15     Erase(std::string_view inDevPath) : devPath(inDevPath)
16     {}
17 
18     /** @brief finds the size of the linux block device in bytes
19      *  @return size of a block device using the devPath
20      */
21     uint64_t findSizeOfBlockDevice();
22 
23   protected:
24     /* The linux path for the block device */
25     std::string devPath;
26 };
27 
28 } // namespace estoraged
29