Functions | |
std::string BASE_IMPEXP | mrpt::system::getTempFileName () |
Returns the name of a proposed temporary file name. More... | |
std::string BASE_IMPEXP | mrpt::system::getcwd () |
Returns the current working directory. More... | |
std::string BASE_IMPEXP | mrpt::system::getShareMRPTDir () |
Attempts to find the directory [PREFIX/]share/mrpt/ and returns its absolute path, or empty string if not found. More... | |
bool BASE_IMPEXP | mrpt::system::createDirectory (const std::string &dirName) |
Creates a directory. More... | |
bool BASE_IMPEXP | mrpt::system::deleteFile (const std::string &fileName) |
Deletes a single file. More... | |
void BASE_IMPEXP | mrpt::system::deleteFiles (const std::string &s) |
Delete one or more files, especified by the (optional) path and the file name (including '?' or '*') - Use forward slash ('/') for directories for compatibility between Windows and Linux, since they will be internally traslated into backward slashes ('\') if MRPT is compiled under Windows. More... | |
bool BASE_IMPEXP | mrpt::system::renameFile (const std::string &oldFileName, const std::string &newFileName, std::string *error_msg=NULL) |
Renames a file - If the target path is different and the filesystem allows it, it will be moved to the new location. More... | |
bool BASE_IMPEXP | mrpt::system::deleteFilesInDirectory (const std::string &s, bool deleteDirectoryAsWell=false) |
Delete all the files in a given directory (nothing done if directory does not exists, or path is a file). More... | |
std::string BASE_IMPEXP | mrpt::system::extractFileName (const std::string &filePath) |
Extract just the name (without extension) of a filename from a complete path plus name plus extension. More... | |
std::string BASE_IMPEXP | mrpt::system::extractFileExtension (const std::string &filePath, bool ignore_gz=false) |
Extract the extension of a filename. More... | |
std::string BASE_IMPEXP | mrpt::system::extractFileDirectory (const std::string &filePath) |
Extract the whole path (the directory) of a filename from a complete path plus name plus extension. More... | |
bool BASE_IMPEXP | mrpt::system::fileExists (const std::string &fileName) |
Test if a given file (or directory) exists. More... | |
bool BASE_IMPEXP | mrpt::system::directoryExists (const std::string &fileName) |
Test if a given directory exists (it fails if the given path refers to an existing file). More... | |
std::string BASE_IMPEXP | mrpt::system::fileNameStripInvalidChars (const std::string &filename, const char replacement_to_invalid_chars='_') |
Replace invalid filename chars by underscores ('_') or any other user-given char. More... | |
std::string BASE_IMPEXP | mrpt::system::fileNameChangeExtension (const std::string &filename, const std::string &newExtension) |
Replace the filename extension by another one. More... | |
uint64_t BASE_IMPEXP | mrpt::system::getFileSize (const std::string &fileName) |
Return the size of the given file, or size_t(-1) if some error is found accessing that file. More... | |
time_t BASE_IMPEXP | mrpt::system::getFileModificationTime (const std::string &filename) |
Return the time of the file last modification, or "0" if the file doesn't exist. More... | |
std::string BASE_IMPEXP | mrpt::system::filePathSeparatorsToNative (const std::string &filePath) |
Windows: replace all '/'->'\' , in Linux/MacOS: replace all '\'->'/'. More... | |
bool BASE_IMPEXP | mrpt::system::copyFile (const std::string &sourceFile, const std::string &targetFile, std::string *outErrStr=NULL, bool copyAttribs=true) |
Copies file sourceFile to targetFile. More... | |
bool mrpt::system::copyFile | ( | const std::string & | sourceFile, |
const std::string & | targetFile, | ||
std::string * | outErrStr = NULL , |
||
bool | copyAttribs = true |
||
) |
Copies file sourceFile to targetFile.
If the target file exists, it will be overwritten. If the target file cannot be overwritten, the function first tries to change its permissions/attributes and retries opening it for write.
Definition at line 374 of file filesystem.cpp.
References mrpt::system::directoryExists(), mrpt::system::os::fclose(), mrpt::system::fileExists(), mrpt::system::filePathSeparatorsToNative(), and mrpt::system::os::fopen().
bool mrpt::system::createDirectory | ( | const std::string & | dirName | ) |
Creates a directory.
Definition at line 154 of file filesystem.cpp.
References mrpt::format().
Referenced by mrpt::slam::CGridMapAligner::AlignPDF_robustMatch(), mrpt::hmtslam::CTopLCDetector_GridMatching::computeTopologicalObservationModel(), mrpt::nav::CParameterizedTrajectoryGenerator::debugDumpInFiles(), mrpt::nav::CAbstractPTGBasedReactive::enableLogFile(), mrpt::hmtslam::CHMTSLAM::initializeEmptyMap(), CGraphSlamHandler< GRAPH_T >::initOutputDir(), mrpt::hwdrivers::CSwissRanger3DCamera::setPathForExternalImages(), mrpt::hwdrivers::CCameraSensor::setPathForExternalImages(), and mrpt::nav::PlannerRRT_SE2_TPS::solve().
bool mrpt::system::deleteFile | ( | const std::string & | fileName | ) |
Deletes a single file.
For multiple files see deleteFiles
Definition at line 175 of file filesystem.cpp.
Referenced by mrpt::system::deleteFilesInDirectory(), mrpt::opengl::C3DSScene::loadFrom3DSFile(), mrpt::opengl::C3DSScene::readFromStream(), mrpt::maps::CColouredOctoMap::readFromStream(), mrpt::maps::COctoMap::readFromStream(), mrpt::opengl::C3DSScene::writeToStream(), mrpt::maps::CColouredOctoMap::writeToStream(), and mrpt::maps::COctoMap::writeToStream().
void mrpt::system::deleteFiles | ( | const std::string & | s | ) |
Delete one or more files, especified by the (optional) path and the file name (including '?' or '*') - Use forward slash ('/') for directories for compatibility between Windows and Linux, since they will be internally traslated into backward slashes ('\') if MRPT is compiled under Windows.
Definition at line 183 of file filesystem.cpp.
References MRPT_END, MRPT_START, mrpt::system::os::sprintf(), and mrpt::system::os::strcat().
bool mrpt::system::deleteFilesInDirectory | ( | const std::string & | s, |
bool | deleteDirectoryAsWell = false |
||
) |
Delete all the files in a given directory (nothing done if directory does not exists, or path is a file).
Definition at line 209 of file filesystem.cpp.
References _rmdir, mrpt::system::deleteFile(), mrpt::system::directoryExists(), FILE_ATTRIB_ARCHIVE, and FILE_ATTRIB_DIRECTORY.
Referenced by mrpt::slam::CGridMapAligner::AlignPDF_robustMatch(), mrpt::hmtslam::CHMTSLAM::initializeEmptyMap(), and CGraphSlamHandler< GRAPH_T >::initOutputDir().
bool mrpt::system::directoryExists | ( | const std::string & | fileName | ) |
Test if a given directory exists (it fails if the given path refers to an existing file).
Definition at line 132 of file filesystem.cpp.
References _stat.
Referenced by mrpt::system::copyFile(), mrpt::system::deleteFilesInDirectory(), mrpt::nav::CAbstractPTGBasedReactive::enableLogFile(), mrpt::system::find_mrpt_shared_dir(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::generateReportFiles(), mrpt::system::getShareMRPTDir(), CGraphSlamHandler< GRAPH_T >::initOutputDir(), and mrpt::gui::CPanelCameraSelection::OnbtnBrowseRawlogClick().
string mrpt::system::extractFileDirectory | ( | const std::string & | filePath | ) |
Extract the whole path (the directory) of a filename from a complete path plus name plus extension.
This function works for either "/" or "\" directory separators.
Definition at line 77 of file filesystem.cpp.
Referenced by mrpt::obs::CRawlog::detectImagesDirectory(), mrpt::system::find_mrpt_shared_dir(), mrpt::system::getShareMRPTDir(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::initClass(), mrpt::gui::CPanelCameraSelection::OnbtnBrowseRawlogClick(), run_rnav_test(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::TRGBDInfoFileParams::setRawlogFile(), and TEST().
string mrpt::system::extractFileExtension | ( | const std::string & | filePath, |
bool | ignore_gz = false |
||
) |
Extract the extension of a filename.
For example, for "dummy.cpp", it will return "cpp". If "ignore_gz" is true, the second extension will be returned if the file name ends in ".gz", for example, for "foo.map.gz", this will return "map".
Definition at line 96 of file filesystem.cpp.
Referenced by mrpt::vision::checkerBoardCameraCalibration(), mrpt::system::CDirectoryExplorer::filterByExtension(), mrpt::obs::CObservation3DRangeScan::load(), mrpt::opengl::C3DSScene::loadFrom3DSFile(), run_test_pf_localization(), and TEST().
string mrpt::system::extractFileName | ( | const std::string & | filePath | ) |
Extract just the name (without extension) of a filename from a complete path plus name plus extension.
This function works for either "/" or "\" directory separators.
Definition at line 61 of file filesystem.cpp.
Referenced by mrpt::vision::checkerBoardCameraCalibration(), mrpt::obs::CRawlog::detectImagesDirectory(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::initClass(), mrpt::hwdrivers::TCaptureOptions_DUO3D::m_camera_ext_params_from_yml(), mrpt::hwdrivers::TCaptureOptions_DUO3D::m_camera_int_params_from_yml(), mrpt::hwdrivers::TCaptureOptions_DUO3D::m_rectify_map_from_yml(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::TRGBDInfoFileParams::setRawlogFile(), and TEST().
bool mrpt::system::fileExists | ( | const std::string & | fileName | ) |
Test if a given file (or directory) exists.
Definition at line 124 of file filesystem.cpp.
References _access.
Referenced by mrpt::maps::CGasConcentrationGridMap2D::build_Gaussian_Wind_Grid(), mrpt::system::copyFile(), mrpt::obs::CRawlog::detectImagesDirectory(), mrpt::nav::CAbstractPTGBasedReactive::enableLogFile(), mrpt::slam::CMetricMapBuilder::loadCurrentMapFromFile(), mrpt::utils::CStringList::loadFromFile(), mrpt::hmtslam::CHMTSLAM::loadOptions(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::loadParams(), CGraphSlamHandler< GRAPH_T >::readConfigFname(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::readGTFile(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::readGTFileRGBD_TUM(), run_rnav_test(), run_test_pf_localization(), and TEST().
std::string mrpt::system::fileNameChangeExtension | ( | const std::string & | filePath, |
const std::string & | newExtension | ||
) |
Replace the filename extension by another one.
Example:
Definition at line 356 of file filesystem.cpp.
Referenced by mrpt::obs::CObservation3DRangeScan::points3D_convertToExternalStorage(), mrpt::obs::CObservation3DRangeScan::rangeImage_convertToExternalStorage(), and TEST().
std::string mrpt::system::fileNameStripInvalidChars | ( | const std::string & | filename, |
const char | replacement_to_invalid_chars = '_' |
||
) |
Replace invalid filename chars by underscores ('_') or any other user-given char.
Invalid chars are: '<','>',':','"','/','\','|','?','*'
Definition at line 315 of file filesystem.cpp.
Referenced by mrpt::hwdrivers::CGPSInterface::doProcess(), mrpt::hwdrivers::CSwissRanger3DCamera::getNextObservation(), mrpt::hwdrivers::CNTRIPEmitter::initialize(), mrpt::nav::CParameterizedTrajectoryGenerator::initialize(), CGraphSlamHandler< GRAPH_T >::initOutputDir(), mrpt::graphslam::CGraphSlamEngine< GRAPH_T >::initResultsFile(), mrpt::hwdrivers::CVelodyneScanner::receivePackets(), CGraphSlamHandler< GRAPH_T >::setResultsDirName(), and mrpt::hwdrivers::CCameraSensor::thread_save_images().
std::string mrpt::system::filePathSeparatorsToNative | ( | const std::string & | filePath | ) |
Windows: replace all '/'->'\' , in Linux/MacOS: replace all '\'->'/'.
Definition at line 543 of file filesystem.cpp.
Referenced by mrpt::system::copyFile(), and TEST().
std::string mrpt::system::getcwd | ( | ) |
Returns the current working directory.
Definition at line 239 of file filesystem.cpp.
References MRPT_END, MRPT_START, and THROW_EXCEPTION.
time_t mrpt::system::getFileModificationTime | ( | const std::string & | filename | ) |
Return the time of the file last modification, or "0" if the file doesn't exist.
Definition at line 558 of file filesystem.cpp.
uint64_t mrpt::system::getFileSize | ( | const std::string & | fileName | ) |
Return the size of the given file, or size_t(-1) if some error is found accessing that file.
Definition at line 338 of file filesystem.cpp.
Referenced by mrpt::utils::CFileGZInputStream::open().
std::string mrpt::system::getShareMRPTDir | ( | ) |
Attempts to find the directory [PREFIX/]share/mrpt/
and returns its absolute path, or empty string if not found.
Example return paths: Linux after installing = /usr/share/mrpt/
; manually-built system = [CMAKE_SOURCE_DIR]/share/mrpt/
, etc.
Definition at line 567 of file filesystem.cpp.
References mrpt::system::directoryExists(), and mrpt::system::extractFileDirectory().
std::string mrpt::system::getTempFileName | ( | ) |
Returns the name of a proposed temporary file name.
Definition at line 273 of file filesystem.cpp.
References ASSERT_.
Referenced by mrpt::compress::zip::decompress_gz_data_block(), mrpt::opengl::C3DSScene::loadFrom3DSFile(), mrpt::opengl::C3DSScene::readFromStream(), mrpt::maps::CColouredOctoMap::readFromStream(), mrpt::maps::COctoMap::readFromStream(), run_rnav_test(), TEST(), mrpt::opengl::C3DSScene::writeToStream(), mrpt::maps::CColouredOctoMap::writeToStream(), and mrpt::maps::COctoMap::writeToStream().
bool mrpt::system::renameFile | ( | const std::string & | oldFileName, |
const std::string & | newFileName, | ||
std::string * | error_msg = NULL |
||
) |
Renames a file - If the target path is different and the filesystem allows it, it will be moved to the new location.
Definition at line 297 of file filesystem.cpp.
Referenced by CGraphSlamHandler< GRAPH_T >::initOutputDir().
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 |