#include <directory.h>
Public Member Functions |
|
|
Constructors and Destructors
|
|
| Directory () | |
| Default constructor. |
|
| Directory (const String &directory_path, bool set_current=false) | |
| Detailed constructor. |
|
| Directory (const Directory &directory) | |
| Copy constructor. |
|
| ~Directory () | |
| Destructor. |
|
| void | clear () |
| Explicit default initialization.
|
|
| void | destroy () |
| Explicit destructor. |
|
|
Assignment
|
|
| bool | set (const String &directory_path, bool set_current=false) |
Assign the Directory with the path
directory_path. |
|
| void | set (const Directory &directory) |
| Assignment with cloning facility.
|
|
| Directory & | operator= (const Directory &directory) |
| Assignment operator. |
|
| void | get (Directory &directory) const |
| Copying with cloning facility.
|
|
|
Accessors
|
|
| const String & | getPath () const |
| Get the path of this instance.
|
|
| bool | rename (String old_path, String new_path) |
| Rename a given directory. |
|
| bool | renameTo (String new_path) |
| Rename the directory associated with
this object. |
|
| bool | setCurrent (String directory_path) |
| Set a directory as the current.
|
|
| bool | setCurrent () |
| Set this directory as the current
working directory. |
|
| bool | create (String path, const mode_t &mode=0777) |
| Create a new directory. |
|
| bool | remove (String old_path) |
| Remove a directory. |
|
| bool | remove () |
| Remove this directory. |
|
| bool | getFirstEntry (String &entry) |
| Get the name of the first entry in
the directory. |
|
| bool | getNextEntry (String &entry) |
| Get the name of the next entry in
the directory. |
|
| Size | countItems () |
| Count all items in the directory.
|
|
| Size | countFiles () |
| Count the files in the directory.
|
|
| Size | countDirectories () |
| Count the subdirectories in the
directory. |
|
| bool | find (const String &filename, String &filepath) |
| Find a file in the directory.
|
|
Static Public Attributes |
|
|
Constants
|
|
| static const Size | MAX_PATH_LENGTH |
| The maximum length of a path.
|
|
Predicates |
|
| bool | has (const String &item) |
| Test if the directory has an item.
|
|
| bool | isValid () const |
| Test if the directory is valid.
|
|
| bool | isCurrent () const |
| Test if the directory is the current
working directory. |
|
| bool | isEmpty () |
| Test if the directory is empty.
|
|
| bool | operator== (const Directory &directory) const |
| Equality operator. |
|
| bool | operator!= (const Directory &directory) const |
| Inequality operator. |
|
| static String | getUserHomeDir () |
| Get the home directory of the
current user. |
|
| static bool | changeToUserHomeDir () |
| Goto the home directory of the
current user. |
|
| BALL::Directory::Directory | ( | ) |
| BALL::Directory::Directory | ( | const String & | directory_path, | |
| bool | set_current =
false |
|||
| ) |
Detailed constructor.
Construct new Directory object from {directory_path}. The directory path does not have a path seperator {"/"} at its end. If the given directory does not exists, the directory path is set to an empty string.
| directory_path | the name of the directory to be opend | |
| set_current | true, to set the directory as the current, default = false |
| BALL::Directory::Directory | ( | const Directory & | directory | ) |
| void BALL::Directory::clear | ( | ) |
Explicit default initialization.
Set the state to the default values. The path is set to an empty string.
| Size BALL::Directory::countDirectories | ( | ) |
Count the subdirectories in the directory.
| Size BALL::Directory::countFiles | ( | ) |
Count the files in the directory.
| Size BALL::Directory::countItems | ( | ) |
Count all items in the directory.
| bool BALL::Directory::create | ( | String | path, | |
| const mode_t & | mode =
0777 |
|||
| ) |
Create a new directory.
The directory is created using an absolute path, if it starts with a path seperator, else it is created in this directory.
| path | the path of the new directory | |
| mode | the access mode of the directory |
Find a file in the directory.
The search is recursive.
| filename | the name of the file to be searched | |
| filepath | the path of the file, if it was found |
| void BALL::Directory::get | ( | Directory & | directory | ) | const |
Copying with cloning facility.
Copy this instance to directory .
| directory | the directory to be assigned to |
| bool BALL::Directory::getFirstEntry | ( | String & | entry | ) |
Get the name of the first entry in the directory.
| entry | reference to the name of the first entry |
| bool BALL::Directory::getNextEntry | ( | String & | entry | ) |
Get the name of the next entry in the directory.
| entry | reference to the name of the next entry |
| const String& BALL::Directory::getPath | ( | ) | const |
Get the path of this instance.
The directory path does not have a path seperator {"/"} at its end and is absolute. If a unvalid path was set the path is an empty string.
| bool BALL::Directory::has | ( | const String & | item | ) |
Test if the directory has an item.
| item | the name of the item to look for |
| bool BALL::Directory::isCurrent | ( | ) | const |
Test if the directory is the current working directory.
| bool BALL::Directory::isEmpty | ( | ) |
Test if the directory is empty.
| bool BALL::Directory::isValid | ( | ) | const |
Test if the directory is valid.
The directory is valid if it exists. This function uses opendir(const char *dirname).
| bool BALL::Directory::operator!= | ( | const Directory & | directory | ) | const |
Inequality operator.
Assignment operator.
Assign directory to this instance.
| bool BALL::Directory::operator== | ( | const Directory & | directory | ) | const |
Equality operator.
| bool BALL::Directory::remove | ( | ) |
Remove this directory.
The directory this object points to is deleted and the object is cleared.
| bool BALL::Directory::remove | ( | String | old_path | ) |
Remove a directory.
With this method the directory associated with this object can not be removed. Use remove() instead to do so.
| old_path | the path of the directory |
Rename a given directory.
With this method the directory associated with this object can not be renamed. Use renameTo instead to do so.
| old_path | the old path | |
| new_path | the new path |
| bool BALL::Directory::renameTo | ( | String | new_path | ) |
Rename the directory associated with this object.
| new_path | the new path |
| void BALL::Directory::set | ( | const Directory & | directory | ) |
Assignment with cloning facility.
Assign the Directory directory to
*this.
| directory | the directory to be cloned |
| bool BALL::Directory::set | ( | const String & | directory_path, | |
| bool | set_current =
false |
|||
| ) |
Assign the Directory with the path
directory_path.
The given directory path can be either absolute or relative. If the path starts with a path seperator it is set as a absolute path.
| directory_path | the name of the directory to be cloned | |
| set_current | true to set the directory as the current, default = false |
| bool BALL::Directory::setCurrent | ( | ) |
Set this directory as the current working directory.
| bool BALL::Directory::setCurrent | ( | String | directory_path | ) |
Set a directory as the current.
| directory_path | the name of the directory |
const Size
BALL::Directory::MAX_PATH_LENGTH
[static] |
The maximum length of a path.
This constant is used for system calls that require a maximum length (e.g., getcwd()). Default is 8192.
1.5.8