struct CCL::INativeFileSystem
Overview
Native file system interface. More…
#include <inativefilesystem.h> struct INativeFileSystem: public CCL::IVolumeFileSystem { // enums enum EndTransactionMode; enum ErrorCodes; // methods virtual tbool CCL_API getPathType ( int& type, UrlRef baseFolder, StringRef fileName ) = 0; virtual tbool CCL_API setFileTime (UrlRef url, const FileTime& modifiedTime) = 0; virtual ISearcher*CCL_API createSearcher (ISearchDescription& description) = 0; virtual tbool CCL_API getWorkingDirectory (IUrl& url) = 0; virtual tbool CCL_API setWorkingDirectory (UrlRef url) = 0; virtual tbool CCL_API getFirstError (int& errorCode) = 0; virtual String CCL_API getErrorString (int errorCode) = 0; virtual tbool CCL_API beginTransaction () = 0; virtual tbool CCL_API endTransaction ( int mode, IProgressNotify* progress = nullptr ) = 0; };
Inherited Members
public: // enums enum ModeFlags; 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; 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;
Detailed Documentation
Native file system interface.
Methods
virtual tbool CCL_API getPathType ( int& type, UrlRef baseFolder, StringRef fileName ) = 0
Determine type of given resource (IUrl::kFile or IUrl::kFolder).
virtual tbool CCL_API setFileTime (UrlRef url, const FileTime& modifiedTime) = 0
Set date and time the specified file or directory was last modified.
virtual ISearcher*CCL_API createSearcher (ISearchDescription& description) = 0
Create file searcher.
virtual tbool CCL_API getWorkingDirectory (IUrl& url) = 0
Get current working directory.
virtual tbool CCL_API setWorkingDirectory (UrlRef url) = 0
Set current working directory.
virtual tbool CCL_API getFirstError (int& errorCode) = 0
Return (and clear) first error occurred in the calling thread.
virtual String CCL_API getErrorString (int errorCode) = 0
Get localized error string for given error code.
virtual tbool CCL_API beginTransaction () = 0
Begin collecting file operations (for supported operations - fails if transaction for calling thread already exists)
virtual tbool CCL_API endTransaction ( int mode, IProgressNotify* progress = nullptr ) = 0
Perform collected file operations.