struct CCL::IVolumeFileSystem

Overview

File system supporting volumes. More…

#include <inativefilesystem.h>

struct IVolumeFileSystem: public CCL::IFileSystem
{
    // enums

    enum ModeFlags;

    // methods

    virtual tbool CCL_API getVolumeInfo (VolumeInfo& info, UrlRef rootUrl) = 0;
    virtual tbool CCL_API isLocalFile (UrlRef url) = 0;
    virtual tbool CCL_API isHiddenFile (UrlRef url) = 0;
    virtual tbool CCL_API isWriteProtected (UrlRef url) = 0;

    virtual tbool CCL_API moveFile (
        UrlRef dstPath,
        UrlRef srcPath,
        int mode = 0,
        IProgressNotify* progress = nullptr
    ) = 0;

    virtual tbool CCL_API copyFile (
        UrlRef dstPath,
        UrlRef srcPath,
        int mode = 0,
        IProgressNotify* progress = nullptr
    ) = 0;
};

Inherited Members

public:
    // enums

    enum ModeFlags;

    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;

    virtual IStream*CCL_API openStream (
        UrlRef url,
        int mode = IStream::kOpenMode,
        IUnknown* context = nullptr
    ) = 0;

    virtual tbool CCL_API fileExists (UrlRef url) = 0;
    virtual tbool CCL_API getFileInfo (FileInfo& info, UrlRef url) = 0;
    virtual tbool CCL_API removeFile (UrlRef url, int mode = 0) = 0;
    virtual tbool CCL_API renameFile (UrlRef url, StringRef newName, int mode = 0) = 0;

    virtual IFileIterator*CCL_API newIterator (
        UrlRef url,
        int mode = IFileIterator::kAll
    ) = 0;

    virtual tbool CCL_API createFolder (UrlRef url) = 0;
    virtual tbool CCL_API removeFolder (UrlRef url, int mode = 0) = 0;
    virtual tbool CCL_API isCaseSensitive () = 0;

Detailed Documentation

File system supporting volumes.

Methods

virtual tbool CCL_API getVolumeInfo (VolumeInfo& info, UrlRef rootUrl) = 0

Retrieve basic volume information.

virtual tbool CCL_API isLocalFile (UrlRef url) = 0

Check if file is local.

virtual tbool CCL_API isHiddenFile (UrlRef url) = 0

Check if file is hidden.

virtual tbool CCL_API isWriteProtected (UrlRef url) = 0

Check if file is write protected.

virtual tbool CCL_API moveFile (
    UrlRef dstPath,
    UrlRef srcPath,
    int mode = 0,
    IProgressNotify* progress = nullptr
) = 0

Move file or directory.

virtual tbool CCL_API copyFile (
    UrlRef dstPath,
    UrlRef srcPath,
    int mode = 0,
    IProgressNotify* progress = nullptr
) = 0

Copy file.