mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-01 06:16:58 +00:00
Fix/impl refactor (#14776)
* fix: impl refactor * fix: unload/load python module, race conditions, freezes * remove dead code * remove extra hook * remove more dead code * fix gil run script
This commit is contained in:
@@ -32,4 +32,20 @@ bool delete_plugin_root(const boost::filesystem::path& resolved_root,
|
||||
const std::string& plugin_id,
|
||||
std::string& error);
|
||||
|
||||
// The directories plugins are discovered from: {data_dir}/orca_plugins, plus the per-user cloud
|
||||
// directory when cloud_user_id is non-empty.
|
||||
//
|
||||
// NOTE: this CREATES the directories if they do not exist. Callers rely on that side effect — the
|
||||
// install path writes into them without creating them itself.
|
||||
std::vector<std::string> get_plugin_directories(const std::string& cloud_user_id);
|
||||
|
||||
// Scan the given directories for plugin packages (manifest-only; no Python is loaded, no state is
|
||||
// kept). Pure: directories in, descriptors out.
|
||||
//
|
||||
// Returns every package found, valid and invalid alike: a package whose manifest could not be
|
||||
// parsed comes back with metadata_valid == false and its error set (descriptor.is_invalid_package()).
|
||||
// The package-level auto-load flag is read from each package's .install_state.json into
|
||||
// descriptor.enabled. Capabilities are NOT discovered here — a package has none until it is loaded.
|
||||
std::vector<PluginDescriptor> discover_plugin_packages(const std::vector<std::string>& dirs, std::string& error);
|
||||
|
||||
} // namespace Slic3r
|
||||
|
||||
Reference in New Issue
Block a user