PosixFileSystem.cpp File Reference

#include "blocxx/BLOCXX_config.h"
#include "blocxx/FileSystem.hpp"
#include "blocxx/RandomNumber.hpp"
#include "blocxx/Mutex.hpp"
#include "blocxx/MutexLock.hpp"
#include "blocxx/File.hpp"
#include "blocxx/String.hpp"
#include "blocxx/Array.hpp"
#include "blocxx/Format.hpp"
#include "blocxx/ExceptionIds.hpp"
#include "blocxx/Assertion.hpp"
#include <unistd.h>
#include <dirent.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>
#include <cstdio>
#include <fstream>
#include <cerrno>

Go to the source code of this file.

Namespaces

namespace  BLOCXX_NAMESPACE
namespace  BLOCXX_NAMESPACE::FileSystem
namespace  BLOCXX_NAMESPACE::FileSystem::Path

Defines

#define _ACCESS   ::access
#define _CHDIR   chdir
#define _MKDIR(a, b)   mkdir((a),(b))
#define _RMDIR   rmdir
#define _UNLINK   unlink

Functions

int BLOCXX_NAMESPACE::FileSystem::changeFileOwner (const String &filename, const UserId &userId)
 Change the given file ownership.
File BLOCXX_NAMESPACE::FileSystem::openFile (const String &path)
 Open a file for read/write and return an File object that can be used for reading and writing.
File BLOCXX_NAMESPACE::FileSystem::createFile (const String &path)
 Create the file for the given name.
File BLOCXX_NAMESPACE::FileSystem::openOrCreateFile (const String &path)
 Opens or creates the file for the given name.
bool BLOCXX_NAMESPACE::FileSystem::exists (const String &path)
bool BLOCXX_NAMESPACE::FileSystem::isExecutable (const String &path)
 Tests if a file is executable.
bool BLOCXX_NAMESPACE::FileSystem::canRead (const String &path)
bool BLOCXX_NAMESPACE::FileSystem::canWrite (const String &path)
bool BLOCXX_NAMESPACE::FileSystem::isLink (const String &path)
 Tests if a file is a symbolic link.
bool BLOCXX_NAMESPACE::FileSystem::isDirectory (const String &path)
bool BLOCXX_NAMESPACE::FileSystem::changeDirectory (const String &path)
 Change to the given directory.
bool BLOCXX_NAMESPACE::FileSystem::makeDirectory (const String &path, int mode=0777)
 Create a directory.
bool BLOCXX_NAMESPACE::FileSystem::getFileSize (const String &path, off_t &size)
 Get the size of the file in bytes.
bool BLOCXX_NAMESPACE::FileSystem::removeDirectory (const String &path)
 Remove the given directory.
bool BLOCXX_NAMESPACE::FileSystem::removeFile (const String &path)
 Remove the given file.
bool BLOCXX_NAMESPACE::FileSystem::getDirectoryContents (const String &path, StringArray &dirEntries)
 Get the names of the files (and directories) in the given directory.
bool BLOCXX_NAMESPACE::FileSystem::renameFile (const String &oldFileName, const String &newFileName)
 Rename the given file to the new name.
size_t BLOCXX_NAMESPACE::FileSystem::read (const FileHandle &hdl, void *bfr, size_t numberOfBytes, off_t offset=-1L)
 Read data from file.
size_t BLOCXX_NAMESPACE::FileSystem::write (FileHandle &hdl, const void *bfr, size_t numberOfBytes, off_t offset=-1L)
 Write data to a file.
off_t BLOCXX_NAMESPACE::FileSystem::seek (const FileHandle &hdl, off_t offset, int whence)
 Seek to a given offset within the file.
off_t BLOCXX_NAMESPACE::FileSystem::tell (const FileHandle &hdl)
void BLOCXX_NAMESPACE::FileSystem::rewind (const FileHandle &hdl)
 Position the file pointer associated with the given file handle to the beginning of the file.
int BLOCXX_NAMESPACE::FileSystem::close (const FileHandle &hdl)
 Close file handle.
int BLOCXX_NAMESPACE::FileSystem::flush (FileHandle &hdl)
 Flush any buffered data to the file if buffering supported.
void BLOCXX_NAMESPACE::FileSystem::initRandomFile (const String &filename)
String BLOCXX_NAMESPACE::FileSystem::getFileContents (const String &filename)
 Read and return the contents of a text file.
StringArray BLOCXX_NAMESPACE::FileSystem::getFileLines (const String &filename)
 Read and return the lines of a test file.
String BLOCXX_NAMESPACE::FileSystem::readSymbolicLink (const String &path)
 Read the value of a symbolic link.
String BLOCXX_NAMESPACE::FileSystem::Path::realPath (const String &path)
 Convert path to the canonicalized absolute pathname by expanding all symbolic links and resolving references to /.
String BLOCXX_NAMESPACE::FileSystem::Path::dirname (const String &filename)
 Take a string that contains a pathname, and return a string that is a pathname of the parent directory of that file.
String BLOCXX_NAMESPACE::FileSystem::Path::getCurrentWorkingDirectory ()
 Get the process's current working directory.


Define Documentation

#define _ACCESS   ::access
 

Author:
Jon Carey

Dan Nuffer

Definition at line 76 of file PosixFileSystem.cpp.

Referenced by BLOCXX_NAMESPACE::FileSystem::canRead(), BLOCXX_NAMESPACE::FileSystem::canWrite(), BLOCXX_NAMESPACE::FileSystem::exists(), and BLOCXX_NAMESPACE::FileSystem::isExecutable().

#define _CHDIR   chdir
 

Definition at line 77 of file PosixFileSystem.cpp.

Referenced by BLOCXX_NAMESPACE::FileSystem::changeDirectory().

#define _MKDIR a,
 )     mkdir((a),(b))
 

Definition at line 78 of file PosixFileSystem.cpp.

Referenced by BLOCXX_NAMESPACE::FileSystem::makeDirectory().

#define _RMDIR   rmdir
 

Definition at line 79 of file PosixFileSystem.cpp.

Referenced by BLOCXX_NAMESPACE::FileSystem::removeDirectory().

#define _UNLINK   unlink
 

Definition at line 80 of file PosixFileSystem.cpp.

Referenced by BLOCXX_NAMESPACE::FileSystem::removeFile().


Generated on Fri Jun 16 15:39:09 2006 for blocxx by  doxygen 1.4.6