libcryfs/src/cryfs_lib/CryDevice.h

37 lines
761 B
C
Raw Normal View History

#pragma once
#ifndef CRYFS_LIB_CRYDEVICE_H_
#define CRYFS_LIB_CRYDEVICE_H_
#include <boost/filesystem.hpp>
2014-11-15 23:47:38 +01:00
#include <fusepp/fs_interface/Device.h>
#include "fusepp/utils/macros.h"
namespace cryfs {
namespace bf = boost::filesystem;
2014-11-15 23:47:38 +01:00
class CryDevice: public fusepp::Device {
public:
CryDevice(const bf::path &rootdir);
virtual ~CryDevice();
void statfs(const boost::filesystem::path &path, struct ::statvfs *fsstat) override;
const bf::path &RootDir() const;
private:
2014-11-15 23:47:38 +01:00
std::unique_ptr<fusepp::Node> Load(const bf::path &path) override;
const bf::path _root_path;
DISALLOW_COPY_AND_ASSIGN(CryDevice);
};
inline const bf::path &CryDevice::RootDir() const {
return _root_path;
}
} /* namespace cryfs */
#endif /* CRYFS_LIB_CRYDEVICE_H_ */