9 DeployerFactory() =
delete;
27 inline static const std::string
BG3DEPLOYER{
"Baldurs Gate 3 Deployer" };
43 "Links/ copies all files from enabled mods in its loadorder into "
44 "target directory. Backs up and restores existing files when needed." },
46 "When the target directory contains a file with the same name "
47 "but different case as a mods file name, renames the mods name to "
48 "match the target file. Then deploys as normal." },
50 "Uses LOOT to manage plugins for games like Skyrim. Source path "
51 "should point to the directory which plugins are installed into."
52 "Target path should point to the directory containing plugins.txt "
53 "and loadorder.txt" },
55 "Moves all files not managed by another deployer out of the target directory and "
56 "links them back in on deployment. Can be used to either track files created by"
57 "other mods or to manage save files for different profiles." },
59 "Uses LOOT to manage plugins for OpenMW. Source path "
60 "should point to the directory which plugins are installed into."
61 "Target path should point to the directory containing openmw.cfg" },
63 "Manages archive (i.e. .bsa) files for OpenMW. Source path should point to the "
64 "Data Files directory. Target path should point to the directory containing openmw.cfg." },
66 "Manages plugins contained in .pak files for Baldurs Gate 3. "
67 "Source path should point to the Mods directory. "
68 "Target path should point to the directory containing modsettings.lsx." }
94 const std::string& type,
95 const std::filesystem::path& source_path,
96 const std::filesystem::path& dest_path,
97 const std::string& name,
99 bool separate_profile_dirs =
false,
100 bool update_ignore_list =
false);
static const std::string CASEMATCHINGDEPLOYER
Uses case insensitive string matching when comparing mod file names with target file names.
Definition deployerfactory.h:17
static const std::string BG3DEPLOYER
Manages plugin files for Baldurs Gate 3.
Definition deployerfactory.h:27
static const std::string OPENMWARCHIVEDEPLOYER
Manages plugin files for OpenMW.
Definition deployerfactory.h:25
static const std::vector< std::string > DEPLOYER_TYPES
Returns a vector of available deployer types.
Definition deployerfactory.h:33
static const std::string LOOTDEPLOYER
Manages Bethesda plugin files using LOOT.
Definition deployerfactory.h:19
static const std::string OPENMWPLUGINDEPLOYER
Manages archive files for OpenMW.
Definition deployerfactory.h:23
static const std::map< std::string, std::string > DEPLOYER_DESCRIPTIONS
Maps deployer types to a description of what they do.
Definition deployerfactory.h:41
static const std::map< std::string, bool > AUTONOMOUS_DEPLOYERS
Maps deployer types to a bool indicating if the type refers to an autonomous deployer.
Definition deployerfactory.h:72
static const std::string REVERSEDEPLOYER
Moves all files not from a mod out of the target directory and links them back in.
Definition deployerfactory.h:21
static const std::string SIMPLEDEPLOYER
Performs no additional actions.
Definition deployerfactory.h:12
static std::unique_ptr< Deployer > makeDeployer(const std::string &type, const std::filesystem::path &source_path, const std::filesystem::path &dest_path, const std::string &name, Deployer::DeployMode deploy_mode=Deployer::hard_link, bool separate_profile_dirs=false, bool update_ignore_list=false)
Constructs a unique pointer to a new deployer of given type.
Definition deployerfactory.cpp:10
DeployMode
Describes how files should be deployed to the target directory.
Definition deployer.h:27
@ hard_link
Create hard links for files.
Definition deployer.h:29
Header for the Deployer class.