Main MRPT website > C++ reference for MRPT 1.5.7
List of all members | Classes | Public Types | Static Public Member Functions
mrpt::system::CDirectoryExplorer Class Reference

Detailed Description

This class allows the enumeration of the files/directories that exist into a given path.

The only existing method is "explore" and returns the list of found files & directories. Refer to the example in /samples/UTILS/directoryExplorer

See also
CFileSystemWatcher

Definition at line 30 of file CDirectoryExplorer.h.

#include <mrpt/system/CDirectoryExplorer.h>

Classes

struct  TFileInfo
 This represents the information about each file. More...
 

Public Types

typedef std::deque< TFileInfoTFileInfoList
 The list type used in "explore". More...
 

Static Public Member Functions

static void explore (const std::string &path, const unsigned long mask, TFileInfoList &outList)
 The path of the directory to examine must be passed to this constructor, among the According to the following parameters, the object will collect the list of files, which can be modified later through other methods in this class. More...
 
static void sortByName (TFileInfoList &lstFiles, bool ascendingOrder=true)
 Sort the file entries by name, in ascending or descending order. More...
 
static void filterByExtension (TFileInfoList &lstFiles, const std::string &extension)
 Remove from the list of files those whose extension does not coincide (without case) with the given one. More...
 

Member Typedef Documentation

◆ TFileInfoList

The list type used in "explore".

See also
explore

Definition at line 60 of file CDirectoryExplorer.h.

Member Function Documentation

◆ explore()

void CDirectoryExplorer::explore ( const std::string path,
const unsigned long  mask,
TFileInfoList outList 
)
static

The path of the directory to examine must be passed to this constructor, among the According to the following parameters, the object will collect the list of files, which can be modified later through other methods in this class.

Parameters
pathThe path to examine (IT MUST BE A DIRECTORY), e.g "d:\temp\", or "/usr/include/"
maskOne or the OR'ed combination of the values "FILE_ATTRIB_ARCHIVE" and "FILE_ATTRIB_DIRECTORY", depending on what file types do you want in the list (These values are platform-independent).
outListThe list of found files/directories is stored here.
See also
sortByName

Definition at line 49 of file CDirectoryExplorer.cpp.

References mrpt::system::CDirectoryExplorer::TFileInfo::accessTime, FILE_ATTRIB_ARCHIVE, FILE_ATTRIB_DIRECTORY, mrpt::system::CDirectoryExplorer::TFileInfo::fileSize, mrpt::system::CDirectoryExplorer::TFileInfo::isDir, mrpt::system::CDirectoryExplorer::TFileInfo::isSymLink, mrpt::system::CDirectoryExplorer::TFileInfo::modTime, MRPT_END, MRPT_START, mrpt::system::CDirectoryExplorer::TFileInfo::name, THROW_EXCEPTION, THROW_EXCEPTION_FMT, and mrpt::system::CDirectoryExplorer::TFileInfo::wholePath.

◆ filterByExtension()

void CDirectoryExplorer::filterByExtension ( TFileInfoList lstFiles,
const std::string extension 
)
static

Remove from the list of files those whose extension does not coincide (without case) with the given one.

Example: filterByExtension(lst,"txt");

Definition at line 214 of file CDirectoryExplorer.cpp.

References mrpt::system::os::_strcmpi(), and mrpt::system::extractFileExtension().

◆ sortByName()

void CDirectoryExplorer::sortByName ( TFileInfoList lstFiles,
bool  ascendingOrder = true 
)
static

Sort the file entries by name, in ascending or descending order.

Definition at line 205 of file CDirectoryExplorer.cpp.

References cmpFileEntriesName_Asc(), and cmpFileEntriesName_Desc().




Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019