clan::DirectoryScanner Class Reference

Directory scanning class. More...

#include <directory_scanner.h>

Public Member Functions

 DirectoryScanner ()
 Constructs directory scanner for iterating over a directory. More...
 
 ~DirectoryScanner ()
 Destructor. More...
 
std::string get_directory_path ()
 Gets the directory being scanned. More...
 
std::string get_name ()
 Gets the name of the current file. More...
 
std::string get_pathname ()
 Gets the pathname of the current file. More...
 
int get_size ()
 Gets the size of the current file. More...
 
bool is_directory ()
 Returns true if the current file is a directory. More...
 
bool is_hidden ()
 Returns true if the file is hidden. More...
 
bool is_readable ()
 Returns true if the file is readable by the current user. More...
 
bool is_writable ()
 Returns true if the file is writable by the current user. More...
 
bool next ()
 Find next file in directory scan. More...
 
bool scan (const std::string &pathname)
 Selects the directory to scan through. More...
 
bool scan (const std::string &pathname, const std::string &pattern)
 Selects the directory to scan through. More...
 

Detailed Description

Directory scanning class.

DirectoryScanner is used to parse through directory trees and return information about files.

Example that prints all files and directories found in the root directory:

   DirectoryScanner scanner;
   if (scanner.scan("/", "*"))
   {
                while (scanner.next())
                {
                                cl_console_write_line(scanner.get_name());
                }
   }
   

Constructor & Destructor Documentation

clan::DirectoryScanner::DirectoryScanner ( )

Constructs directory scanner for iterating over a directory.

clan::DirectoryScanner::~DirectoryScanner ( )

Destructor.

Member Function Documentation

std::string clan::DirectoryScanner::get_directory_path ( )

Gets the directory being scanned.

Returns
Directory being scanned. (including the trailing slash)
std::string clan::DirectoryScanner::get_name ( )

Gets the name of the current file.

Returns
The name of the current found file.
std::string clan::DirectoryScanner::get_pathname ( )

Gets the pathname of the current file.

Returns
The name of the current found file, including the directory path.
int clan::DirectoryScanner::get_size ( )

Gets the size of the current file.

Returns
The size of the current found file.
bool clan::DirectoryScanner::is_directory ( )

Returns true if the current file is a directory.

Returns
True if filename is a directory.
bool clan::DirectoryScanner::is_hidden ( )

Returns true if the file is hidden.

Returns
True if filename is hidden.
bool clan::DirectoryScanner::is_readable ( )

Returns true if the file is readable by the current user.

Returns
True if the file is readable.
bool clan::DirectoryScanner::is_writable ( )

Returns true if the file is writable by the current user.

Returns
True if the file is writable.
bool clan::DirectoryScanner::next ( )

Find next file in directory scan.

Returns
false if no more files was found.
bool clan::DirectoryScanner::scan ( const std::string pathname)

Selects the directory to scan through.

Selects the directory to scan through

Parameters
pathnamePath to the directory to scan (without trailing slash)
Returns
true if the directory can be accessed.
bool clan::DirectoryScanner::scan ( const std::string pathname,
const std::string pattern 
)

Selects the directory to scan through.

Selects the directory to scan through and use a matching pattern on the files.

WIN32: The pattern is normal DOS pattern matching ("*.*", ?) Unix: The pattern is normal pattern matching (*, ?)

Parameters
pathnamePath to the directory to scan (without trailing slash)
patternPattern to match files against.
Returns
true if the directory can be accessed.

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