42 lines
649 B
C++
42 lines
649 B
C++
#pragma once
|
|
#include <SiaApi.h>
|
|
#include <mutex>
|
|
|
|
NS_BEGIN(Sia)
|
|
NS_BEGIN(Api)
|
|
NS_BEGIN(Dokan)
|
|
|
|
class SiaDokanDriveException :
|
|
std::exception
|
|
{
|
|
public:
|
|
SiaDokanDriveException(char* message) :
|
|
std::exception(message)
|
|
{
|
|
|
|
}
|
|
};
|
|
|
|
class AFX_EXT_CLASS CSiaDokanDrive
|
|
{
|
|
public:
|
|
// throws SiaDokenDriveException
|
|
CSiaDokanDrive(CSiaApi& siaApi);
|
|
|
|
public:
|
|
~CSiaDokanDrive();
|
|
|
|
private:
|
|
CSiaApi& _siaApi;
|
|
|
|
Property(bool, Mounted, public, private)
|
|
|
|
public:
|
|
void Mount(const wchar_t& driveLetter, const String& cacheLocation, const std::uint64_t& maxCacheSizeBytes);
|
|
|
|
void Unmount(const bool& clearCache = false);
|
|
|
|
void ClearCache();
|
|
};
|
|
|
|
NS_END(3) |