OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Preset.cpp File Reference
#include <boost/filesystem/path.hpp>
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/file_status.hpp>
#include <boost/uuid/name_generator_sha1.hpp>
#include <boost/optional/optional.hpp>
#include <boost/filesystem/directory.hpp>
#include <boost/algorithm/string/trim.hpp>
#include <boost/algorithm/string/erase.hpp>
#include <boost/algorithm/string/case_conv.hpp>
#include <cassert>
#include <string>
#include <cstddef>
#include <iterator>
#include <vector>
#include <map>
#include <utility>
#include <cstdlib>
#include <ostream>
#include <system_error>
#include <set>
#include <exception>
#include <cstdio>
#include <functional>
#include <optional>
#include <deque>
#include <regex>
#include <initializer_list>
#include "Config.hpp"
#include "Exception.hpp"
#include "Preset.hpp"
#include "PresetBundle.hpp"
#include "AppConfig.hpp"
#include "LocalesUtils.hpp"
#include "ParallelResolve.hpp"
#include "Semver.hpp"
#include "PrintConfig.hpp"
#include "libslic3r_version.h"
#include "I18N.hpp"
#include <algorithm>
#include <fstream>
#include <stdexcept>
#include <unordered_map>
#include <boost/format.hpp>
#include <boost/filesystem.hpp>
#include <boost/filesystem/fstream.hpp>
#include <boost/algorithm/string.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/regex.hpp>
#include <boost/nowide/convert.hpp>
#include <boost/nowide/cstdio.hpp>
#include <boost/nowide/fstream.hpp>
#include <boost/property_tree/ini_parser.hpp>
#include <boost/property_tree/ptree.hpp>
#include <boost/uuid/uuid.hpp>
#include <boost/uuid/uuid_generators.hpp>
#include <boost/locale.hpp>
#include <boost/log/trivial.hpp>
#include "libslic3r.h"
#include "LifecycleEvents.hpp"
#include "Utils.hpp"
#include "InstanceLock.hpp"
#include "nlohmann/json.hpp"
#include <sstream>
#include "PlaceholderParser.hpp"
#include "libslic3r/GCode/Thumbnails.hpp"

Go to the source code of this file.

Classes

struct  Slic3r::anonymous_namespace{Preset.cpp}::ParsedName

Namespaces

namespace  Slic3r
 |/ Copyright (c) Prusa Research 2020 - 2023 Enrico Turri @enricoturri1966 |/ |/ PrusaSlicer is released under the terms of the AGPLv3 or higher |/
namespace  Slic3r::anonymous_namespace{Preset.cpp}
namespace  Slic3r::PresetUtils

Macros

#define L(s)

Functions

static ParsedName Slic3r::anonymous_namespace{Preset.cpp}::parse_preset_name (const std::string &raw_name)
std::string Slic3r::get_preset_canonical_name (const std::string &preset_bare_name, const PresetOrigin &origin)
std::string Slic3r::user_presets_lock_path (bool read_only)
static void Slic3r::remove_preset_files (const std::string &preset_file, bool read_only)
std::string Slic3r::get_preset_bare_name (const std::string &canonical_name)
PresetOrigin Slic3r::detect_origin_from_path (const boost::filesystem::path &path, const PresetOrigin &explicit_origin)
Semver Slic3r::get_version_from_json (std::string file_path)
int Slic3r::get_values_from_json (std::string file_path, std::vector< std::string > &keys, std::map< std::string, std::string > &key_values)
ConfigFileType Slic3r::guess_config_file_type (const ptree &tree)
void Slic3r::extend_default_config_length (DynamicPrintConfig &config, const bool set_nil_to_default, const DynamicPrintConfig &defaults)
std::string Slic3r::generate_preset_setting_id (const std::string &vendor, const std::string &type, const std::string &name)
bool Slic3r::is_compatible_with_print (const PresetWithVendorProfile &preset, const PresetWithVendorProfile &active_print, const PresetWithVendorProfile &active_printer)
bool Slic3r::is_compatible_with_parent_printer (const PresetWithVendorProfile &preset, const PresetWithVendorProfile &active_printer)
bool Slic3r::is_compatible_with_printer (const PresetWithVendorProfile &preset, const PresetWithVendorProfile &active_printer, const DynamicPrintConfig *extra_config)
bool Slic3r::is_compatible_with_printer (const PresetWithVendorProfile &preset, const PresetWithVendorProfile &active_printer)
bool Slic3r::is_compatible_with_printer (const DynamicPrintConfig &preset_config, Preset::Type preset_type, const DynamicPrintConfig &printer_config, const std::string &printer_name)
static json Slic3r::read_user_preset_file (const std::string &file)
static bool Slic3r::profile_print_params_same (const DynamicPrintConfig &cfg_old, const DynamicPrintConfig &cfg_new)
template<class T>
void Slic3r::add_correct_opts_to_diff (const std::string &opt_key, t_config_option_keys &vec, const ConfigBase &other, const ConfigBase &this_c, bool strict)
t_config_option_keys Slic3r::deep_diff (const ConfigBase &config_this, const ConfigBase &config_other, bool strict=true)
static void Slic3r::update_preset_name_option (const std::set< std::string > &preset_names, DynamicPrintConfig &config)
const VendorProfile::PrinterModel * Slic3r::PresetUtils::system_printer_model (const Preset &preset)
std::string Slic3r::PresetUtils::system_printer_bed_model (const Preset &preset)
std::string Slic3r::PresetUtils::system_printer_bed_texture (const Preset &preset)
std::string Slic3r::PresetUtils::system_printer_hotend_model (const Preset &preset)

Variables

static const std::unordered_map< std::string, std::string > Slic3r::pre_family_model_map
static std::string Slic3r::g_suffix_modified = " (modified)"
static std::vector< std::string > Slic3r::s_Preset_print_options
static std::vector< std::string > Slic3r::s_Preset_filament_options
static std::vector< std::string > Slic3r::s_Preset_machine_limits_options
static std::vector< std::string > Slic3r::s_Preset_printer_options
static std::vector< std::string > Slic3r::s_Preset_sla_print_options
static std::vector< std::string > Slic3r::s_Preset_sla_material_options
static std::vector< std::string > Slic3r::s_Preset_sla_printer_options
static constexpr const std::initializer_list< const char * > Slic3r::optional_keys { "compatible_prints", "compatible_printers" }
static std::set< std::string > Slic3r::skipped_in_dirty = {"printer_settings_id", "print_settings_id", "filament_settings_id"}
static std::vector< std::string > Slic3r::s_PhysicalPrinter_opts

Class Documentation

◆ Slic3r::anonymous_namespace{Preset.cpp}::ParsedName

struct Slic3r::anonymous_namespace{Preset.cpp}::ParsedName
Collaboration diagram for Slic3r::anonymous_namespace{Preset.cpp}::ParsedName:
Class Members
string bare
string bundle_id
Kind kind { PresetOrigin::Kind::User }

Macro Definition Documentation

◆ L

#define L ( s)
Value:
s