33 #include "../filesystem/FileSystem.h" 34 #include "../utils/Platform.h" 40 #include <boost/algorithm/string/predicate.hpp> 41 #include <boost/filesystem.hpp> 45 static std::vector<te::core::PluginInfo>
GetPluginsInfo(
const std::vector<std::string>& lookup_dirs)
47 std::vector<te::core::PluginInfo> found_plugins;
49 for (
const std::string& plugins_dir : lookup_dirs)
54 boost::filesystem::path
p(plugins_dir);
56 std::vector<std::string> dir =
58 for (std::string
file : dir)
62 if (boost::algorithm::ends_with(
file,
".teplg.json"))
66 found_plugins.push_back(pinfo);
84 std::vector<std::string> plugin_directories;
87 plugin_directories.push_back(
95 plugin_directories.push_back(plg_dir);
97 return plugin_directories;
106 std::vector<te::core::PluginInfo> add_info =
GetPluginsInfo(dirs);
108 if (!add_info.empty())
109 info.insert(info.end(), add_info.begin(), add_info.end());
static std::vector< std::string > GetDefaultLookupDirs()
TECOREEXPORT std::vector< PluginInfo > PluginFinder(const std::vector< std::string > &dirs)
static bool isDirectory(const std::string &path)
Checks if a given path in UTF-8 is a directory.
static std::vector< std::string > listDirectory(const std::string &path)
Lists a directory from a given path in UTF-8.
Basic information about a plugin.
General utilities for serializing plugin information.
static std::vector< te::core::PluginInfo > GetPluginsInfo(const std::vector< std::string > &lookup_dirs)
General utilities for plugins.
TECOREEXPORT PluginInfo JSONPluginInfoSerializer(const std::string &file_name)
A plugin finder that search for plugins in some special directories defined by compile time macros...
static std::string systemCompletePath(const std::string &path)
Composes an absolute path for the given path in UTF-8.
TECOREEXPORT std::string FindInTerraLibPath(const std::string &path)
Returns the path relative to a directory or file in the context of TerraLib.
TECOREEXPORT std::vector< PluginInfo > DefaultPluginFinder()
General utilities for searching for plugins.
static bool isRegularFile(const std::string &path)
Checks if a given path in UTF-8 is a regular file.
file(WRITE ${CMAKE_BINARY_DIR}/config_qhelp.cmake"configure_file (${TERRALIB_ABSOLUTE_ROOT_DIR}/doc/qhelp/help.qhcp.in ${CMAKE_BINARY_DIR}/share/terraview/help/help.qhcp @ONLY)") add_custom_command(OUTPUT del_dir COMMAND $