libcryfs/fs_interface/Dir.h

27 lines
541 B
C
Raw Normal View History

2014-11-15 23:47:38 +01:00
#pragma once
2014-11-16 00:05:28 +01:00
#ifndef FSPP_DIR_H_
#define FSPP_DIR_H_
2014-11-15 23:47:38 +01:00
2015-02-17 00:48:49 +01:00
#include "Node.h"
2014-11-15 23:47:38 +01:00
#include <memory>
#include <string>
2014-11-16 00:05:28 +01:00
namespace fspp {
2014-11-15 23:47:38 +01:00
class Device;
class File;
class Dir: public virtual Node {
public:
virtual ~Dir() {}
virtual std::unique_ptr<File> createFile(const std::string &name, mode_t mode) = 0;
virtual std::unique_ptr<Dir> createDir(const std::string &name, mode_t mode) = 0;
virtual void rmdir() = 0;
virtual std::unique_ptr<std::vector<std::string>> children() const = 0;
};
2014-11-16 00:05:28 +01:00
} /* namespace fspp */
2014-11-15 23:47:38 +01:00
2014-11-16 00:05:28 +01:00
#endif /* FSPP_DIR_H_ */