X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FBasics%2FBasics_DirUtils.hxx;h=9b1ba4ef4be2a4f2ca5999af633e0263d69845e7;hb=7b6895b48ccd982f69db4fe3ecd30d75be0514dc;hp=048bdfea0d09ca1c49d71740ebf8c62bee5c2c96;hpb=7d2fe213bdf5bf962ce11e253020c9d3e0bc1cce;p=modules%2Fkernel.git diff --git a/src/Basics/Basics_DirUtils.hxx b/src/Basics/Basics_DirUtils.hxx index 048bdfea0..9b1ba4ef4 100644 --- a/src/Basics/Basics_DirUtils.hxx +++ b/src/Basics/Basics_DirUtils.hxx @@ -1,27 +1,25 @@ -// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. // -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + // SALOME Utils : general SALOME's definitions and tools // File : Basics_DirUtils.hxx -// Autor : Alexander A. BORODIN +// Author : Alexander A. BORODIN // Module : SALOME // #ifndef _Basics_DIRUTILS_HXX_ @@ -34,7 +32,10 @@ namespace Kernel_Utils { // Extracts and returns the base name of the specified file name. - BASICS_EXPORT std::string GetBaseName( const std::string& file_path ); + BASICS_EXPORT std::string GetBaseName( const std::string& file_path, bool with_extension = true ); + + // Extracts and returns the dir name of the specified file name. + BASICS_EXPORT std::string GetDirName( const std::string& file_path ); // Returns the unique temporary directory, that is defined in tmp_path_env if this variable is set // otherwise return /tmp/something/ for Unix or c:\something\ for WIN32 @@ -48,20 +49,30 @@ namespace Kernel_Utils // /tmp/something/ for Unix or c:\something\ for WIN32 BASICS_EXPORT std::string GetTmpDir(); - // Returns the unique temporary file name without any extension // /tmp/something/file for Unix or c:\something\file for WIN32 BASICS_EXPORT std::string GetTmpFileName(); + // Adds extension in the end of the specified file name. + BASICS_EXPORT std::string AddExtension( const std::string& name ); + // Returns True(False) if the path (not)exists BASICS_EXPORT bool IsExists( const std::string& path ); + // Returns True(False) if the path is writable + BASICS_EXPORT bool IsWritable( const std::string& path ); + // Returns directory by path and converts it to native system format BASICS_EXPORT std::string GetDirByPath( const std::string& path ); // Returns True(False) if the path (not) empty // Also returns False if the path is not valid BASICS_EXPORT bool IsEmptyDir( const std::string& path ); + + BASICS_EXPORT std::string BackSlashToSlash( const std::string& path ); + + // Returns getenv("HOME") for Unix or getenv("USERPROFILE") for WIN32 + BASICS_EXPORT std::string HomePath(); } #endif