Rosetta Utilities  2014.35
Namespaces | Macros | Functions
file_sys_util.cc File Reference

Platform independent operations on files (except I/O) More...

#include <utility/file/file_sys_util.hh>
#include <utility/file/PathName.hh>
#include <utility/basic_sys_util.hh>
#include <utility/exit.hh>
#include <utility/io/izstream.hh>
#include <utility/io/ozstream.hh>
#include <utility/io/mpistream.hh>
#include <utility/inline_file_provider.hh>
#include <iostream>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>

Namespaces

 utility
 unresizable vector whose size is known at compile time, which may be allocated on the stack, and which indexes from 1.
 
 utility::file
 

Macros

#define S_ISDIR(mode)   (((mode) & S_IFMT) == S_IFDIR)
 

Functions

void utility::file::rand_sleep ()
 
bool utility::file::file_exists (std::string const &path)
 Does File Exist? More...
 
bool utility::file::is_directory (std::string const &path)
 Is the given path a directory? More...
 
int utility::file::file_delete (std::string const &path)
 Delete File. More...
 
std::string utility::file::file_extension (std::string const &filename)
 Extension of a File Name. More...
 
std::string utility::file::file_basename (std::string const &filename)
 Basename of a File Name. More...
 
long utility::file::file_size (std::string const &filename)
 Platform independent way of getting file size. More...
 
bool utility::file::create_blank_file (std::string const &blank_file)
 Create a blank file if it doesn't already exist. More...
 
bool utility::file::create_directory (std::string const &dir_path)
 Create a directory if it doesn't already exist. More...
 
bool utility::file::create_directory_recursive (std::string const &dir_path)
 Create a directory and its parent directories if they doesn't already exist. More...
 
bool utility::file::trytry_ifstream_open (std::ifstream &ifstream_, std::string const &name, std::ios_base::openmode open_mode)
 Try to open file a few times just in case it is locked (from BOINC LIB) More...
 
bool utility::file::trytry_ofstream_open (std::ofstream &ofstream_, std::string const &name, std::ios_base::openmode open_mode)
 Try to open file a few times just in case it is locked (from BOINC LIB) More...
 
int utility::file::list_dir (std::string dir, utility::vector1< std::string > &files)
 
FileName utility::file::combine_names (utility::vector1< std::string > file_name_strings)
 

Detailed Description

Platform independent operations on files (except I/O)

Author
David Kim (dekim.nosp@m.@u.w.nosp@m.ashin.nosp@m.gton.nosp@m..edu)
Ion Yannopoulos (ion@r.nosp@m.oset.nosp@m.tacom.nosp@m.mons.nosp@m..org)
Todo:

Break out platform-specific code.

trytry_* functions create mutual dependency between utility/file and utility/io. Resolve this.

Macro Definition Documentation

#define S_ISDIR (   mode)    (((mode) & S_IFMT) == S_IFDIR)