|
Elements
6.2
A C++ base framework for the Euclid Software.
|
provide functions to retrieve resources pointed by environment variables More...
#include <boost/filesystem.hpp>#include <map>#include <string>#include <utility>#include <vector>#include "ElementsKernel/Export.h"#include "ElementsKernel/_impl/Path.tpp"

Go to the source code of this file.
Namespaces | |
| Elements | |
| Elements::Kernel | |
| Elements::Kernel::Path | |
Macros | |
| #define | ELEMENTSKERNEL_ELEMENTSKERNEL_PATH_IMPL_ |
Typedefs | |
| using | Elements::Kernel::Path::Item = boost::filesystem::path |
Functions | |
| ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::getLocationsFromEnv (const std::string &path_variable, bool exist_only=false) |
| function to get the locations from an environment variable More... | |
| ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::getLocations (const Type &path_type, bool exist_only=false) |
| function to get the locations for the specific type More... | |
| template<typename T , typename U > | |
| ELEMENTS_API Item | Elements::Kernel::Path::getPathFromLocations (const T &file_name, const std::vector< U > &locations) |
| retrieve path from a file name and a set of location to look into More... | |
| template ELEMENTS_API Item | Elements::Kernel::Path::getPathFromLocations (const Item &file_name, const std::vector< Item > &locations) |
| template ELEMENTS_API Item | Elements::Kernel::Path::getPathFromLocations (const Item &file_name, const std::vector< std::string > &locations) |
| template ELEMENTS_API Item | Elements::Kernel::Path::getPathFromLocations (const std::string &file_name, const std::vector< Item > &locations) |
| template ELEMENTS_API Item | Elements::Kernel::Path::getPathFromLocations (const std::string &file_name, const std::vector< std::string > &locations) |
| template<typename T , typename U > | |
| ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::getAllPathFromLocations (const T &file_name, const std::vector< U > &locations) |
| retrieve all the paths from a file name and a set of location to look into More... | |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::getAllPathFromLocations (const Item &file_name, const std::vector< Item > &locations) |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::getAllPathFromLocations (const Item &file_name, const std::vector< std::string > &locations) |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::getAllPathFromLocations (const std::string &file_name, const std::vector< Item > &locations) |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::getAllPathFromLocations (const std::string &file_name, const std::vector< std::string > &locations) |
| template<typename T > | |
| ELEMENTS_API Item | Elements::Kernel::Path::getPathFromEnvVariable (const T &file_name, const std::string &path_variable) |
| retrieve path from a file name and an environment variable to look into More... | |
| template ELEMENTS_API Item | Elements::Kernel::Path::getPathFromEnvVariable< Item > (const Item &file_name, const std::string &path_variable) |
| template ELEMENTS_API Item | Elements::Kernel::Path::getPathFromEnvVariable< std::string > (const std::string &file_name, const std::string &path_variable) |
| template<typename T > | |
| ELEMENTS_API std::string | Elements::Kernel::Path::joinPath (const std::vector< T > &path_list) |
| collate a vector of path into a string using PATH_SEP More... | |
| template ELEMENTS_API std::string | Elements::Kernel::Path::joinPath (const std::vector< Item > &path_list) |
| template ELEMENTS_API std::string | Elements::Kernel::Path::joinPath (const std::vector< std::string > &path_list) |
| template<typename... Args> | |
| ELEMENTS_API auto | Elements::Kernel::Path::join (Args &&... args) -> decltype(joinPath(std::forward< Args >(args)...)) |
| alias for the joinPath function More... | |
| ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::splitPath (const std::string &path_string) |
| split a string into a vector of path using PATH_SEP More... | |
| template<typename... Args> | |
| ELEMENTS_API auto | Elements::Kernel::Path::split (Args &&... args) -> decltype(splitPath(std::forward< Args >(args)...)) |
| alias for the splitPath function More... | |
| template<typename T , typename U > | |
| ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::multiPathAppend (const std::vector< T > &initial_locations, const std::vector< U > &suffixes) |
| path join each suffix to each initial locations More... | |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::multiPathAppend (const std::vector< Item > &initial_locations, const std::vector< Item > &suffixes) |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::multiPathAppend (const std::vector< Item > &initial_locations, const std::vector< std::string > &suffixes) |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::multiPathAppend (const std::vector< std::string > &initial_locations, const std::vector< Item > &suffixes) |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::multiPathAppend (const std::vector< std::string > &initial_locations, const std::vector< std::string > &suffixes) |
| template<typename T > | |
| ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::removeDuplicates (const std::vector< T > &path_list) |
| remove duplicated paths keeping the order More... | |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::removeDuplicates (const std::vector< Item > &path_list) |
| template ELEMENTS_API std::vector< Item > | Elements::Kernel::Path::removeDuplicates (const std::vector< std::string > &path_list) |
Variables | |
| const ELEMENTS_API std::string | Elements::Kernel::Path::PATH_SEP {":"} |
| Separator of path entries. Usually ":" on Unix. More... | |
| const ELEMENTS_API std::map< Type, const std::string > | Elements::Kernel::Path::VARIABLE |
| map containing the name of the path variable for each type More... | |
| const ELEMENTS_API std::map< Type, const std::vector< std::string > > | Elements::Kernel::Path::SUFFIXES |
| map containing the default project installation suffixes for each variable More... | |
| const ELEMENTS_API std::map< Type, const std::vector< std::string > > | Elements::Kernel::Path::DEFAULT_LOCATIONS |
| map containing the default external locations for each variable More... | |
| const ELEMENTS_API std::map< Type, const bool > | Elements::Kernel::Path::HAS_SUBLEVELS |
| map containing the sub-level property of the path components More... | |
provide functions to retrieve resources pointed by environment variables
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 3.0 of the License, or (at your option) any later version.
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Definition in file Path.h.
1.8.17