mirror of
https://github.com/uroni/urbackup_backend.git
synced 2025-10-26 11:36:50 +00:00
33 lines
1.2 KiB
C++
33 lines
1.2 KiB
C++
#pragma once
|
|
|
|
#include "IFSImageFactory.h"
|
|
|
|
class FSImageFactory : public IFSImageFactory
|
|
{
|
|
public:
|
|
virtual IFilesystem *createFilesystem(const std::string &pDev, EReadaheadMode read_ahead,
|
|
bool background_priority, std::string orig_letter, IFsNextBlockCallback* next_block_callback);
|
|
|
|
virtual IVHDFile *createVHDFile(const std::string &fn, bool pRead_only, uint64 pDstsize,
|
|
unsigned int pBlocksize=2*1024*1024, bool fast_mode=false, IFSImageFactory::ImageFormat format=IFSImageFactory::ImageFormat_VHD);
|
|
|
|
virtual IVHDFile *createVHDFile(const std::string &fn, const std::string &parent_fn,
|
|
bool pRead_only, bool fast_mode=false, IFSImageFactory::ImageFormat format=IFSImageFactory::ImageFormat_VHD, uint64 pDstsize=0);
|
|
|
|
virtual void destroyVHDFile(IVHDFile *vhd);
|
|
|
|
virtual IReadOnlyBitmap* createClientBitmap(const std::string& fn);
|
|
|
|
virtual IReadOnlyBitmap* createClientBitmap(IFile* bitmap_file);
|
|
|
|
virtual bool initializeImageMounting();
|
|
|
|
virtual std::vector<SPartition> readPartitions(IVHDFile *vhd, int64 offset, bool& gpt_style);
|
|
|
|
virtual std::vector<SPartition> readPartitions(const std::string& mbr,
|
|
const std::string& gpt_header, const std::string& gpt_table, bool& gpt_style);
|
|
|
|
private:
|
|
bool isNTFS(char *buffer);
|
|
};
|