Showing content from http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/doxyhtml/classCFile.html below:
NCBI C++ ToolKit: CFile Class Reference
enum ECompareText { eIgnoreEol = eCompareText_IgnoreEol , eIgnoreWs = eCompareText_IgnoreWhiteSpace } Mode to compare streams in text form. More...
enum EIfEmptyPath { eIfEmptyPath_Empty , eIfEmptyPath_Current } What GetDir() should return if the dir entry does not contain path. More...
enum ERelativeToWhat { eRelativeToCwd , eRelativeToExe } How to interpret relative paths. More...
enum ECopyFlags {
fCF_Overwrite = (1 << 1) , fCF_Update = (1 << 2) | fCF_Overwrite , fCF_Backup = (1 << 3) | fCF_Overwrite , fCF_Safe = (1 << 4) | fCF_Overwrite ,
fCF_TopDirOnly = (1 << 6) , fCF_EqualTypes = (1 << 7) , fCF_FollowLinks = (1 << 8) , fCF_Verify = (1 << 9) ,
fCF_PreserveOwner = (1 << 10) , fCF_PreservePerm = (1 << 11) , fCF_PreserveTime = (1 << 12) , fCF_PreserveAll = fCF_PreserveOwner | fCF_PreservePerm | fCF_PreserveTime ,
fCF_Recursive = (1 << 14) , fCF_SkipUnsupported = (1 << 15) , fCF_Default = fCF_Recursive | fCF_FollowLinks
} Copy flags. More...
enum ERenameFlags {
fRF_Overwrite = (1 << 1) , fRF_Update = (1 << 2) | fCF_Overwrite , fRF_Backup = (1 << 3) | fCF_Overwrite , fRF_EqualTypes = (1 << 4) ,
fRF_FollowLinks = (1 << 5) , fRF_Default = 0
} Rename flags. More...
enum EBackupMode { eBackup_Copy = (1 << 1) , eBackup_Rename = (1 << 2) , eBackup_Default = eBackup_Copy } Backup modes. More...
enum EProcessingFlags {
fEntry = (1 << 0) , fDir_Self = fEntry , fDir_Files = (1 << 1) , fDir_Subdirs = (1 << 2) ,
fDir_Recursive = (1 << 3) , fDir_All = fDir_Self + fDir_Files + fDir_Subdirs , fIgnoreMissing = (1 << 4) , fProcessAll = (1 << 5) ,
eOnlyEmpty = fDir_Self , eEntryOnly = fDir_Self , eTopDirOnly = fDir_Self | fDir_Files , eNonRecursive = fDir_All ,
eRecursive = fDir_All | fDir_Recursive , eRecursiveStopOnErrors = eRecursive , eRecursiveIgnoreMissing = eRecursive | fIgnoreMissing , eRecursiveNotStopOnErrors = eRecursive | fIgnoreMissing | fProcessAll
} Entries processing flags. More...
enum EType {
eFile = 0 , eDir , ePipe , eLink ,
eSymLink = eLink , eSocket , eDoor , eBlockSpecial ,
eCharSpecial , eUnknown
} Directory entry type. More...
enum EIfAbsent { eIfAbsent_Throw , eIfAbsent_Newer , eIfAbsent_NotNewer } What IsNewer() should do if the dir entry does not exist or is not accessible. More...
enum EIfAbsent2 {
fHasThisNoPath_Newer = (1 << 0) , fHasThisNoPath_NotNewer = (1 << 1) , fNoThisHasPath_Newer = (1 << 2) , fNoThisHasPath_NotNewer = (1 << 3) ,
fNoThisNoPath_Newer = (1 << 4) , fNoThisNoPath_NotNewer = (1 << 5)
} What path version of IsNewer() should do if the dir entry or specified path does not exist or is not accessible. More...
enum EMode {
fExecute = 1 , fWrite = 2 , fRead = 4 , fDefault = 8 ,
fDefaultDirUser = fRead | fExecute | fWrite , fDefaultDirGroup = fRead | fExecute , fDefaultDirOther = fRead | fExecute , fDefaultUser = fRead | fWrite ,
fDefaultGroup = fRead , fDefaultOther = fRead
} Directory entry access permissions. More...
enum ESpecialModeBits { fSticky = 1 , fSetGID = 2 , fSetUID = 4 } enum EModeRelative { fModeAdd = 16 , fModeRemove = 32 , fModeNoChange = 64 } Relative permissions change modes. More...
enum EModeStringFormat { eModeFormat_Octal , eModeFormat_Symbolic , eModeFormat_List , eModeFormat_Default = eModeFormat_Octal } Permission mode string format. More...
enum ETmpFileCreationMode { eTmpFileCreate , eTmpFileGetName } Temporary file creation mode. More...
enum ETextBinary { eText , eBinary } What type of temporary file to create. More...
enum EAllowRead { eAllowRead , eWriteOnly } Which operations to allow on temporary file. More...
typedef unsigned int TCopyFlags Binary OR of "ECopyFlags". More...
typedef unsigned int TRenameFlags Binary OR of "ERenameFlags". More...
typedef unsigned int TProcessingFlags Binary OR of "EProcessingFlags". More...
typedef TProcessingFlags TRemoveFlags Flags based on TProcessingFlags. More...
typedef TProcessingFlags TSetModeFlags typedef TRemoveFlags EDirRemoveMode Directory remove mode. More...
typedef int TIfAbsent2 Binary OR of "EIfAbsent2". More...
typedef unsigned int TMode Bitwise OR of "EMode". More...
typedef unsigned int TSpecialModeBits Bitwise OR of ESpecialModeBits. More...
CFile (void) Default constructor. More...
CFile (const string &file) Constructor using specified path string. More...
CFile (const CDirEntry &file) Copy constructor. More...
virtual ~CFile (void) Destructor. More...
virtual EType GetObjectType (void) const Get a type of constructed object. More...
virtual bool Exists (void) const Check existence of file. More...
Int8 GetLength (void) const Get size of file. More...
virtual bool Copy (const string &new_path, TCopyFlags flags=fCF_Default, size_t buf_size=0) const Copy a file. More...
bool Compare (const string &file, size_t buf_size=0) const Compare files contents in binary form. More...
bool CompareTextContents (const string &file, ECompareText mode, size_t buf_size=0) const Compare files contents in text form. More...
CDirEntry (void) Default constructor. More...
CDirEntry (const string &path) Constructor using specified path string. More...
CDirEntry (const CDirEntry &other) Copy constructor. More...
virtual ~CDirEntry (void) Destructor. More...
const string & GetPath (void) const Get entry path. More...
void Reset (const string &path) Reset path string. More...
CDirEntry & operator= (const CDirEntry &other) Assignment operator. More...
string GetDir (EIfEmptyPath mode=eIfEmptyPath_Current) const Get the directory component for this directory entry. More...
string GetName (void) const Get the base entry name with extension (if any). More...
string GetBase (void) const Get the base entry name without extension. More...
string GetExt (void) const Get extension name. More...
bool CopyToDir (const string &dir, TCopyFlags flags=fCF_Default, size_t buf_size=0) const Copy the entry to a specified directory. More...
bool Rename (const string &new_path, TRenameFlags flags=fRF_Default) Rename entry. More...
bool MoveToDir (const string &dir, TCopyFlags flags=fRF_Default) Move the entry to a specified directory. More...
bool Backup (const string &suffix=kEmptyStr, EBackupMode mode=eBackup_Default, TCopyFlags copyflags=fCF_Default, size_t copybufsize=0) Backup an entry. More...
virtual bool Remove (TRemoveFlags flags=eRecursive) const Remove a directory entry. More...
virtual bool RemoveEntry (TRemoveFlags flags=eEntryOnly) const Remove a directory entry. More...
bool Stat (struct SStat *buffer, EFollowLinks follow_links=eIgnoreLinks) const Get status information on a dir entry. More...
EType GetType (EFollowLinks follow=eIgnoreLinks) const Get a type of a directory entry. More...
bool IsFile (EFollowLinks follow=eFollowLinks) const Check whether a directory entry is a file. More...
bool IsDir (EFollowLinks follow=eFollowLinks) const Check whether a directory entry is a directory. More...
bool IsLink (void) const Check whether a directory entry is a symbolic link (alias). More...
string LookupLink (void) const Get an entry name that a link points to. More...
void DereferenceLink (ENormalizePath normalize=eNormalizePath) Dereference a link. More...
void DereferencePath (void) Dereference a path. More...
bool GetTime (CTime *modification, CTime *last_access=0, CTime *creation=0) const Get time stamp(s) of a directory entry. More...
bool GetTimeT (time_t *modification, time_t *last_access=0, time_t *creation=0) const Get time stamp(s) of a directory entry (time_t version). More...
bool SetTime (const CTime *modification=0, const CTime *last_access=0, const CTime *creation=0) const Set time stamp(s) of a directory entry. More...
bool SetTimeT (const time_t *modification=0, const time_t *last_access=0, const time_t *creation=0) const Set time stamp(s) of a directory entry (time_t version). More...
bool IsNewer (time_t tm, EIfAbsent if_absent) const Check if the current entry is newer than a specified date/time. More...
bool IsNewer (const CTime &tm, EIfAbsent if_absent) const Check if the current entry is newer than a specified date/time. More...
bool IsNewer (const string &path, TIfAbsent2 if_absent) const Check if the current entry is newer than some other. More...
bool IsIdentical (const string &entry_name, EFollowLinks follow_links=eIgnoreLinks) const Check if the current entry and the given entry_name are identical. More...
bool GetOwner (string *owner, string *group=0, EFollowLinks follow=eFollowLinks, unsigned int *uid=0, unsigned int *gid=0) const Get an entry owner. More...
bool SetOwner (const string &owner, const string &group=kEmptyStr, EFollowLinks follow=eFollowLinks, unsigned int *uid=0, unsigned int *gid=0) const Set an entry owner and/or group. More...
bool GetMode (TMode *user_mode, TMode *group_mode=0, TMode *other_mode=0, TSpecialModeBits *special=0) const Get permission mode(s) of a directory entry. More...
virtual bool SetMode (TMode user_mode, TMode group_mode=fDefault, TMode other_mode=fDefault, TSpecialModeBits special=0, TSetModeFlags flags=eEntryOnly) const Set permission mode(s) of a directory entry. More...
virtual bool SetModeEntry (TMode user_mode, TMode group_mode=fDefault, TMode other_mode=fDefault, TSpecialModeBits special=0, TSetModeFlags flags=eEntryOnly) const Set permission mode(s) of a directory entry. More...
virtual void SetDefaultMode (EType entry_type, TMode user_mode, TMode group_mode=fDefault, TMode other_mode=fDefault, TSpecialModeBits special=0) Set default mode(s) for this entry only. More...
bool CheckAccess (TMode access_mode) const Check access rights. More...
static void SplitPath (const string &path, string *dir=0, string *base=0, string *ext=0) Split a path string into its basic components. More...
static void SplitPathEx (const string &path, string *disk=0, string *dir=0, string *base=0, string *ext=0) Split a path string into its basic components. More...
static string MakePath (const string &dir=kEmptyStr, const string &base=kEmptyStr, const string &ext=kEmptyStr) Assemble a path from basic components. More...
static char GetPathSeparator (void) Get path separator symbol specific for the current platform. More...
static bool IsPathSeparator (const char c) Check whether a character "c" is a path separator symbol specific for the current platform. More...
static string AddTrailingPathSeparator (const string &path) Add trailing path separator, if needed. More...
static string DeleteTrailingPathSeparator (const string &path) Delete trailing path separator, if any. More...
static string ConvertToOSPath (const string &path) Convert "path" on any OS to the current OS-dependent path. More...
static bool IsAbsolutePath (const string &path) Check if a "path" is absolute for the current OS. More...
static bool IsAbsolutePathEx (const string &path) Check if the "path" is absolute for any OS. More...
static string GetNearestExistingParentDir (const string &path) Given a path, gets the closest parent directory which actually exists. More...
static string CreateRelativePath (const string &path_from, const string &path_to) Create a relative path between two points in the file system specified by their absolute paths. More...
static string CreateAbsolutePath (const string &path, ERelativeToWhat rtw=eRelativeToCwd) Get an absolute path from some, possibly relative, path. More...
static string CreateAbsolutePath (const string &path, const string &rtw) Get an absolute path from some, possibly relative, path. More...
static string ConcatPath (const string &first, const string &second) Concatenate two parts of the path for the current OS. More...
static string ConcatPathEx (const string &first, const string &second) Concatenate two parts of the path for any OS. More...
static string NormalizePath (const string &path, EFollowLinks follow_links=eIgnoreLinks) Normalize a path. More...
static bool MatchesMask (const string &name, const string &mask, NStr::ECase use_case=NStr::eCase) Match a "name" against a simple filename "mask". More...
static bool MatchesMask (const string &name, const vector< string > &masks, NStr::ECase use_case=NStr::eCase) Match a "name" against a set of "masks" Note that any name match to empty vector of masks. More...
static bool MatchesMask (const string &name, const CMask &mask, NStr::ECase use_case=NStr::eCase) Match a "name" against a set of "masks" Note that any name match to empty set of masks. More...
static const char * GetBackupSuffix (void) Get backup suffix. More...
static void SetBackupSuffix (const char *suffix) Set backup suffix. More...
static CDirEntry * CreateObject (EType type, const string &path=kEmptyStr) Construct a directory entry object of a specified type. More...
static EType GetType (const TNcbiSys_stat &st) Get a type of a directory entry by status information. More...
static void SetDefaultModeGlobal (EType entry_type, TMode user_mode, TMode group_mode=fDefault, TMode other_mode=fDefault, TSpecialModeBits special=0) Set default permission modes globally for all CDirEntry objects. More...
static mode_t MakeModeT (TMode user_mode, TMode group_mode, TMode other_mode, TSpecialModeBits special) Construct mode_t value from permission modes. More...
static void ModeFromModeT (mode_t mode, TMode *user_mode, TMode *group_mode=0, TMode *other_mode=0, TSpecialModeBits *special=0) Convert mode_t to permission mode(s). More...
static string ModeToString (TMode user_mode, TMode group_mode, TMode other_mode, TSpecialModeBits special, EModeStringFormat format=eModeFormat_Default) Convert permission modes to string representation using one of predefined formats. More...
static bool StringToMode (const CTempString &mode, TMode *user_mode, TMode *group_mode=0, TMode *other_mode=0, TSpecialModeBits *special=0) Convert string (in one of predefined formats, detects automatically) to permission mode(s). More...
static void GetUmask (TMode *user_mode, TMode *group_mode=0, TMode *other_mode=0, TSpecialModeBits *special=0) Get file/directory mode creation mask. More...
static void SetUmask (TMode user_mode, TMode group_mode=fDefault, TMode other_mode=fDefault, TSpecialModeBits special=0) Set file/directory mode creation mask. More...
static string GetTmpName (ETmpFileCreationMode mode=eTmpFileGetName) Get temporary file name. More...
static string GetTmpNameEx (const string &dir=kEmptyStr, const string &prefix=kEmptyStr, ETmpFileCreationMode mode=eTmpFileGetName) Get temporary file name. More...
static fstream * CreateTmpFile (const string &filename=kEmptyStr, ETextBinary text_binary=eBinary, EAllowRead allow_read=eAllowRead) Create temporary file and return pointer to corresponding stream. More...
static fstream * CreateTmpFileEx (const string &dir=".", const string &prefix=kEmptyStr, ETextBinary text_binary=eBinary, EAllowRead allow_read=eAllowRead) Create temporary file and return pointer to corresponding stream. More...
void GetDefaultMode (TMode *user_mode, TMode *group_mode, TMode *other_mode, TSpecialModeBits *special) const Get the default mode. More...
mode_t GetDefaultModeT (void) const static void GetDefaultModeGlobal (EType entry_type, TMode *user_mode, TMode *group_mode, TMode *other_mode, TSpecialModeBits *special) Get the default global mode. More...
CFile –.
Define class to work with regular files. NOTE: it don't work with any special or block devices like /dev/null
Models a file in a file system. Basic functionality is derived from CDirEntry and extended for files.
Definition at line 1604 of file ncbifile.hpp.
RetroSearch is an open source project built by @garambo
| Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4