1 #ifndef MHO_DirectoryInterface_HH__
2 #define MHO_DirectoryInterface_HH__
72 static bool IsFile(
const std::string& name);
124 void GetFileList(std::vector< std::string >& aFileList)
const;
179 void GetRootFile(
const std::vector< std::string >& files, std::string& root_file)
const;
185 void GetCorelFiles(
const std::vector< std::string >& files, std::vector< std::string >& corel_files)
const;
190 void GetStationFiles(
const std::vector< std::string >& files, std::vector< std::string >& station_files)
const;
196 void GetFringeFiles(
const std::vector< std::string >& files, std::vector< std::string >& fringe_files,
197 int& max_sequence_num)
const;
203 void SplitCorelFileBasename(
const std::string& corel_basename, std::string& st_pair, std::string& root_code)
const;
213 static std::string
GetBasename(
const std::string& filename);
218 static std::string
GetPrefix(
const std::string& filename);
227 std::size_t count_number_of_matches(
const std::string& aString,
char elem)
const;
229 std::string fCurrentDirectoryFullPath;
230 std::string fCurrentParentFullPath;
232 bool fDirectoryIsSet;
233 bool fHaveReadDirectory;
235 std::vector< std::string > fCurrentFileList;
236 std::vector< std::string > fCurrentSubDirectoryList;
Class MHO_DirectoryInterface.
Definition: MHO_DirectoryInterface.hh:24
static bool DoesDirectoryExist(const std::string &dirname)
Checks if a directory exists by attempting to open it.
Definition: MHO_DirectoryInterface.cc:65
MHO_DirectoryInterface()
Definition: MHO_DirectoryInterface.cc:18
void SetCurrentDirectory(const std::string &dirname)
Setter for current directory.
Definition: MHO_DirectoryInterface.cc:140
void SplitCorelFileBasename(const std::string &corel_basename, std::string &st_pair, std::string &root_code) const
splits out baseline and root code from basename of a legacy mk4 corel file
Definition: MHO_DirectoryInterface.cc:516
static std::string GetDirectoryFullPathPreserveSymlinks(const std::string &dirname)
Getter for directory full path preserve symlinks.
Definition: MHO_DirectoryInterface.cc:42
bool CreateDirectory(const std::string &dirname) const
Creates a directory with given name and owner permissions.
Definition: MHO_DirectoryInterface.cc:127
static std::string GetDirectoryFullPath(const std::string &dirname)
Getter for directory full path.
Definition: MHO_DirectoryInterface.cc:25
void SplitStationFileBasename(const std::string &station_basename, std::string &st, std::string &root_code) const
splits out station char and root code from basename of a legacy mk4 station file
Definition: MHO_DirectoryInterface.cc:532
static std::string GetPrefix(const std::string &filename)
gets the directory prefix from a full path to a file
Definition: MHO_DirectoryInterface.cc:260
void GetFilesMatchingExtention(std::vector< std::string > &aFileList, const std::string &anExt) const
Getter for files matching extention.
Definition: MHO_DirectoryInterface.cc:291
std::string GetCurrentDirectory() const
Getter for current directory.
Definition: MHO_DirectoryInterface.cc:365
void GetCorelFiles(const std::vector< std::string > &files, std::vector< std::string > &corel_files) const
extracts legacy mk4 corel files from list of files
Definition: MHO_DirectoryInterface.cc:419
static std::string StripExtensionFromBasename(const std::string &file_basename)
removes the extention (anything after last '.') from a file (base) name
Definition: MHO_DirectoryInterface.cc:275
void GetFileList(std::vector< std::string > &aFileList) const
Getter for file list.
Definition: MHO_DirectoryInterface.cc:149
static bool IsDirectory(const std::string &name)
Checks if a given path is a directory.
Definition: MHO_DirectoryInterface.cc:80
static bool IsFile(const std::string &name)
Checks if a given path is a regular file.
Definition: MHO_DirectoryInterface.cc:93
bool ReadCurrentDirectory()
Checks if current directory exists and reads its files and directories.
Definition: MHO_DirectoryInterface.cc:167
void GetFringeFiles(const std::vector< std::string > &files, std::vector< std::string > &fringe_files, int &max_sequence_num) const
extracts legacy mk4 fringe files from list of files
Definition: MHO_DirectoryInterface.cc:472
void GetSubDirectoriesMatchingExtention(std::vector< std::string > &aDirList, const std::string &anExt) const
Getter for sub directories matching extention.
Definition: MHO_DirectoryInterface.cc:338
std::string GetCurrentParentDirectory() const
Getter for current parent directory.
Definition: MHO_DirectoryInterface.cc:370
static std::string GetFileModifcationTime(const std::string &name)
Getter for file modifcation time.
Definition: MHO_DirectoryInterface.cc:107
void GetStationFiles(const std::vector< std::string > &files, std::vector< std::string > &station_files) const
extracts legacy mk4 station files from list of files
Definition: MHO_DirectoryInterface.cc:444
void GetSubDirectoryList(std::vector< std::string > &aSubDirList) const
Getter for sub directory list.
Definition: MHO_DirectoryInterface.cc:158
virtual ~MHO_DirectoryInterface()
Definition: MHO_DirectoryInterface.cc:23
void GetRootFile(const std::vector< std::string > &files, std::string &root_file) const
extracts legacy mk4 root file from list of files
Definition: MHO_DirectoryInterface.cc:375
static std::string GetBasename(const std::string &filename)
gets the file name from a path to a file
Definition: MHO_DirectoryInterface.cc:245
void GetFilesMatchingPrefix(std::vector< std::string > &aFileList, const std::string &aPrefix) const
Getter for files matching prefix.
Definition: MHO_DirectoryInterface.cc:317
Class MHO_Tokenizer.
Definition: MHO_Tokenizer.hh:24
constexpr const char * file_basename(const char *str)
Returns the base name (file name without path) from a given string.
Definition: MHO_SelfName.hh:54
Definition: MHO_ChannelLabeler.hh:17