zipios::FilePath Class Reference

FilePath represents a path to a file or directory name. More...

`#include <filepath.h>`

## Public Member Functions

| FilePath (const string &path="", bool check_exists=false)
| Constructor.
FilePath & | operator= (const string &rhs)
| operator string () const
FilePath | operator+ (const FilePath &name) const
| Concatenates FilePath objects.
FilePath | filename () const
| Returns filename of the FilePath object by pruning the path off.
bool | exists () const
bool | isRegular () const
bool | isDirectory () const
bool | isCharSpecial () const
bool | isBlockSpecial () const
bool | isSocket () const
bool | isFifo () const

## Protected Member Functions

void | pruneTrailingSeparator ()
| Prunes the trailing separator of a specified path.
void | check () const
| This function sets _checked to true, stats the path, to see if it exists and to determine what type of file it is.

## Protected Attributes

bool | _checked
bool | _exists
bool | _is_reg
bool | _is_dir
bool | _is_char
bool | _is_block
bool | _is_socket
bool | _is_fifo
string | _path

## Static Protected Attributes

static const char | _separator = '/'

## Detailed Description

FilePath represents a path to a file or directory name.

FilePath has member functions to check if the file path is a valid file system entity, and to check what kind of file system entity it is, e.g. is it a file, a directory, a pipe etc.

Definition at line 18 of file filepath.h.

## Constructor & Destructor Documentation

## FilePath()

zipios::FilePath::FilePath | ( | const string & | path = "",
|  | bool | check_exists = false )

Constructor.

Parameters

  path | A string representation of the path.
  check_exists | If true is specified the constructor will check the existence and type of the path immidiately, instead of deferring that task until it is needed.

Definition at line 18 of file filepath.cpp.

## Member Function Documentation

## check()

void zipios::FilePath::check | ( |  | ) | const

protected

This function sets _checked to true, stats the path, to see if it exists and to determine what type of file it is.

All the query functions check if _checked is true, and if it isn't they call check(). This means stat'ing is deferred until it becomes necessary.

Definition at line 27 of file filepath.cpp.

## exists()

bool zipios::FilePath::exists | ( |  | ) | const

inline

Returns
  true If the path is a valid file system entity.

Definition at line 129 of file filepath.h.

## filename()

FilePath zipios::FilePath::filename | ( |  | ) | const

inline

Returns filename of the FilePath object by pruning the path off.

Definition at line 119 of file filepath.h.

## isBlockSpecial()

bool zipios::FilePath::isBlockSpecial | ( |  | ) | const

inline

Returns
  true if the path is block special (a block device file).

Definition at line 157 of file filepath.h.

## isCharSpecial()

bool zipios::FilePath::isCharSpecial | ( |  | ) | const

inline

Returns
  true if the path is character special (a character device file).

Definition at line 150 of file filepath.h.

## isDirectory()

bool zipios::FilePath::isDirectory | ( |  | ) | const

inline

Returns
  true if the path is a directory.

Definition at line 143 of file filepath.h.

## isFifo()

bool zipios::FilePath::isFifo | ( |  | ) | const

inline

Returns
  true if the path is a Fifo (a pipe).

Definition at line 171 of file filepath.h.

## isRegular()

bool zipios::FilePath::isRegular | ( |  | ) | const

inline

Returns
  true if the path is a regular file.

Definition at line 136 of file filepath.h.

## isSocket()

bool zipios::FilePath::isSocket | ( |  | ) | const

inline

Returns
  true if the path is a socket.

Definition at line 164 of file filepath.h.

## operator string()

zipios::FilePath::operator string | ( |  | ) | const

inline

Definition at line 106 of file filepath.h.

## operator+()

FilePath zipios::FilePath::operator+ | ( | const FilePath & | name | ) | const

inline

Concatenates FilePath objects.

A file separator is inserted if appropriate.

Definition at line 111 of file filepath.h.

## operator=()

FilePath & zipios::FilePath::operator= | ( | const string & | rhs | ) |

inline

Definition at line 94 of file filepath.h.

## pruneTrailingSeparator()

void zipios::FilePath::pruneTrailingSeparator | ( |  | ) |

inline protected

Prunes the trailing separator of a specified path.

Definition at line 100 of file filepath.h.

## Member Data Documentation

## _checked

bool zipios::FilePath::_checked

mutable protected

Definition at line 78 of file filepath.h.

## _exists

bool zipios::FilePath::_exists

mutable protected

Definition at line 79 of file filepath.h.

## _is_block

bool zipios::FilePath::_is_block

mutable protected

Definition at line 83 of file filepath.h.

## _is_char

bool zipios::FilePath::_is_char

mutable protected

Definition at line 82 of file filepath.h.

## _is_dir

bool zipios::FilePath::_is_dir

mutable protected

Definition at line 81 of file filepath.h.

## _is_fifo

bool zipios::FilePath::_is_fifo

mutable protected

Definition at line 85 of file filepath.h.

## _is_reg

bool zipios::FilePath::_is_reg

mutable protected

Definition at line 80 of file filepath.h.

## _is_socket

bool zipios::FilePath::_is_socket

mutable protected

Definition at line 84 of file filepath.h.

## _path

string zipios::FilePath::_path

protected

Definition at line 86 of file filepath.h.

## _separator

const char zipios::FilePath::_separator = '/'

static protected

Definition at line 75 of file filepath.h.

The documentation for this class was generated from the following files:

- filepath.h
- filepath.cpp