35 #ifndef ELEMENTSKERNEL_ELEMENTSKERNEL_PATH_H_
36 #define ELEMENTSKERNEL_ELEMENTSKERNEL_PATH_H_
41 #include <boost/filesystem.hpp>
97 bool exist_only =
false);
114 template <
typename T,
typename U>
146 template <
typename T,
typename U>
175 template <
typename T>
191 template <
typename T>
194 template <
typename T,
typename U>
216 #endif // ELEMENTSKERNEL_ELEMENTSKERNEL_PATH_H_
ELEMENTS_API const std::map< Type, const std::vector< std::string > > SUFFIXES
map containing the default project installation suffixes for each variable
implementation of the templates declared in ElementsKernel/Path.h
boost::filesystem::path getPathFromEnvVariable(const T &file_name, const std::string &path_variable)
retrieve path from a file name and an environment variable to look into
ELEMENTS_API std::vector< boost::filesystem::path > getLocationsFromEnv(const std::string &path_variable, bool exist_only=false)
function to get the locations from an environment variable
ELEMENTS_API const std::map< Type, const std::vector< std::string > > DEFAULT_LOCATIONS
map containing the default external locations for each variable
ELEMENTS_API const std::map< Type, const bool > HAS_SUBLEVELS
map containing the sub-level property of the path components
std::vector< boost::filesystem::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
defines the macros to be used for explicit export of the symbols
boost::filesystem::path path
#define ELEMENTS_API
Dummy definitions for the backward compatibility mode.
ELEMENTS_API const std::map< Type, const std::string > VARIABLE
map containing the name of the path variable for each type
std::vector< boost::filesystem::path > multiPathAppend(const std::vector< T > &initial_locations, const std::vector< U > &suffixes)
std::string joinPath(const std::vector< T > path_list)
collate a vector of path into a string using PATH_SEP
boost::filesystem::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
ELEMENTS_API const std::string PATH_SEP
Separator of path entries. Usually ":" on Unix.