1*9efef5d9SPatrick Venture #pragma once 2*9efef5d9SPatrick Venture 3*9efef5d9SPatrick Venture #include <string> 4*9efef5d9SPatrick Venture 5*9efef5d9SPatrick Venture namespace ipmi_flash 6*9efef5d9SPatrick Venture { 7*9efef5d9SPatrick Venture 8*9efef5d9SPatrick Venture class FileSystemInterface 9*9efef5d9SPatrick Venture { 10*9efef5d9SPatrick Venture public: 11*9efef5d9SPatrick Venture virtual ~FileSystemInterface() = default; 12*9efef5d9SPatrick Venture 13*9efef5d9SPatrick Venture virtual void remove(const std::string& path) const = 0; 14*9efef5d9SPatrick Venture }; 15*9efef5d9SPatrick Venture 16*9efef5d9SPatrick Venture class FileSystem : public FileSystemInterface 17*9efef5d9SPatrick Venture { 18*9efef5d9SPatrick Venture public: 19*9efef5d9SPatrick Venture FileSystem() = default; 20*9efef5d9SPatrick Venture 21*9efef5d9SPatrick Venture void remove(const std::string& path) const override; 22*9efef5d9SPatrick Venture }; 23*9efef5d9SPatrick Venture 24*9efef5d9SPatrick Venture } // namespace ipmi_flash 25