Files

7192 lines
705 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html class="writer-html5" lang="en" data-content_root="../../">
<head>
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>mobase &mdash; MO2 Python Plugin API documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=b86133f3" />
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=e59714d7" />
<link rel="stylesheet" type="text/css" href="../../_static/graphviz.css?v=4ae1632d" />
<link rel="shortcut icon" href="../../_static/mo2.ico"/>
<script src="../../_static/jquery.js?v=5d32c60e"></script>
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script src="../../_static/documentation_options.js?v=5929fcd5"></script>
<script src="../../_static/doctools.js?v=9bcbadda"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../../genindex.html" />
<link rel="search" title="Search" href="../../search.html" />
<link rel="next" title="mobase.widgets" href="widgets/index.html" />
<link rel="prev" title="API Reference" href="../index.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../index.html" class="icon icon-home">
MO2 Python Plugin API
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../setup-tools.html">Setting up the environment</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../setup-tools.html#required-tools">Required tools</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../setup-tools.html#preparation">Preparation</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../setup-tools.html#get-the-mobase-stubs">1. Get the <code class="docutils literal notranslate"><span class="pre">mobase</span></code> stubs</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../setup-tools.html#configure-visual-studio-code-for-mobase">2. Configure Visual Studio Code for <code class="docutils literal notranslate"><span class="pre">mobase</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="../../setup-tools.html#optional-configure-black-to-auto-format-your-source-files">3. [Optional] Configure <code class="docutils literal notranslate"><span class="pre">black</span></code> to auto-format your source files</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../setup-tools.html#optional-automatically-reload-plugins-during-development">4. [Optional] Automatically reload plugins during development</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../setup-tools.html#testing-the-setup">Testing the setup</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../plugin-types.html">Type of Plugins</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#installers">Installers</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#previewers">Previewers</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#mod-page">Mod Page</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#game">Game</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#tool">Tool</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#proxies">Proxies</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#free-plugins"><em>Free Plugins</em></a></li>
<li class="toctree-l2"><a class="reference internal" href="../../plugin-types.html#extension-interfaces">Extension Interfaces</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../plugin-types.html#diagnose">Diagnose</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../plugin-types.html#file-mappings">File Mappings</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../writing-plugins.html">Writing Plugins</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../writing-plugins.html#getting-started">Getting started</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#single-file-plugins">Single file plugins</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#module-plugins">Module Plugins</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../writing-plugins.html#writing-the-plugin">Writing the plugin</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#iplugin-interface"><code class="docutils literal notranslate"><span class="pre">IPlugin</span></code> interface</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../writing-plugins.html#examples">Examples</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#tutorial-plugins">Tutorial Plugins</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#official-plugins">Official Plugins</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#unofficial-plugins">Unofficial Plugins</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../writing-plugins.html#internationalization">Internationalization</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#adding-translation-code">Adding translation code</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#generating-qt-translation-files">Generating Qt translation files</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#translating">Translating</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../writing-plugins.html#distributing-translations">Distributing translations</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../faq.html">FAQ</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../faq.html#why-is-mo2-throwing-an-exception-when-i-try-to-create-a-type-inheriting-one-of-mo2-class">1. Why is MO2 throwing an exception when I try to create a type inheriting one of MO2 class?</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../faq.html#how-can-i-be-sure-to-implement-all-the-required-methods-when-creating-a-plugin">2. How can I be sure to implement all the required methods when creating a plugin?</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../faq.html#why-are-my-isinstance-x-qobject-and-isinstance-y-qwidget-not-working">3. Why are my <code class="docutils literal notranslate"><span class="pre">isinstance(x,</span> <span class="pre">QObject)</span></code> and <code class="docutils literal notranslate"><span class="pre">isinstance(y,</span> <span class="pre">QWidget)</span></code> not working?</a></li>
</ul>
</li>
<li class="toctree-l1 current"><a class="reference internal" href="../index.html">API Reference</a><ul class="current">
<li class="toctree-l2 current"><a class="current reference internal" href="#">mobase</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#submodules">Submodules</a><ul>
<li class="toctree-l4"><a class="reference internal" href="widgets/index.html">mobase.widgets</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#attributes">Attributes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#classes">Classes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#functions">Functions</a></li>
<li class="toctree-l3"><a class="reference internal" href="#package-contents">Package Contents</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#mobase.BSAInvalidation"><code class="docutils literal notranslate"><span class="pre">BSAInvalidation</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.DataArchives"><code class="docutils literal notranslate"><span class="pre">DataArchives</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.EndorsedState"><code class="docutils literal notranslate"><span class="pre">EndorsedState</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ExecutableForcedLoadSetting"><code class="docutils literal notranslate"><span class="pre">ExecutableForcedLoadSetting</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ExecutableInfo"><code class="docutils literal notranslate"><span class="pre">ExecutableInfo</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.FileInfo"><code class="docutils literal notranslate"><span class="pre">FileInfo</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.FileTreeEntry"><code class="docutils literal notranslate"><span class="pre">FileTreeEntry</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.GameFeature"><code class="docutils literal notranslate"><span class="pre">GameFeature</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.GamePlugins"><code class="docutils literal notranslate"><span class="pre">GamePlugins</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.GuessQuality"><code class="docutils literal notranslate"><span class="pre">GuessQuality</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.GuessedString"><code class="docutils literal notranslate"><span class="pre">GuessedString</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IDownloadManager"><code class="docutils literal notranslate"><span class="pre">IDownloadManager</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IFileTree"><code class="docutils literal notranslate"><span class="pre">IFileTree</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IGameFeatures"><code class="docutils literal notranslate"><span class="pre">IGameFeatures</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IInstallationManager"><code class="docutils literal notranslate"><span class="pre">IInstallationManager</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IModInterface"><code class="docutils literal notranslate"><span class="pre">IModInterface</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IModList"><code class="docutils literal notranslate"><span class="pre">IModList</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IModRepositoryBridge"><code class="docutils literal notranslate"><span class="pre">IModRepositoryBridge</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IOrganizer"><code class="docutils literal notranslate"><span class="pre">IOrganizer</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPlugin"><code class="docutils literal notranslate"><span class="pre">IPlugin</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginDiagnose"><code class="docutils literal notranslate"><span class="pre">IPluginDiagnose</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginFileMapper"><code class="docutils literal notranslate"><span class="pre">IPluginFileMapper</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginGame"><code class="docutils literal notranslate"><span class="pre">IPluginGame</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginInstaller"><code class="docutils literal notranslate"><span class="pre">IPluginInstaller</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginInstallerCustom"><code class="docutils literal notranslate"><span class="pre">IPluginInstallerCustom</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginInstallerSimple"><code class="docutils literal notranslate"><span class="pre">IPluginInstallerSimple</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginList"><code class="docutils literal notranslate"><span class="pre">IPluginList</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginModPage"><code class="docutils literal notranslate"><span class="pre">IPluginModPage</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginPreview"><code class="docutils literal notranslate"><span class="pre">IPluginPreview</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginRequirement"><code class="docutils literal notranslate"><span class="pre">IPluginRequirement</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPluginTool"><code class="docutils literal notranslate"><span class="pre">IPluginTool</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IProfile"><code class="docutils literal notranslate"><span class="pre">IProfile</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ISaveGame"><code class="docutils literal notranslate"><span class="pre">ISaveGame</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ISaveGameInfoWidget"><code class="docutils literal notranslate"><span class="pre">ISaveGameInfoWidget</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.InstallResult"><code class="docutils literal notranslate"><span class="pre">InstallResult</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.LoadOrderMechanism"><code class="docutils literal notranslate"><span class="pre">LoadOrderMechanism</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.LocalSavegames"><code class="docutils literal notranslate"><span class="pre">LocalSavegames</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.Mapping"><code class="docutils literal notranslate"><span class="pre">Mapping</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ModDataChecker"><code class="docutils literal notranslate"><span class="pre">ModDataChecker</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ModDataContent"><code class="docutils literal notranslate"><span class="pre">ModDataContent</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ModRepositoryFileInfo"><code class="docutils literal notranslate"><span class="pre">ModRepositoryFileInfo</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ModState"><code class="docutils literal notranslate"><span class="pre">ModState</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.PluginRequirementFactory"><code class="docutils literal notranslate"><span class="pre">PluginRequirementFactory</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.PluginSetting"><code class="docutils literal notranslate"><span class="pre">PluginSetting</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.PluginState"><code class="docutils literal notranslate"><span class="pre">PluginState</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ProfileSetting"><code class="docutils literal notranslate"><span class="pre">ProfileSetting</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ReleaseType"><code class="docutils literal notranslate"><span class="pre">ReleaseType</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.SaveGameInfo"><code class="docutils literal notranslate"><span class="pre">SaveGameInfo</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.ScriptExtender"><code class="docutils literal notranslate"><span class="pre">ScriptExtender</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.SortMechanism"><code class="docutils literal notranslate"><span class="pre">SortMechanism</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.TrackedState"><code class="docutils literal notranslate"><span class="pre">TrackedState</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.UnmanagedMods"><code class="docutils literal notranslate"><span class="pre">UnmanagedMods</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.VersionInfo"><code class="docutils literal notranslate"><span class="pre">VersionInfo</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.VersionScheme"><code class="docutils literal notranslate"><span class="pre">VersionScheme</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.getFileVersion"><code class="docutils literal notranslate"><span class="pre">getFileVersion()</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.getIconForExecutable"><code class="docutils literal notranslate"><span class="pre">getIconForExecutable()</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.getProductVersion"><code class="docutils literal notranslate"><span class="pre">getProductVersion()</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.GameFeatureType"><code class="docutils literal notranslate"><span class="pre">GameFeatureType</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.INVALID_HANDLE_VALUE"><code class="docutils literal notranslate"><span class="pre">INVALID_HANDLE_VALUE</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.MoVariant"><code class="docutils literal notranslate"><span class="pre">MoVariant</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="#mobase.__version__"><code class="docutils literal notranslate"><span class="pre">__version__</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">MO2 Python Plugin API</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="../../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item"><a href="../index.html">API Reference</a></li>
<li class="breadcrumb-item active">mobase</li>
<li class="wy-breadcrumbs-aside">
<a href="../../_sources/autoapi/mobase/index.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="module-mobase">
<span id="mobase"></span><h1>mobase<a class="headerlink" href="#module-mobase" title="Link to this heading"></a></h1>
<section id="submodules">
<h2>Submodules<a class="headerlink" href="#submodules" title="Link to this heading"></a></h2>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="widgets/index.html">mobase.widgets</a></li>
</ul>
</div>
</section>
<section id="attributes">
<h2>Attributes<a class="headerlink" href="#attributes" title="Link to this heading"></a></h2>
<table class="autosummary longtable docutils align-default">
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.GameFeatureType" title="mobase.GameFeatureType"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeatureType</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.INVALID_HANDLE_VALUE" title="mobase.INVALID_HANDLE_VALUE"><code class="xref py py-obj docutils literal notranslate"><span class="pre">INVALID_HANDLE_VALUE</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.MoVariant" title="mobase.MoVariant"><code class="xref py py-obj docutils literal notranslate"><span class="pre">MoVariant</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.__version__" title="mobase.__version__"><code class="xref py py-obj docutils literal notranslate"><span class="pre">__version__</span></code></a></p></td>
<td><p></p></td>
</tr>
</tbody>
</table>
</section>
<section id="classes">
<h2>Classes<a class="headerlink" href="#classes" title="Link to this heading"></a></h2>
<table class="autosummary longtable docutils align-default">
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.BSAInvalidation" title="mobase.BSAInvalidation"><code class="xref py py-obj docutils literal notranslate"><span class="pre">BSAInvalidation</span></code></a></p></td>
<td><p>Base class for all game features, cannot be inherited, used only for typing</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.DataArchives" title="mobase.DataArchives"><code class="xref py py-obj docutils literal notranslate"><span class="pre">DataArchives</span></code></a></p></td>
<td><p>Base class for all game features, cannot be inherited, used only for typing</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.EndorsedState" title="mobase.EndorsedState"><code class="xref py py-obj docutils literal notranslate"><span class="pre">EndorsedState</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.ExecutableForcedLoadSetting" title="mobase.ExecutableForcedLoadSetting"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ExecutableForcedLoadSetting</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.ExecutableInfo" title="mobase.ExecutableInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ExecutableInfo</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.FileInfo" title="mobase.FileInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FileInfo</span></code></a></p></td>
<td><p>Information about a virtualized file</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FileTreeEntry</span></code></a></p></td>
<td><p>Represent an entry in a file tree, either a file or a directory. This class</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p></td>
<td><p>Base class for all game features, cannot be inherited, used only for typing</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.GamePlugins" title="mobase.GamePlugins"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GamePlugins</span></code></a></p></td>
<td><p>Base class for all game features, cannot be inherited, used only for typing</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.GuessQuality" title="mobase.GuessQuality"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GuessQuality</span></code></a></p></td>
<td><p>Describes how good the code considers a guess (i.e. for a mod name) this is used to</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GuessedString</span></code></a></p></td>
<td><p>Represents a string that may be set from different places. Each time the value is</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IDownloadManager" title="mobase.IDownloadManager"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IDownloadManager</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IFileTree</span></code></a></p></td>
<td><p>Interface to classes that provides way to visualize and alter file trees. The tree</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IGameFeatures" title="mobase.IGameFeatures"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IGameFeatures</span></code></a></p></td>
<td><p>Interface for the game features, accessible through IOrganizer.gameFeatures().</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IInstallationManager" title="mobase.IInstallationManager"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IInstallationManager</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IModInterface</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IModList" title="mobase.IModList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IModList</span></code></a></p></td>
<td><p>Interface to the mod-list.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IModRepositoryBridge" title="mobase.IModRepositoryBridge"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IModRepositoryBridge</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IOrganizer" title="mobase.IOrganizer"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IOrganizer</span></code></a></p></td>
<td><p>Interface to class that provides information about the running session</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p></td>
<td><p>Base class for all plugins.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPluginDiagnose" title="mobase.IPluginDiagnose"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginDiagnose</span></code></a></p></td>
<td><p>Plugins that create problem reports to be displayed in the UI.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPluginFileMapper" title="mobase.IPluginFileMapper"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginFileMapper</span></code></a></p></td>
<td><p>Plugins that adds virtual file links.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPluginGame" title="mobase.IPluginGame"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginGame</span></code></a></p></td>
<td><p>Base classes for game plugins.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPluginInstaller" title="mobase.IPluginInstaller"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginInstaller</span></code></a></p></td>
<td><p>This is the top-level class for installer. Actual installers should inherit either:</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPluginInstallerCustom" title="mobase.IPluginInstallerCustom"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginInstallerCustom</span></code></a></p></td>
<td><p>Custom installer for mods. Custom installers receive the archive name and have to go</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPluginInstallerSimple" title="mobase.IPluginInstallerSimple"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginInstallerSimple</span></code></a></p></td>
<td><p>Simple installer for mods. Simple installers only deal with an in-memory structure</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPluginList" title="mobase.IPluginList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginList</span></code></a></p></td>
<td><p>Primary interface to the list of plugins.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPluginModPage" title="mobase.IPluginModPage"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginModPage</span></code></a></p></td>
<td><p>Base class for all plugins.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPluginPreview" title="mobase.IPluginPreview"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginPreview</span></code></a></p></td>
<td><p>These plugins add support for previewing files in the data pane. Right now all image formats supported</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginRequirement</span></code></a></p></td>
<td><p>Class representing requirements for plugins.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPluginTool" title="mobase.IPluginTool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginTool</span></code></a></p></td>
<td><p>This is the simplest of plugin interfaces. Such plugins simply place an icon inside the tools sub-menu</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IProfile</span></code></a></p></td>
<td><p>Interface to interact with Mod Organizer 2 profiles.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.ISaveGame" title="mobase.ISaveGame"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ISaveGame</span></code></a></p></td>
<td><p>Base class for information about what is in a save game.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.ISaveGameInfoWidget" title="mobase.ISaveGameInfoWidget"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ISaveGameInfoWidget</span></code></a></p></td>
<td><p>Base class for a save game info widget.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.InstallResult" title="mobase.InstallResult"><code class="xref py py-obj docutils literal notranslate"><span class="pre">InstallResult</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.LoadOrderMechanism" title="mobase.LoadOrderMechanism"><code class="xref py py-obj docutils literal notranslate"><span class="pre">LoadOrderMechanism</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.LocalSavegames" title="mobase.LocalSavegames"><code class="xref py py-obj docutils literal notranslate"><span class="pre">LocalSavegames</span></code></a></p></td>
<td><p>Base class for all game features, cannot be inherited, used only for typing</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.Mapping" title="mobase.Mapping"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Mapping</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.ModDataChecker" title="mobase.ModDataChecker"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ModDataChecker</span></code></a></p></td>
<td><p>Game feature that is used to check the content of a data tree.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.ModDataContent" title="mobase.ModDataContent"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ModDataContent</span></code></a></p></td>
<td><p>The ModDataContent feature is used (when available) to indicate to users the content</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.ModRepositoryFileInfo" title="mobase.ModRepositoryFileInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ModRepositoryFileInfo</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ModState</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.PluginRequirementFactory" title="mobase.PluginRequirementFactory"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PluginRequirementFactory</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.PluginSetting" title="mobase.PluginSetting"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PluginSetting</span></code></a></p></td>
<td><p>Class to hold the user-configurable parameters a plugin accepts. The purpose of this class is</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PluginState</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProfileSetting</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.ReleaseType" title="mobase.ReleaseType"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ReleaseType</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.SaveGameInfo" title="mobase.SaveGameInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">SaveGameInfo</span></code></a></p></td>
<td><p>Feature to get hold of stuff to do with save games.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.ScriptExtender" title="mobase.ScriptExtender"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ScriptExtender</span></code></a></p></td>
<td><p>Base class for all game features, cannot be inherited, used only for typing</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.SortMechanism" title="mobase.SortMechanism"><code class="xref py py-obj docutils literal notranslate"><span class="pre">SortMechanism</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.TrackedState" title="mobase.TrackedState"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TrackedState</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.UnmanagedMods" title="mobase.UnmanagedMods"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UnmanagedMods</span></code></a></p></td>
<td><p>Base class for all game features, cannot be inherited, used only for typing</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">VersionInfo</span></code></a></p></td>
<td><p>Represents the version of a mod or plugin.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.VersionScheme" title="mobase.VersionScheme"><code class="xref py py-obj docutils literal notranslate"><span class="pre">VersionScheme</span></code></a></p></td>
<td><p>Create a collection of name/value pairs.</p></td>
</tr>
</tbody>
</table>
</section>
<section id="functions">
<h2>Functions<a class="headerlink" href="#functions" title="Link to this heading"></a></h2>
<table class="autosummary longtable docutils align-default">
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.getFileVersion" title="mobase.getFileVersion"><code class="xref py py-obj docutils literal notranslate"><span class="pre">getFileVersion</span></code></a>(→ str)</p></td>
<td><p>Retrieve the file version of the given executable.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.getIconForExecutable" title="mobase.getIconForExecutable"><code class="xref py py-obj docutils literal notranslate"><span class="pre">getIconForExecutable</span></code></a>(→ PyQt6.QtGui.QIcon)</p></td>
<td><p>Retrieve the icon of an executable. Currently this always extracts the biggest icon.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.getProductVersion" title="mobase.getProductVersion"><code class="xref py py-obj docutils literal notranslate"><span class="pre">getProductVersion</span></code></a>(→ str)</p></td>
<td><p>Retrieve the product version of the given executable.</p></td>
</tr>
</tbody>
</table>
</section>
<section id="package-contents">
<h2>Package Contents<a class="headerlink" href="#package-contents" title="Link to this heading"></a></h2>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.BSAInvalidation">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">BSAInvalidation</span></span><a class="headerlink" href="#mobase.BSAInvalidation" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Base class for all game features, cannot be inherited, used only for typing
purpose in Python.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.BSAInvalidation.activate">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">activate</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.BSAInvalidation.activate" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.BSAInvalidation.deactivate">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">deactivate</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.BSAInvalidation.deactivate" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.BSAInvalidation.isInvalidationBSA">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isInvalidationBSA</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.BSAInvalidation.isInvalidationBSA" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.DataArchives">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">DataArchives</span></span><a class="headerlink" href="#mobase.DataArchives" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Base class for all game features, cannot be inherited, used only for typing
purpose in Python.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.DataArchives.addArchive">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">addArchive</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">index</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.DataArchives.addArchive" title="Link to this definition"></a></dt>
<dd><p>Add an archive to the archive list.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>profile</strong> Profile to add the archive to.</p></li>
<li><p><strong>index</strong> Index to insert before. Use 0 for the beginning of the list or INT_MAX for
the end of the list).</p></li>
<li><p><strong>name</strong> Name of the archive to add.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.DataArchives.archives">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">archives</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.DataArchives.archives" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of archives in the given profile.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>profile</strong> Profile to retrieve archives from.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of archives in the given profile.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.DataArchives.removeArchive">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">removeArchive</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.DataArchives.removeArchive" title="Link to this definition"></a></dt>
<dd><p>Remove the given archive from the given profile.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>profile</strong> Profile to remove the archive from.</p></li>
<li><p><strong>name</strong> Name of the archive to remove.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.DataArchives.vanillaArchives">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">vanillaArchives</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.DataArchives.vanillaArchives" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of vanilla archives.</p>
<p>Vanilla archives are archive files that are shipped with the original
game.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of vanilla archives.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.EndorsedState">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">EndorsedState</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.EndorsedState" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__ge__">
<span class="sig-name descname"><span class="pre">__ge__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.EndorsedState" title="mobase.EndorsedState"><span class="pre">EndorsedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__ge__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__gt__">
<span class="sig-name descname"><span class="pre">__gt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.EndorsedState" title="mobase.EndorsedState"><span class="pre">EndorsedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__gt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__le__">
<span class="sig-name descname"><span class="pre">__le__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.EndorsedState" title="mobase.EndorsedState"><span class="pre">EndorsedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__le__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__lt__">
<span class="sig-name descname"><span class="pre">__lt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.EndorsedState" title="mobase.EndorsedState"><span class="pre">EndorsedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__lt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.EndorsedState.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.EndorsedState.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.EndorsedState.ENDORSED_FALSE">
<span class="sig-name descname"><span class="pre">ENDORSED_FALSE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.EndorsedState.ENDORSED_FALSE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.EndorsedState.ENDORSED_NEVER">
<span class="sig-name descname"><span class="pre">ENDORSED_NEVER</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.EndorsedState.ENDORSED_NEVER" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.EndorsedState.ENDORSED_TRUE">
<span class="sig-name descname"><span class="pre">ENDORSED_TRUE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.EndorsedState.ENDORSED_TRUE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.EndorsedState.ENDORSED_UNKNOWN">
<span class="sig-name descname"><span class="pre">ENDORSED_UNKNOWN</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.EndorsedState.ENDORSED_UNKNOWN" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.EndorsedState.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.EndorsedState.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.EndorsedState.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.EndorsedState.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ExecutableForcedLoadSetting">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ExecutableForcedLoadSetting</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">process</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">library</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ExecutableForcedLoadSetting" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableForcedLoadSetting.enabled">
<span class="sig-name descname"><span class="pre">enabled</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ExecutableForcedLoadSetting.enabled" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableForcedLoadSetting.forced">
<span class="sig-name descname"><span class="pre">forced</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ExecutableForcedLoadSetting.forced" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableForcedLoadSetting.library">
<span class="sig-name descname"><span class="pre">library</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ExecutableForcedLoadSetting.library" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableForcedLoadSetting.process">
<span class="sig-name descname"><span class="pre">process</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ExecutableForcedLoadSetting.process" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableForcedLoadSetting.withEnabled">
<span class="sig-name descname"><span class="pre">withEnabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">enabled</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ExecutableForcedLoadSetting" title="mobase.ExecutableForcedLoadSetting"><span class="pre">ExecutableForcedLoadSetting</span></a></span></span><a class="headerlink" href="#mobase.ExecutableForcedLoadSetting.withEnabled" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableForcedLoadSetting.withForced">
<span class="sig-name descname"><span class="pre">withForced</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">forced</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ExecutableForcedLoadSetting" title="mobase.ExecutableForcedLoadSetting"><span class="pre">ExecutableForcedLoadSetting</span></a></span></span><a class="headerlink" href="#mobase.ExecutableForcedLoadSetting.withForced" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ExecutableInfo">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ExecutableInfo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">title</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">binary</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ExecutableInfo" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.arguments">
<span class="sig-name descname"><span class="pre">arguments</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.ExecutableInfo.arguments" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.asCustom">
<span class="sig-name descname"><span class="pre">asCustom</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ExecutableInfo" title="mobase.ExecutableInfo"><span class="pre">ExecutableInfo</span></a></span></span><a class="headerlink" href="#mobase.ExecutableInfo.asCustom" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.binary">
<span class="sig-name descname"><span class="pre">binary</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QFileInfo</span></span></span><a class="headerlink" href="#mobase.ExecutableInfo.binary" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.isCustom">
<span class="sig-name descname"><span class="pre">isCustom</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ExecutableInfo.isCustom" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.isValid">
<span class="sig-name descname"><span class="pre">isValid</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ExecutableInfo.isValid" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.steamAppID">
<span class="sig-name descname"><span class="pre">steamAppID</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ExecutableInfo.steamAppID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.title">
<span class="sig-name descname"><span class="pre">title</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ExecutableInfo.title" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.withArgument">
<span class="sig-name descname"><span class="pre">withArgument</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">argument</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ExecutableInfo" title="mobase.ExecutableInfo"><span class="pre">ExecutableInfo</span></a></span></span><a class="headerlink" href="#mobase.ExecutableInfo.withArgument" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.withSteamAppId">
<span class="sig-name descname"><span class="pre">withSteamAppId</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">app_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ExecutableInfo" title="mobase.ExecutableInfo"><span class="pre">ExecutableInfo</span></a></span></span><a class="headerlink" href="#mobase.ExecutableInfo.withSteamAppId" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.withWorkingDirectory">
<span class="sig-name descname"><span class="pre">withWorkingDirectory</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">directory</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ExecutableInfo" title="mobase.ExecutableInfo"><span class="pre">ExecutableInfo</span></a></span></span><a class="headerlink" href="#mobase.ExecutableInfo.withWorkingDirectory" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ExecutableInfo.workingDirectory">
<span class="sig-name descname"><span class="pre">workingDirectory</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QDir</span></span></span><a class="headerlink" href="#mobase.ExecutableInfo.workingDirectory" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.FileInfo">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">FileInfo</span></span><a class="headerlink" href="#mobase.FileInfo" title="Link to this definition"></a></dt>
<dd><p>Information about a virtualized file</p>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.FileInfo.archive">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">archive</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.FileInfo.archive" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.FileInfo.filePath">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">filePath</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.FileInfo.filePath" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.FileInfo.origins">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">origins</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></em><a class="headerlink" href="#mobase.FileInfo.origins" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.FileTreeEntry">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">FileTreeEntry</span></span><a class="headerlink" href="#mobase.FileTreeEntry" title="Link to this definition"></a></dt>
<dd><p>Represent an entry in a file tree, either a file or a directory. This class
inherited by IFileTree so that operations on entry are the same for a file or
a directory.</p>
<p>This class provides convenience methods to query information on the file, like its
name or the its last modification time. It also provides a convenience astree() method
that can be used to retrieve the tree corresponding to its entry in case the entry
represent a directory.</p>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">FileTypes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Enumeration of the different file type or combinations.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__and__">
<span class="sig-name descname"><span class="pre">__and__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__and__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__ge__">
<span class="sig-name descname"><span class="pre">__ge__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__ge__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__gt__">
<span class="sig-name descname"><span class="pre">__gt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__gt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__invert__">
<span class="sig-name descname"><span class="pre">__invert__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__invert__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__le__">
<span class="sig-name descname"><span class="pre">__le__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__le__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__lt__">
<span class="sig-name descname"><span class="pre">__lt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__lt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__or__">
<span class="sig-name descname"><span class="pre">__or__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__or__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__rand__">
<span class="sig-name descname"><span class="pre">__rand__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__rand__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__ror__">
<span class="sig-name descname"><span class="pre">__ror__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__ror__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__rxor__">
<span class="sig-name descname"><span class="pre">__rxor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__rxor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.__xor__">
<span class="sig-name descname"><span class="pre">__xor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.__xor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.DIRECTORY">
<span class="sig-name descname"><span class="pre">DIRECTORY</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.DIRECTORY" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.FILE">
<span class="sig-name descname"><span class="pre">FILE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.FILE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.FILE_OR_DIRECTORY">
<span class="sig-name descname"><span class="pre">FILE_OR_DIRECTORY</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.FILE_OR_DIRECTORY" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FileTypes.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.FileTreeEntry.FileTypes.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.detach">
<span class="sig-name descname"><span class="pre">detach</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.detach" title="Link to this definition"></a></dt>
<dd><p>Detach this entry from its parent tree.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the entry was removed correctly, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.fileType">
<span class="sig-name descname"><span class="pre">fileType</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.FileTreeEntry.fileType" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The filetype of this entry.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.hasSuffix">
<span class="sig-name descname"><span class="pre">hasSuffix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">suffixes</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.hasSuffix" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">hasSuffix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">suffix</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dd><p>Check if this entry has the given suffix.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>suffix</strong> Suffix to check.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if this entry is a file and has the given suffix.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.isDir">
<span class="sig-name descname"><span class="pre">isDir</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.isDir" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this entry is a directory, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.isFile">
<span class="sig-name descname"><span class="pre">isFile</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.isFile" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this entry is a file, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.moveTo">
<span class="sig-name descname"><span class="pre">moveTo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.moveTo" title="Link to this definition"></a></dt>
<dd><p>Move this entry to the given tree.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>tree</strong> The tree to move this entry to.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the entry was moved correctly, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.name">
<span class="sig-name descname"><span class="pre">name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.name" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of this entry.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.parent">
<span class="sig-name descname"><span class="pre">parent</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.parent" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The parent tree containing this entry, or a <cite>None</cite> if this entry is the root</p>
</dd>
</dl>
<p>or the parent tree is unreachable.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.path">
<span class="sig-name descname"><span class="pre">path</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sep</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'\\'</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.path" title="Link to this definition"></a></dt>
<dd><p>Retrieve the path from this entry up to the root of the tree.</p>
<p>This method propagate up the tree so is not constant complexity as
the full path is never stored.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>sep</strong> The type of separator to use to create the path.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The path from this entry to the root, including the name of this entry.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.pathFrom">
<span class="sig-name descname"><span class="pre">pathFrom</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">sep</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'\\'</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.pathFrom" title="Link to this definition"></a></dt>
<dd><p>Retrieve the path from the given tree to this entry.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>tree</strong> The tree to reach, must be a parent of this entry.</p></li>
<li><p><strong>sep</strong> The type of separator to use to create the path.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The path from the given tree to this entry, including the name of this entry, or</p>
</dd>
</dl>
<p>an empty string if the given tree is not a parent of this entry.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.suffix">
<span class="sig-name descname"><span class="pre">suffix</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.FileTreeEntry.suffix" title="Link to this definition"></a></dt>
<dd><p>Retrieve the “last” extension of this entry.</p>
<p>The “last” extension is everything after the last dot in the file name.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The last extension of this entry, or an empty string if the file has no extension</p>
</dd>
</dl>
<p>or is directory.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.DIRECTORY">
<span class="sig-name descname"><span class="pre">DIRECTORY</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.FileTreeEntry.FileTypes" title="mobase.FileTreeEntry.FileTypes"><span class="pre">FileTreeEntry.FileTypes</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.FileTreeEntry.DIRECTORY" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FILE">
<span class="sig-name descname"><span class="pre">FILE</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.FileTreeEntry.FileTypes" title="mobase.FileTreeEntry.FileTypes"><span class="pre">FileTreeEntry.FileTypes</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.FileTreeEntry.FILE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.FileTreeEntry.FILE_OR_DIRECTORY">
<span class="sig-name descname"><span class="pre">FILE_OR_DIRECTORY</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.FileTreeEntry.FileTypes" title="mobase.FileTreeEntry.FileTypes"><span class="pre">FileTreeEntry.FileTypes</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.FileTreeEntry.FILE_OR_DIRECTORY" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.GameFeature">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">GameFeature</span></span><a class="headerlink" href="#mobase.GameFeature" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">abc.ABC</span></code></p>
<p>Base class for all game features, cannot be inherited, used only for typing
purpose in Python.</p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.GamePlugins">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">GamePlugins</span></span><a class="headerlink" href="#mobase.GamePlugins" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Base class for all game features, cannot be inherited, used only for typing
purpose in Python.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GamePlugins.getLoadOrder">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getLoadOrder</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.GamePlugins.getLoadOrder" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GamePlugins.lightPluginsAreSupported">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">lightPluginsAreSupported</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.GamePlugins.lightPluginsAreSupported" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if light plugins are supported, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GamePlugins.mediumPluginsAreSupported">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">mediumPluginsAreSupported</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.GamePlugins.mediumPluginsAreSupported" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if medium plugins are supported, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GamePlugins.readPluginLists">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">readPluginLists</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_list</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IPluginList" title="mobase.IPluginList"><span class="pre">IPluginList</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.GamePlugins.readPluginLists" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GamePlugins.writePluginLists">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">writePluginLists</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_list</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IPluginList" title="mobase.IPluginList"><span class="pre">IPluginList</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.GamePlugins.writePluginLists" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.GuessQuality">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">GuessQuality</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.GuessQuality" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Describes how good the code considers a guess (i.e. for a mod name) this is used to
determine if a name from another source should overwrite or not.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessQuality.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.GuessQuality.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessQuality.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.GuessQuality.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessQuality.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.GuessQuality.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessQuality.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.GuessQuality.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.GuessQuality.FALLBACK">
<span class="sig-name descname"><span class="pre">FALLBACK</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.GuessQuality.FALLBACK" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.GuessQuality.GOOD">
<span class="sig-name descname"><span class="pre">GOOD</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.GuessQuality.GOOD" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.GuessQuality.INVALID">
<span class="sig-name descname"><span class="pre">INVALID</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.GuessQuality.INVALID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.GuessQuality.META">
<span class="sig-name descname"><span class="pre">META</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.GuessQuality.META" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.GuessQuality.PRESET">
<span class="sig-name descname"><span class="pre">PRESET</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.GuessQuality.PRESET" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.GuessQuality.USER">
<span class="sig-name descname"><span class="pre">USER</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.GuessQuality.USER" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.GuessQuality.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.GuessQuality.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.GuessQuality.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.GuessQuality.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.GuessedString">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">GuessedString</span></span><a class="headerlink" href="#mobase.GuessedString" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">GuessedString</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">quality</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessQuality" title="mobase.GuessQuality"><span class="pre">GuessQuality</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">GuessQuality.USER</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Represents a string that may be set from different places. Each time the value is
changed a “quality” is specified to say how probable it is the value is the best choice.
Only the best choice should be used in the end but alternatives can be queried. This
class also allows a filter to be set. If a “guess” doesnt pass the filter, it is ignored.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessedString.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.GuessedString.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessedString.reset">
<span class="sig-name descname"><span class="pre">reset</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></span><a class="headerlink" href="#mobase.GuessedString.reset" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">reset</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">quality</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessQuality" title="mobase.GuessQuality"><span class="pre">GuessQuality</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></span></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">reset</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></span></dt>
<dd><p>Reset this GuessedString object by copying the given one, only
if the given one has better quality.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>other</strong> The GuessedString to copy.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>This GuessedString object.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessedString.setFilter">
<span class="sig-name descname"><span class="pre">setFilter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filter</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.GuessedString.setFilter" title="Link to this definition"></a></dt>
<dd><p>Set the filter for this GuessedString.</p>
<p>The filter is applied on every <cite>update()</cite> and can reject the new value
altogether or modify it (by returning a new value).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filter</strong> The new filter.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessedString.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></span><a class="headerlink" href="#mobase.GuessedString.update" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">quality</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessQuality" title="mobase.GuessQuality"><span class="pre">GuessQuality</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></span></dt>
<dd><p>Update this GuessedString by adding a new variants with the given quality.</p>
<p>If the specified quality is better than the current one, the actual value of
the GuessedString is also updated.</p>
<p>The GuessedString is only updated if the given value passes the filter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>value</strong> The new variant to add.</p></li>
<li><p><strong>quality</strong> The quality of the variant.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>This GuessedString object.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.GuessedString.variants">
<span class="sig-name descname"><span class="pre">variants</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">set</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.GuessedString.variants" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of variants for this GuessedString.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IDownloadManager">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IDownloadManager</span></span><a class="headerlink" href="#mobase.IDownloadManager" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.IDownloadManager.downloadPath">
<span class="sig-name descname"><span class="pre">downloadPath</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IDownloadManager.downloadPath" title="Link to this definition"></a></dt>
<dd><p>Retrieve the (absolute) path of the specified download.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>id</strong> ID of the download.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The absolute path to the file corresponding to the given download. This file</p>
</dd>
</dl>
<p>may not exist yet if the download is incomplete.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IDownloadManager.onDownloadComplete">
<span class="sig-name descname"><span class="pre">onDownloadComplete</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IDownloadManager.onDownloadComplete" title="Link to this definition"></a></dt>
<dd><p>Installs a handler to be called when a download completes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to be called when a download complete. The parameter is the download ID.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IDownloadManager.onDownloadFailed">
<span class="sig-name descname"><span class="pre">onDownloadFailed</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IDownloadManager.onDownloadFailed" title="Link to this definition"></a></dt>
<dd><p>Installs a handler to be called when a download fails.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to be called when a download fails. The parameter is the download ID.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IDownloadManager.onDownloadPaused">
<span class="sig-name descname"><span class="pre">onDownloadPaused</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IDownloadManager.onDownloadPaused" title="Link to this definition"></a></dt>
<dd><p>Installs a handler to be called when a download is paused.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to be called when a download is paused. The parameter is the download ID.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IDownloadManager.onDownloadRemoved">
<span class="sig-name descname"><span class="pre">onDownloadRemoved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IDownloadManager.onDownloadRemoved" title="Link to this definition"></a></dt>
<dd><p>Installs a handler to be called when a download is removed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to be called when a download is removed. The parameter is the download ID.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IDownloadManager.startDownloadNexusFile">
<span class="sig-name descname"><span class="pre">startDownloadNexusFile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">file_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IDownloadManager.startDownloadNexusFile" title="Link to this definition"></a></dt>
<dd><p>Download a file from www.nexusmods.com/&lt;game&gt;. &lt;game&gt; is always the game
currently being managed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mod_id</strong> ID of the mod to download the file from.</p></li>
<li><p><strong>file_id</strong> ID of the file to download.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An ID identifying the download.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IDownloadManager.startDownloadURLs">
<span class="sig-name descname"><span class="pre">startDownloadURLs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">urls</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IDownloadManager.startDownloadURLs" title="Link to this definition"></a></dt>
<dd><p>Download a file by url.</p>
<p>The list can contain alternative URLs to allow the download manager to switch
in case of download problems</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>urls</strong> List of urls to download from.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An ID identifying the download.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IFileTree">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IFileTree</span></span><a class="headerlink" href="#mobase.IFileTree" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FileTreeEntry</span></code></a></p>
<p>Interface to classes that provides way to visualize and alter file trees. The tree
may not correspond to an actual file tree on the disk (e.g., inside an archive,
from a QTree Widget, …).</p>
<p>Read-only operations on the tree are thread-safe, even when the tree has not been populated
yet.</p>
<p>In order to prevent wrong usage of the tree, implementing classes may throw
UnsupportedOperationException if an operation is not supported. By default, all operations
are supported, but some may not make sense in many situations.</p>
<p>The goal of this is not reflect the change made to a IFileTree to the disk, but child
classes may override relevant methods to do so.</p>
<p>The tree is built upon FileTreeEntry. A given tree holds shared pointers to its entries
while each entry holds a weak pointer to its parent, this means that the descending link
are strong (shared pointers) but the uplink are weak.</p>
<p>Accessing the parent is always done by locking the weak pointer so that returned pointer
or either null or valid. This structure implies that as long as the initial root lives,
entry should not be destroyed, unless the entry are detached from the root and no shared
pointers are kept.</p>
<p>However, it is not guarantee that one can go up the tree from a single node entry. If the
root node is destroyed, it will not be possible to go up the tree, even if we still have
a valid shared pointer.</p>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">InsertPolicy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IFileTree.InsertPolicy" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.FAIL_IF_EXISTS">
<span class="sig-name descname"><span class="pre">FAIL_IF_EXISTS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.FAIL_IF_EXISTS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.MERGE">
<span class="sig-name descname"><span class="pre">MERGE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.MERGE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.REPLACE">
<span class="sig-name descname"><span class="pre">REPLACE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.REPLACE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.IFileTree.InsertPolicy.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.IFileTree.InsertPolicy.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">WalkReturn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IFileTree.WalkReturn" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Enumeration that can be returned by the callback for the <cite>walk()</cite> method to stop the
walking operation early.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.WalkReturn.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IFileTree.WalkReturn.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.WalkReturn.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IFileTree.WalkReturn.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.CONTINUE">
<span class="sig-name descname"><span class="pre">CONTINUE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.WalkReturn.CONTINUE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.SKIP">
<span class="sig-name descname"><span class="pre">SKIP</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.WalkReturn.SKIP" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.STOP">
<span class="sig-name descname"><span class="pre">STOP</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.WalkReturn.STOP" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.IFileTree.WalkReturn.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.IFileTree.WalkReturn.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.IFileTree.WalkReturn.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.__bool__">
<span class="sig-name descname"><span class="pre">__bool__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.__bool__" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this tree is not empty, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.__getitem__">
<span class="sig-name descname"><span class="pre">__getitem__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">index</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.IFileTree.__getitem__" title="Link to this definition"></a></dt>
<dd><p>Retrieve the entry at the given index in this tree.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>index</strong> Index of the entry to retrieve, must be less than the size.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The entry at the given index.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>IndexError</strong> If the given index is not in range for this tree.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.__iter__">
<span class="sig-name descname"><span class="pre">__iter__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Iterator</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IFileTree.__iter__" title="Link to this definition"></a></dt>
<dd><p>Retrieves an iterator for entries directly under this tree.</p>
<p>This method does not recurse into subtrees, see <cite>walk()</cite> for this.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>An iterator object that can be used to iterate over entries in this tree.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.__len__">
<span class="sig-name descname"><span class="pre">__len__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IFileTree.__len__" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The number of entries directly under this tree.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.addDirectory">
<span class="sig-name descname"><span class="pre">addDirectory</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></span><a class="headerlink" href="#mobase.IFileTree.addDirectory" title="Link to this definition"></a></dt>
<dd><p>Create a new directory tree under this tree.</p>
<p>This method will create missing folders in the given path and will
not fail if the directory already exists but will fail if the given
path contains “.” or “..”.
This method invalidates iterators to this tree and all the subtrees
present in the given path.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>path</strong> Path to the directory to create.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An IFileTree corresponding to the created directory.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>RuntimeError</strong> If the directory could not be created.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.addFile">
<span class="sig-name descname"><span class="pre">addFile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">replace_if_exists</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.IFileTree.addFile" title="Link to this definition"></a></dt>
<dd><p>Create a new file directly under this tree.</p>
<p>This method will fail if the file already exists and <cite>replace_if_exists</cite> is <cite>False</cite>.
This method invalidates iterators to this tree and all the subtrees present in the
given path.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> Path to the file to create.</p></li>
<li><p><strong>replace_if_exists</strong> If True and an entry already exists at the given location, it will be replaced by
a new entry. This will replace both files and directories.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A FileTreeEntry corresponding to the created file.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>RuntimeError</strong> If the file could not be created.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.clear">
<span class="sig-name descname"><span class="pre">clear</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.clear" title="Link to this definition"></a></dt>
<dd><p>Delete (detach) all the entries from this tree.</p>
<p>This method will go through the entries in this tree and stop at the first
entry that cannot be deleted, this means that the tree can be partially cleared.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if all entries have been detached, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.copy">
<span class="sig-name descname"><span class="pre">copy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entry</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">insert_policy</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">InsertPolicy.FAIL_IF_EXISTS</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></span><a class="headerlink" href="#mobase.IFileTree.copy" title="Link to this definition"></a></dt>
<dd><p>Move the given entry to the given path under this tree.</p>
<p>The entry must not be a parent tree of this tree. This method can also be used
to rename entries.</p>
<p>If the insert policy if FAIL_IF_EXISTS, the call will fail if an entry
at the same location already exists. If the policy is REPLACE, an existing
entry will be replaced. If MERGE, the entry will be merged with the existing
one (if the entry is a file, and a file exists, the file will be replaced).</p>
<p>This method invalidates iterator to this tree, to the parent tree of the given
entry, and to subtrees of this tree if the insert policy is MERGE.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entry</strong> Entry to copy.</p></li>
<li><p><strong>path</strong> The path to copy the entry to. If the path ends with / or , the entry will
be copied in the corresponding directory instead of replacing it. If the
given path is empty (<cite>“”</cite>), the entry is copied directly under this tree.</p></li>
<li><p><strong>insert_policy</strong> Policy to use to resolve conflicts.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The new entry (copy of the specified entry).</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>RuntimeError</strong> If the entry could not be copied.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.createOrphanTree">
<span class="sig-name descname"><span class="pre">createOrphanTree</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></span><a class="headerlink" href="#mobase.IFileTree.createOrphanTree" title="Link to this definition"></a></dt>
<dd><p>Create a new orphan empty tree.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Name of the tree.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A new tree without any parent.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.exists">
<span class="sig-name descname"><span class="pre">exists</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">type</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">FileTreeEntry.FileTypes.FILE_OR_DIRECTORY</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.exists" title="Link to this definition"></a></dt>
<dd><p>Check if the given entry exists.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> Path to the entry, separated by / or .</p></li>
<li><p><strong>type</strong> The type of the entry to check.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the entry was found, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.find">
<span class="sig-name descname"><span class="pre">find</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">type</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">FileTreeEntry.FileTypes.FILE_OR_DIRECTORY</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IFileTree.find" title="Link to this definition"></a></dt>
<dd><p>Retrieve the given entry.</p>
<p>If no entry exists at the given path, or if the entry is not of the right
type, <cite>None</cite> is returned.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> Path to the entry, separated by / or .</p></li>
<li><p><strong>type</strong> The type of the entry to check.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The entry at the given location, or <cite>None</cite> if the entry was not found or</p>
</dd>
</dl>
<p>was not of the correct type.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.insert">
<span class="sig-name descname"><span class="pre">insert</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entry</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">policy</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">InsertPolicy.FAIL_IF_EXISTS</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.insert" title="Link to this definition"></a></dt>
<dd><p>Insert the given entry in this tree, removing it from its
previous parent.</p>
<p>The entry must not be this tree or a parent entry of this tree.</p>
<blockquote>
<div><ul class="simple">
<li><p>If the insert policy if <cite>FAIL_IF_EXISTS</cite>, the call will fail if an entry
with the same name already exists.</p></li>
<li><p>If the policy is <cite>REPLACE</cite>, an existing entry will be replaced by the given entry.</p></li>
<li><p>If the policy is <cite>MERGE</cite>:</p>
<ul>
<li><p>If there is no entry with the same name, the new entry is inserted.</p></li>
<li><p>If there is an entry with the same name:</p>
<ul>
<li><p>If both entries are files, the old file is replaced by the given entry.</p></li>
<li><p>If both entries are directories, a merge is performed as if using merge().</p></li>
<li><p>Otherwise the insertion fails (two entries with different types).</p></li>
</ul>
</li>
</ul>
</li>
</ul>
</div></blockquote>
<p>This method invalidates iterator to this tree, to the parent tree of the given
entry, and to subtrees of this tree if the insert policy is MERGE.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entry</strong> Entry to insert.</p></li>
<li><p><strong>policy</strong> Policy to use to resolve conflicts.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the entry was insert, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.merge">
<span class="sig-name descname"><span class="pre">merge</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">overwrites</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">dict</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IFileTree.merge" title="Link to this definition"></a></dt>
<dd><p>Merge the given tree with this tree, i.e., insert all entries
of the given tree into this tree.</p>
<p>The tree must not be this tree or a parent entry of this tree. Files present in both tree
will be replaced by files in the given tree. After a merge, the source tree will be
empty but still attached to its parent.</p>
<p>If <cite>overwrites</cite> is <cite>True</cite>, a map from overridden files to new files will be returned.</p>
<p>Note that the merge process makes no distinction between files and directories
when merging: if a directory is present in this tree and a file from source
is in conflict with it, the tree will be removed and the file inserted; if a file
is in this tree and a directory from source is in conflict with it, the file will
be replaced with the directory.</p>
<p>This method invalidates iterators to this tree, all the subtrees under this tree
present in the given path, and all the subtrees of the given source.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>other</strong> Tree to merge.</p></li>
<li><p><strong>overwrites</strong> If True, a mapping from overridden files to new files will be returned.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>If <cite>overwrites</cite> is True, a mapping from overridden files to new files, otherwise</p>
</dd>
</dl>
<p>the number of overwritten entries.</p>
<dl class="field-list simple">
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>RuntimeError</strong> If the merge failed.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.move">
<span class="sig-name descname"><span class="pre">move</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entry</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">policy</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">InsertPolicy.FAIL_IF_EXISTS</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.move" title="Link to this definition"></a></dt>
<dd><p>Move the given entry to the given path under this tree.</p>
<p>The entry must not be a parent tree of this tree. This method can also be used
to rename entries.</p>
<p>If the insert policy if FAIL_IF_EXISTS, the call will fail if an entry
at the same location already exists. If the policy is REPLACE, an existing
entry will be replaced. If MERGE, the entry will be merged with the existing
one (if the entry is a file, and a file exists, the file will be replaced).</p>
<p>This method invalidates iterator to this tree, to the parent tree of the given
entry, and to subtrees of this tree if the insert policy is MERGE.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entry</strong> Entry to move.</p></li>
<li><p><strong>path</strong> The path to move the entry to. If the path ends with / or , the entry will
be inserted in the corresponding directory instead of replacing it. If the
given path is empty (<cite>“”</cite>), this is equivalent to <cite>insert()</cite>.</p></li>
<li><p><strong>policy</strong> Policy to use to resolve conflicts.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the entry was moved correctly, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.pathTo">
<span class="sig-name descname"><span class="pre">pathTo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entry</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">sep</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'\\'</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IFileTree.pathTo" title="Link to this definition"></a></dt>
<dd><p>Retrieve the path from this tree to the given entry.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entry</strong> The entry to reach, must be in this tree.</p></li>
<li><p><strong>sep</strong> The type of separator to use to create the path.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The path from this tree to the given entry, including the name of the entry, or</p>
</dd>
</dl>
<p>an empty string if the given entry was not found under this tree.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.remove">
<span class="sig-name descname"><span class="pre">remove</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IFileTree.remove" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">remove</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entry</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dd><p>Delete the given entry.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>entry</strong> Entry to delete. The entry must belongs to this tree (and not to a subtree).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the entry was deleted, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.removeAll">
<span class="sig-name descname"><span class="pre">removeAll</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">names</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IFileTree.removeAll" title="Link to this definition"></a></dt>
<dd><p>Delete the entries with the given names from the tree.</p>
<p>This method does not recurse into subtrees, so only entries accessible
directly from this tree will be removed. This method invalidates iterators.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>names</strong> Names of the entries to delete.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The number of deleted entry.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.removeIf">
<span class="sig-name descname"><span class="pre">removeIf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filter</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IFileTree.removeIf" title="Link to this definition"></a></dt>
<dd><p>Delete entries matching the given predicate from the tree.</p>
<p>This method does not recurse into subtrees, so only entries accessible
directly from this tree will be removed. This method invalidates iterators.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filter</strong> Predicate that should return true for entries to delete.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The number of deleted entry.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IFileTree.walk">
<span class="sig-name descname"><span class="pre">walk</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sep</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'\\'</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IFileTree.walk" title="Link to this definition"></a></dt>
<dd><p>Walk this tree, calling the given function for each entry in it.</p>
<p>The given callback will be called with two parameters: the path from this tree to the given entry
(with a trailing separator, not including the entry name), and the actual entry. The method returns
a <cite>WalkReturn</cite> object to indicates what to do.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>callback</strong> Method to call for each entry in the tree.</p></li>
<li><p><strong>sep</strong> Type of separator to use to construct the path.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.CONTINUE">
<span class="sig-name descname"><span class="pre">CONTINUE</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree.WalkReturn" title="mobase.IFileTree.WalkReturn"><span class="pre">IFileTree.WalkReturn</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.CONTINUE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.FAIL_IF_EXISTS">
<span class="sig-name descname"><span class="pre">FAIL_IF_EXISTS</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree.InsertPolicy" title="mobase.IFileTree.InsertPolicy"><span class="pre">IFileTree.InsertPolicy</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.FAIL_IF_EXISTS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.MERGE">
<span class="sig-name descname"><span class="pre">MERGE</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree.InsertPolicy" title="mobase.IFileTree.InsertPolicy"><span class="pre">IFileTree.InsertPolicy</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.MERGE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.REPLACE">
<span class="sig-name descname"><span class="pre">REPLACE</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree.InsertPolicy" title="mobase.IFileTree.InsertPolicy"><span class="pre">IFileTree.InsertPolicy</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.REPLACE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.SKIP">
<span class="sig-name descname"><span class="pre">SKIP</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree.WalkReturn" title="mobase.IFileTree.WalkReturn"><span class="pre">IFileTree.WalkReturn</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.SKIP" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IFileTree.STOP">
<span class="sig-name descname"><span class="pre">STOP</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree.WalkReturn" title="mobase.IFileTree.WalkReturn"><span class="pre">IFileTree.WalkReturn</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IFileTree.STOP" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IGameFeatures">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IGameFeatures</span></span><a class="headerlink" href="#mobase.IGameFeatures" title="Link to this definition"></a></dt>
<dd><p>Interface for the game features, accessible through IOrganizer.gameFeatures().</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IGameFeatures.gameFeature">
<span class="sig-name descname"><span class="pre">gameFeature</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">feature_type</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Type</span><span class="p"><span class="pre">[</span></span><span class="pre">GameFeatureType</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">GameFeatureType</span></span></span><a class="headerlink" href="#mobase.IGameFeatures.gameFeature" title="Link to this definition"></a></dt>
<dd><p>Retrieve the given game feature, if one exists.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>feature_type</strong> The class of feature to retrieve.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The game feature corresponding to the given type, or <cite>None</cite> if the feature is</p>
</dd>
</dl>
<p>not available.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IGameFeatures.registerFeature">
<span class="sig-name descname"><span class="pre">registerFeature</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">games</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">feature</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><span class="pre">GameFeature</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">priority</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">replace</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IGameFeatures.registerFeature" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">registerFeature</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IPluginGame" title="mobase.IPluginGame"><span class="pre">IPluginGame</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">feature</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><span class="pre">GameFeature</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">priority</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">replace</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">registerFeature</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">feature</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><span class="pre">GameFeature</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">priority</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">replace</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dd><p>Register game feature for all games.</p>
<p>This method register a game feature to combine or replace with other features
of the same kind. Some features are merged (e.g., ModDataContent,
ModDataChecker), while other override previous features (e.g., SaveGameInfo).</p>
<p>For features that can be combined, the priority argument indicates the order of
priority (e.g., the order of the checks for ModDataChecker). For other features,
the feature with the highest priority will be used. The features provided by the
game plugin itself always have lowest priority.</p>
<p>The feature is associated to the plugin that registers it, if the plugin is
disabled, the feature will not be available.</p>
<p>This function will return True if the feature was registered, even if the
feature is not used du to its low priority.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>feature</strong> Game feature to register.</p></li>
<li><p><strong>priority</strong> Priority of the game feature. If the plugin registering the feature
is a game plugin, this parameter is ignored.</p></li>
<li><p><strong>replace</strong> If True, remove features of the same kind registered by the current plugin,
otherwise add the feature alongside existing ones.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the game feature was properly registered, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IGameFeatures.unregisterFeature">
<span class="sig-name descname"><span class="pre">unregisterFeature</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">feature</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><span class="pre">GameFeature</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IGameFeatures.unregisterFeature" title="Link to this definition"></a></dt>
<dd><p>Unregister the given game feature.</p>
<p>This function is safe to use even if the given feature was never registered.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>feature</strong> Feature to unregister.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the feature was successfully unregistered, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IGameFeatures.unregisterFeatures">
<span class="sig-name descname"><span class="pre">unregisterFeatures</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">feature_type</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Type</span><span class="p"><span class="pre">[</span></span><span class="pre">GameFeatureType</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IGameFeatures.unregisterFeatures" title="Link to this definition"></a></dt>
<dd><p>Unregister all features of the given type registered by the calling plugin.</p>
<p>This function is safe to use even if the plugin has no feature of the given type
register.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>feature_type</strong> The class of feature to unregister.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The number of unregistered features.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IInstallationManager">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IInstallationManager</span></span><a class="headerlink" href="#mobase.IInstallationManager" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.IInstallationManager.createFile">
<span class="sig-name descname"><span class="pre">createFile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entry</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IInstallationManager.createFile" title="Link to this definition"></a></dt>
<dd><p>Create a new file on the disk corresponding to the given entry.</p>
<p>This method can be used by installer that needs to create files that are not in the original
archive. At the end of the installation, if there are entries in the final tree that were used
to create files, the corresponding files will be moved to the mod folder.</p>
<p>Temporary files corresponding to created files are automatically cleaned up at the end of
the installation.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>entry</strong> The entry for which a temporary file should be created.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The path to the created file, or an empty string if the file could not be created.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IInstallationManager.extractFile">
<span class="sig-name descname"><span class="pre">extractFile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entry</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">silent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IInstallationManager.extractFile" title="Link to this definition"></a></dt>
<dd><p>Extract the specified file from the currently opened archive to a temporary
location.</p>
<p>This method cannot be used to extract directory.</p>
<p>The call will fail with an exception if no archive is open (plugins deriving from
IPluginInstallerSimple can rely on that, custom installers should not). The temporary
file is automatically cleaned up after the installation. This call can be very slow
if the archive is large and “solid”.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entry</strong> Entry corresponding to the file to extract.</p></li>
<li><p><strong>silent</strong> If true, the dialog showing extraction progress will not be shown.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The absolute path to the temporary file, or an empty string if the file was not extracted.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IInstallationManager.extractFiles">
<span class="sig-name descname"><span class="pre">extractFiles</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entries</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.FileTreeEntry" title="mobase.FileTreeEntry"><span class="pre">FileTreeEntry</span></a><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">silent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IInstallationManager.extractFiles" title="Link to this definition"></a></dt>
<dd><p>Extract the specified files from the currently opened archive to a temporary
location.</p>
<p>This method cannot be used to extract directories.</p>
<p>The call will fail with an exception if no archive is open (plugins deriving from
IPluginInstallerSimple can rely on that, custom installers should not). The temporary
files are automatically cleaned up after the installation. This call can be very slow
if the archive is large and “solid”.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entries</strong> Entries corresponding to the files to extract.</p></li>
<li><p><strong>silent</strong> If true, the dialog showing extraction progress will not be shown.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A list containing absolute paths to the temporary files.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IInstallationManager.getSupportedExtensions">
<span class="sig-name descname"><span class="pre">getSupportedExtensions</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IInstallationManager.getSupportedExtensions" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The extensions of archives supported by this installation manager.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IInstallationManager.installArchive">
<span class="sig-name descname"><span class="pre">installArchive</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">archive</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.InstallResult" title="mobase.InstallResult"><span class="pre">InstallResult</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IInstallationManager.installArchive" title="Link to this definition"></a></dt>
<dd><p>Install the given archive.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mod_name</strong> Suggested name of the mod.</p></li>
<li><p><strong>archive</strong> Path to the archive to install.</p></li>
<li><p><strong>mod_id</strong> ID of the mod, if available.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The result of the installation.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IModInterface">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IModInterface</span></span><a class="headerlink" href="#mobase.IModInterface" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.absolutePath">
<span class="sig-name descname"><span class="pre">absolutePath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.absolutePath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>Absolute path to the mod to be used in file system operations.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.addCategory">
<span class="sig-name descname"><span class="pre">addCategory</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.addCategory" title="Link to this definition"></a></dt>
<dd><p>Assign a category to the mod. If the named category does not exist it is created.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Name of the new category to assign.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.addNexusCategory">
<span class="sig-name descname"><span class="pre">addNexusCategory</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">category_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.addNexusCategory" title="Link to this definition"></a></dt>
<dd><p>Set the category id from a nexus category id. Conversion to MO ID happens internally.</p>
<p>If a mapping is not possible, the category is set to the default value.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>category_id</strong> The Nexus category ID.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.categories">
<span class="sig-name descname"><span class="pre">categories</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IModInterface.categories" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of categories this mod belongs to.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.clearPluginSettings">
<span class="sig-name descname"><span class="pre">clearPluginSettings</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">MoVariant</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IModInterface.clearPluginSettings" title="Link to this definition"></a></dt>
<dd><p>Remove all the settings of the specified plugin this mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>plugin_name</strong> Name of the plugin for which settings should be removed. This should always be <cite>IPlugin.name()</cite>
unless you have a really good reason to access settings of another plugin.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The old settings from the given plugin, as returned by <cite>pluginSettings()</cite>.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.color">
<span class="sig-name descname"><span class="pre">color</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtGui.QColor</span></span></span><a class="headerlink" href="#mobase.IModInterface.color" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The color of the Notes column chosen by the user.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.comments">
<span class="sig-name descname"><span class="pre">comments</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.comments" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The comments for this mod, if any.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.converted">
<span class="sig-name descname"><span class="pre">converted</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.converted" title="Link to this definition"></a></dt>
<dd><p>Check if the mod was marked as converted by the user.</p>
<p>When a mod is for a different game, a flag is shown to users to warn them, but
they can mark mods as converted to remove this flag.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this mod was marked as converted by the user.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.endorsedState">
<span class="sig-name descname"><span class="pre">endorsedState</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.EndorsedState" title="mobase.EndorsedState"><span class="pre">EndorsedState</span></a></span></span><a class="headerlink" href="#mobase.IModInterface.endorsedState" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The endorsement state of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.fileTree">
<span class="sig-name descname"><span class="pre">fileTree</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></span><a class="headerlink" href="#mobase.IModInterface.fileTree" title="Link to this definition"></a></dt>
<dd><p>Retrieve a file tree corresponding to the underlying disk content of this mod.</p>
<p>The file tree should not be cached by plugins since it is already and updated when
required.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A file tree representing the content of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.gameName">
<span class="sig-name descname"><span class="pre">gameName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.gameName" title="Link to this definition"></a></dt>
<dd><p>Retrieve the short name of the game associated with this mod. This may differ
from the current game plugin (e.g. you can install a Skyrim LE game in a SSE
installation).</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the game associated with this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.ignoredVersion">
<span class="sig-name descname"><span class="pre">ignoredVersion</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></span><a class="headerlink" href="#mobase.IModInterface.ignoredVersion" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The ignored version of this mod (for update), or an invalid version if the user</p>
</dd>
</dl>
<p>did not ignore version for this mod.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.installationFile">
<span class="sig-name descname"><span class="pre">installationFile</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.installationFile" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The absolute path to the file that was used to install this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.isBackup">
<span class="sig-name descname"><span class="pre">isBackup</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.isBackup" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this mod represents a backup.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.isForeign">
<span class="sig-name descname"><span class="pre">isForeign</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.isForeign" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this mod represents a foreign mod, not managed by MO2.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.isOverwrite">
<span class="sig-name descname"><span class="pre">isOverwrite</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.isOverwrite" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this mod represents the overwrite mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.isSeparator">
<span class="sig-name descname"><span class="pre">isSeparator</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.isSeparator" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this mod represents a separator.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.name">
<span class="sig-name descname"><span class="pre">name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.name" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.newestVersion">
<span class="sig-name descname"><span class="pre">newestVersion</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></span><a class="headerlink" href="#mobase.IModInterface.newestVersion" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The newest version of this mod (as known by MO2). If this matches version(),</p>
</dd>
</dl>
<p>then the mod is up-to-date.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.nexusId">
<span class="sig-name descname"><span class="pre">nexusId</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IModInterface.nexusId" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The Nexus ID of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.notes">
<span class="sig-name descname"><span class="pre">notes</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.notes" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The notes for this mod, if any.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.pluginSetting">
<span class="sig-name descname"><span class="pre">pluginSetting</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">MoVariant</span></span></span><a class="headerlink" href="#mobase.IModInterface.pluginSetting" title="Link to this definition"></a></dt>
<dd><p>Retrieve the specified setting in this mod for a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>plugin_name</strong> Name of the plugin for which to retrieve a setting. This should always be <cite>IPlugin.name()</cite>
unless you have a really good reason to access settings of another plugin.</p></li>
<li><p><strong>key</strong> Identifier of the setting.</p></li>
<li><p><strong>default</strong> The default value to return if the setting does not exist.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The setting, if found, or the default value.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.pluginSettings">
<span class="sig-name descname"><span class="pre">pluginSettings</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">MoVariant</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IModInterface.pluginSettings" title="Link to this definition"></a></dt>
<dd><p>Retrieve the settings in this mod for a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>plugin_name</strong> Name of the plugin for which to retrieve settings. This should always be <cite>IPlugin.name()</cite>
unless you have a really good reason to access settings of another plugin.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A map from setting key to value. The map is empty if there are not settings for this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.primaryCategory">
<span class="sig-name descname"><span class="pre">primaryCategory</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IModInterface.primaryCategory" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The ID of the primary category of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.removeCategory">
<span class="sig-name descname"><span class="pre">removeCategory</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.removeCategory" title="Link to this definition"></a></dt>
<dd><p>Unassign a category from this mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Name of the category to remove.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the category was removed, False otherwise (e.g. if no such category</p>
</dd>
</dl>
<p>was assigned).</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.repository">
<span class="sig-name descname"><span class="pre">repository</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.repository" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the repository from which this mod was installed.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.setGameName">
<span class="sig-name descname"><span class="pre">setGameName</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.setGameName" title="Link to this definition"></a></dt>
<dd><p>Set the source game of this mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> The new source game short name of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.setIsEndorsed">
<span class="sig-name descname"><span class="pre">setIsEndorsed</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">endorsed</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.setIsEndorsed" title="Link to this definition"></a></dt>
<dd><p>Set endorsement state of the mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>endorsed</strong> New endorsement state of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.setNewestVersion">
<span class="sig-name descname"><span class="pre">setNewestVersion</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">version</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.setNewestVersion" title="Link to this definition"></a></dt>
<dd><p>Set the latest known version of this mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>version</strong> The latest known version of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.setNexusID">
<span class="sig-name descname"><span class="pre">setNexusID</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">nexus_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.setNexusID" title="Link to this definition"></a></dt>
<dd><p>Set the Nexus ID of this mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>nexus_id</strong> Thew new Nexus ID of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.setPluginSetting">
<span class="sig-name descname"><span class="pre">setPluginSetting</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.setPluginSetting" title="Link to this definition"></a></dt>
<dd><p>Set the specified setting in this mod for a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>plugin_name</strong> Name of the plugin for which to retrieve a setting. This should always be <cite>IPlugin.name()</cite>
unless you have a really good reason to access settings of another plugin.</p></li>
<li><p><strong>key</strong> Identifier of the setting.</p></li>
<li><p><strong>value</strong> New value for the setting to set.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the setting was set correctly, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.setUrl">
<span class="sig-name descname"><span class="pre">setUrl</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">url</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.setUrl" title="Link to this definition"></a></dt>
<dd><p>Set the URL of this mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>url</strong> The URL of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.setVersion">
<span class="sig-name descname"><span class="pre">setVersion</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">version</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModInterface.setVersion" title="Link to this definition"></a></dt>
<dd><p>Set the version of this mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>version</strong> The new version of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.trackedState">
<span class="sig-name descname"><span class="pre">trackedState</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.TrackedState" title="mobase.TrackedState"><span class="pre">TrackedState</span></a></span></span><a class="headerlink" href="#mobase.IModInterface.trackedState" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The tracked state of this mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.url">
<span class="sig-name descname"><span class="pre">url</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModInterface.url" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The URL of this mod, or an empty QString() if no URL is associated</p>
</dd>
</dl>
<p>with this mod.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.validated">
<span class="sig-name descname"><span class="pre">validated</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModInterface.validated" title="Link to this definition"></a></dt>
<dd><p>Check if the mod was marked as validated by the user.</p>
<p>MO2 uses ModDataChecker to check the content of mods, but sometimes these fail, in
which case mods are incorrectly marked as not containing valid games data. Users can
choose to mark these mods as valid to hide the warning / flag.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if th is mod was marked as containing valid game data.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModInterface.version">
<span class="sig-name descname"><span class="pre">version</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></span><a class="headerlink" href="#mobase.IModInterface.version" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The current version of this mod.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IModList">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IModList</span></span><a class="headerlink" href="#mobase.IModList" title="Link to this definition"></a></dt>
<dd><p>Interface to the mod-list.</p>
<p>All api functions in this interface work need the internal name of a mod to find a
mod. For regular mods (mods the user installed) the display name (as shown to the user)
and internal name are identical. For other mods (non-MO mods) there is currently no way
to translate from display name to internal name because the display name might not me un-ambiguous.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.allMods">
<span class="sig-name descname"><span class="pre">allMods</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IModList.allMods" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A list containing the internal names of all installed mods.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.allModsByProfilePriority">
<span class="sig-name descname"><span class="pre">allModsByProfilePriority</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IModList.allModsByProfilePriority" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of mod (names), sorted according to the current profile priorities.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.displayName">
<span class="sig-name descname"><span class="pre">displayName</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IModList.displayName" title="Link to this definition"></a></dt>
<dd><p>Retrieve the display name of a mod from its internal name.</p>
<p>If you received an internal name from the API (e.g. <cite>IPluginList.origin</cite>) then you should use
that name to identify the mod in all other api calls but use this function to retrieve the name
to show to the user.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Internal name of the mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The display name of the given mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.getMod">
<span class="sig-name descname"><span class="pre">getMod</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></span><a class="headerlink" href="#mobase.IModList.getMod" title="Link to this definition"></a></dt>
<dd><p>Retrieve an interface to a mod using its name.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Name of the mod to retrieve.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An interface to the given mod, or <cite>None</cite> if there is no mod with this name.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.onModInstalled">
<span class="sig-name descname"><span class="pre">onModInstalled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModList.onModInstalled" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when a new mod is installed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a mod is installed. The parameter of the function is the name of the
newly installed mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.onModMoved">
<span class="sig-name descname"><span class="pre">onModMoved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModList.onModMoved" title="Link to this definition"></a></dt>
<dd><p>Install a handler to be called when a mod is moved.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a mod is moved. The first argument is the internal name of the
mod, the second argument the old priority and the third argument the new priority.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.onModRemoved">
<span class="sig-name descname"><span class="pre">onModRemoved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModList.onModRemoved" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when a mod is removed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a mod is removed. The parameter of the function is the name of the
removed mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.onModStateChanged">
<span class="sig-name descname"><span class="pre">onModStateChanged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModList.onModStateChanged" title="Link to this definition"></a></dt>
<dd><p>Install a handler to be called when mod states change (enabled/disabled, endorsed, …).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when the states of mod change. The argument is a map containing the
mods whose states have changed. Keys are internal mod names and values are mod states.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.priority">
<span class="sig-name descname"><span class="pre">priority</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IModList.priority" title="Link to this definition"></a></dt>
<dd><p>Retrieve the priority of a mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Internal name of the mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The priority of the given mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.removeMod">
<span class="sig-name descname"><span class="pre">removeMod</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModList.removeMod" title="Link to this definition"></a></dt>
<dd><p>Remove a mod (from disc and from the UI).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>mod</strong> The mod to remove.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the mod was removed, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.renameMod">
<span class="sig-name descname"><span class="pre">renameMod</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></span><a class="headerlink" href="#mobase.IModList.renameMod" title="Link to this definition"></a></dt>
<dd><p>Rename the given mod.</p>
<p>This method usually invalidates the given mod so you should use the returned value
after calling it instead of the passed value.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mod</strong> The mod to rename.</p></li>
<li><p><strong>name</strong> The new name of the mod.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A valid reference to the given mod after renaming it.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.setActive">
<span class="sig-name descname"><span class="pre">setActive</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">names</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">active</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IModList.setActive" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">setActive</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">active</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dd><p>Enable or disable a mod.</p>
<p>Calling this will cause MO to re-evaluate its virtual file system so this is
a fairly expensive call.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>name</strong> Internal name of the mod to enable or disable.</p></li>
<li><p><strong>active</strong> True to enable the mod, False to disable it.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True on success, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.setPriority">
<span class="sig-name descname"><span class="pre">setPriority</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">priority</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IModList.setPriority" title="Link to this definition"></a></dt>
<dd><p>Change the priority of a mod.</p>
<p><cite>priority</cite> is the new priority after the move. Keep in mind that the mod disappears from its
old location and all mods with higher priority than the moved mod decrease in priority by one.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>name</strong> Internal name of the mod.</p></li>
<li><p><strong>priority</strong> The new priority of the mod.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the priority was changed, False otherwise (if the name or priority were invalid).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModList.state">
<span class="sig-name descname"><span class="pre">state</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.IModList.state" title="Link to this definition"></a></dt>
<dd><p>Retrieve the state of a mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Internal name of the mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The state of the given mod.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IModRepositoryBridge</span></span><a class="headerlink" href="#mobase.IModRepositoryBridge" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">PyQt6.QtCore.QObject</span></code></p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.__getattr__">
<span class="sig-name descname"><span class="pre">__getattr__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">arg0</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">object</span></span></span><a class="headerlink" href="#mobase.IModRepositoryBridge.__getattr__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge._object">
<span class="sig-name descname"><span class="pre">_object</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QObject</span></span></span><a class="headerlink" href="#mobase.IModRepositoryBridge._object" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The underlying <cite>QObject</cite> for the bridge.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.requestDescription">
<span class="sig-name descname"><span class="pre">requestDescription</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModRepositoryBridge.requestDescription" title="Link to this definition"></a></dt>
<dd><p>Request description of a mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>game_name</strong> Name of the game containing the mod.</p></li>
<li><p><strong>mod_id</strong> Nexus ID of the mod.</p></li>
<li><p><strong>user_data</strong> User data to be returned with the result.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.requestDownloadURL">
<span class="sig-name descname"><span class="pre">requestDownloadURL</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">file_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModRepositoryBridge.requestDownloadURL" title="Link to this definition"></a></dt>
<dd><p>Request download URL for mod file.0</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>game_name</strong> Name of the game containing the mod.</p></li>
<li><p><strong>mod_id</strong> Nexus ID of the mod.</p></li>
<li><p><strong>file_id</strong> ID of the file for which a URL should be returned.</p></li>
<li><p><strong>user_data</strong> User data to be returned with the result.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.requestFileInfo">
<span class="sig-name descname"><span class="pre">requestFileInfo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">file_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModRepositoryBridge.requestFileInfo" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>game_name</strong> Name of the game containing the mod.</p></li>
<li><p><strong>mod_id</strong> Nexus ID of the mod.</p></li>
<li><p><strong>file_id</strong> ID of the file for which information is requested.</p></li>
<li><p><strong>user_data</strong> User data to be returned with the result.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.requestFiles">
<span class="sig-name descname"><span class="pre">requestFiles</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModRepositoryBridge.requestFiles" title="Link to this definition"></a></dt>
<dd><p>Request the list of files belonging to a mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>game_name</strong> Name of the game containing the mod.</p></li>
<li><p><strong>mod_id</strong> Nexus ID of the mod.</p></li>
<li><p><strong>user_data</strong> User data to be returned with the result.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.requestToggleEndorsement">
<span class="sig-name descname"><span class="pre">requestToggleEndorsement</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_version</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">endorse</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IModRepositoryBridge.requestToggleEndorsement" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>game_name</strong> Name of the game containing the mod.</p></li>
<li><p><strong>mod_id</strong> Nexus ID of the mod.</p></li>
<li><p><strong>mod_version</strong> Version of the mod.</p></li>
<li><p><strong>endorse</strong></p></li>
<li><p><strong>user_data</strong> User data to be returned with the result.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.descriptionAvailable">
<span class="sig-name descname"><span class="pre">descriptionAvailable</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.descriptionAvailable" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.downloadURLsAvailable">
<span class="sig-name descname"><span class="pre">downloadURLsAvailable</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.downloadURLsAvailable" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.endorsementToggled">
<span class="sig-name descname"><span class="pre">endorsementToggled</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.endorsementToggled" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.endorsementsAvailable">
<span class="sig-name descname"><span class="pre">endorsementsAvailable</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.endorsementsAvailable" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.fileInfoAvailable">
<span class="sig-name descname"><span class="pre">fileInfoAvailable</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.fileInfoAvailable" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.filesAvailable">
<span class="sig-name descname"><span class="pre">filesAvailable</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.filesAvailable" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.requestFailed">
<span class="sig-name descname"><span class="pre">requestFailed</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.requestFailed" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.trackedModsAvailable">
<span class="sig-name descname"><span class="pre">trackedModsAvailable</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.trackedModsAvailable" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.IModRepositoryBridge.trackingToggled">
<span class="sig-name descname"><span class="pre">trackingToggled</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.pyqtSignal</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.IModRepositoryBridge.trackingToggled" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IOrganizer">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IOrganizer</span></span><a class="headerlink" href="#mobase.IOrganizer" title="Link to this definition"></a></dt>
<dd><p>Interface to class that provides information about the running session
of Mod Organizer to be used by plugins.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.appVersion">
<span class="sig-name descname"><span class="pre">appVersion</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.appVersion" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The running version of Mod Organizer.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.basePath">
<span class="sig-name descname"><span class="pre">basePath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.basePath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The absolute path to the base directory of Mod Organizer.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.createMod">
<span class="sig-name descname"><span class="pre">createMod</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.createMod" title="Link to this definition"></a></dt>
<dd><p>Create a new mod with the specified name.</p>
<p>If a mod with the same name already exists, the user will be queried. If the user chooses
to merge or replace, the call will succeed, otherwise the call will fail.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Name of the mod to create.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An interface to the newly created mod that can be used to modify it, or <cite>None</cite> if the mod</p>
</dd>
</dl>
<p>could not be created.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.createNexusBridge">
<span class="sig-name descname"><span class="pre">createNexusBridge</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IModRepositoryBridge" title="mobase.IModRepositoryBridge"><span class="pre">IModRepositoryBridge</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.createNexusBridge" title="Link to this definition"></a></dt>
<dd><p>Create a new Nexus interface.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The newly created Nexus interface.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.downloadManager">
<span class="sig-name descname"><span class="pre">downloadManager</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IDownloadManager" title="mobase.IDownloadManager"><span class="pre">IDownloadManager</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.downloadManager" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The interface to the download manager.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.downloadsPath">
<span class="sig-name descname"><span class="pre">downloadsPath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.downloadsPath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The absolute path to the download directory.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.findFileInfos">
<span class="sig-name descname"><span class="pre">findFileInfos</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">filter</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.FileInfo" title="mobase.FileInfo"><span class="pre">FileInfo</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.FileInfo" title="mobase.FileInfo"><span class="pre">FileInfo</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IOrganizer.findFileInfos" title="Link to this definition"></a></dt>
<dd><p>Find files in the virtual directory matching the specified filter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> The path to search in (relative to the data folder).</p></li>
<li><p><strong>filter</strong> The function to use to filter files. Should return True for the files to keep.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of <cite>QFileInfo</cite> corresponding to the matching files.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.findFiles">
<span class="sig-name descname"><span class="pre">findFiles</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">filter</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IOrganizer.findFiles" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">findFiles</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">patterns</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">findFiles</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">pattern</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span></dt>
<dd><p>Find files in the given folder that matches the given glob pattern.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> The path to search in (relative to the data folder).</p></li>
<li><p><strong>pattern</strong> The glob pattern to use to filter files.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of matching files.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.gameFeatures">
<span class="sig-name descname"><span class="pre">gameFeatures</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IGameFeatures" title="mobase.IGameFeatures"><span class="pre">IGameFeatures</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.gameFeatures" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The interface to the game features.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.getFileOrigins">
<span class="sig-name descname"><span class="pre">getFileOrigins</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IOrganizer.getFileOrigins" title="Link to this definition"></a></dt>
<dd><p>Retrieve the file origins for the specified file.</p>
<p>The origins are listed with their internal name. The internal name of a mod can differ
from the display name for disambiguation.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filename</strong> Path to the file to retrieve origins for (relative to the data folder).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of origins that contain the specified file, sorted by their priority.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.getGame">
<span class="sig-name descname"><span class="pre">getGame</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginGame" title="mobase.IPluginGame"><span class="pre">IPluginGame</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.getGame" title="Link to this definition"></a></dt>
<dd><p>Retrieve the game plugin matching the given name.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Name of the game (short name).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The plugin for the given game, or <cite>None</cite> if none was found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.getPluginDataPath">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getPluginDataPath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.getPluginDataPath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The directory for plugin data, typically plugins/data.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.installMod">
<span class="sig-name descname"><span class="pre">installMod</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name_suggestion</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.installMod" title="Link to this definition"></a></dt>
<dd><p>Install a mod archive at the specified location.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>filename</strong> Absolute filepath to the archive to install.</p></li>
<li><p><strong>name_suggestion</strong> Suggested name for this mod. This can still be changed by the user.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An interface to the new installed mod, or <cite>None</cite> if no installation took place (canceled or failure).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.isPluginEnabled">
<span class="sig-name descname"><span class="pre">isPluginEnabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><span class="pre">IPlugin</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.isPluginEnabled" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">isPluginEnabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dd><p>Check if a plugin is enabled.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>plugin</strong> The name of the plugin to check.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the plugin is enabled, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.listDirectories">
<span class="sig-name descname"><span class="pre">listDirectories</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">directory</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IOrganizer.listDirectories" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of (virtual) subdirectories in the given path.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>directory</strong> Path to the directory to list (relative to the data folder).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of directories in the given directory.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.managedGame">
<span class="sig-name descname"><span class="pre">managedGame</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginGame" title="mobase.IPluginGame"><span class="pre">IPluginGame</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.managedGame" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The plugin corresponding to the current game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.modDataChanged">
<span class="sig-name descname"><span class="pre">modDataChanged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IOrganizer.modDataChanged" title="Link to this definition"></a></dt>
<dd><p>Notify the organizer that the given mod has changed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>mod</strong> The mod that has changed.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.modList">
<span class="sig-name descname"><span class="pre">modList</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IModList" title="mobase.IModList"><span class="pre">IModList</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.modList" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The interface to the mod list.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.modsPath">
<span class="sig-name descname"><span class="pre">modsPath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.modsPath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The (absolute) path to the mods directory.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onAboutToRun">
<span class="sig-name descname"><span class="pre">onAboutToRun</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onAboutToRun" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">onAboutToRun</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dd><p>Install a new handler to be called when an application is about to run.</p>
<p>Multiple handlers can be installed. If any of the handler returns <cite>False</cite>, the
application will not run.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when an application is about to run. The parameter
is the absolute path to the application to run. The function can return False
to prevent the application from running.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for</p>
</dd>
</dl>
<p>this to fail).</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onFinishedRun">
<span class="sig-name descname"><span class="pre">onFinishedRun</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onFinishedRun" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when an application has finished running.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when an application has finished running. The first parameter is the absolute
path to the application, and the second parameter is the exit code of the application.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for</p>
</dd>
</dl>
<p>this to fail).</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onNextRefresh">
<span class="sig-name descname"><span class="pre">onNextRefresh</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">immediate_if_possible</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onNextRefresh" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called on the next refresh or immediately.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>callback</strong> Function to call on the next refresh (or immediately).</p></li>
<li><p><strong>immediate_if_possible</strong> If True, immediately run the callback if no refresh is currently running.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for</p>
</dd>
</dl>
<p>this to fail).</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onPluginDisabled">
<span class="sig-name descname"><span class="pre">onPluginDisabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><span class="pre">IPlugin</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onPluginDisabled" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">onPluginDisabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span></dt>
<dd><p>Install a new handler to be called when the given plugin is disabled.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>name</strong> Name of the plugin to watch.</p></li>
<li><p><strong>callback</strong> The function to call when the plugin is disabled.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onPluginEnabled">
<span class="sig-name descname"><span class="pre">onPluginEnabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><span class="pre">IPlugin</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onPluginEnabled" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<span class="sig-name descname"><span class="pre">onPluginEnabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span></dt>
<dd><p>Install a new handler to be called when the given plugin is enabled.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>name</strong> Name of the plugin to watch.</p></li>
<li><p><strong>callback</strong> The function to call when the plugin is enabled.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onPluginSettingChanged">
<span class="sig-name descname"><span class="pre">onPluginSettingChanged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">MoVariant</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">MoVariant</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onPluginSettingChanged" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when a plugin setting is changed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a plugin setting is changed. The parameters are: The name of the plugin, the
name of the setting, the old value (or <cite>None</cite> if the setting did not exist before) and the new value
of the setting (or <cite>None</cite> if the setting has been removed).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onProfileChanged">
<span class="sig-name descname"><span class="pre">onProfileChanged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onProfileChanged" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when the current profile is changed.</p>
<p>The function is called when the profile is changed but some operations related to
the profile might not be finished when this is called (e.g., the virtual file system
might not be up-to-date).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when the current profile is changed. The first parameter is the old profile (can
be <cite>None</cite>, e.g. at startup), and the second parameter is the new profile (cannot be <cite>None</cite>).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onProfileCreated">
<span class="sig-name descname"><span class="pre">onProfileCreated</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onProfileCreated" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when a new profile is created.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a new profile is created. The parameter is the new profile (can be
a temporary object and should not be stored).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onProfileRemoved">
<span class="sig-name descname"><span class="pre">onProfileRemoved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onProfileRemoved" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when a profile is remove.</p>
<p>The callbacks are called after the profile has been removed so the profile is not accessible
anymore.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a profile is remove. The parameter is the name of the profile that was
removed.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onProfileRenamed">
<span class="sig-name descname"><span class="pre">onProfileRenamed</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onProfileRenamed" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when a profile is renamed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a profile is renamed. The first parameter is the profile being renamed,
the second parameter the previous name and the third parameter the new name.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.onUserInterfaceInitialized">
<span class="sig-name descname"><span class="pre">onUserInterfaceInitialized</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">PyQt6.QtWidgets.QMainWindow</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IOrganizer.onUserInterfaceInitialized" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when the UI has been fully initialized.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when the user-interface has been fully initialized. The parameter is the main
window of the application (<cite>QMainWindow</cite>).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.overwritePath">
<span class="sig-name descname"><span class="pre">overwritePath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.overwritePath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The (absolute) path to the overwrite directory.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.persistent">
<span class="sig-name descname"><span class="pre">persistent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">MoVariant</span></span></span><a class="headerlink" href="#mobase.IOrganizer.persistent" title="Link to this definition"></a></dt>
<dd><p>Retrieve the specified persistent value for a plugin.</p>
<p>A persistent is an arbitrary value that the plugin can set and retrieve that is persistently stored
by the main application. There is no UI for the user to change this value but they can directly access
the storage</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>plugin_name</strong> Name of the plugin for which to retrieve the value. This should always be <cite>IPlugin.name()</cite> unless you have a
really good reason to access data of another mod AND if you can verify that plugin is actually installed.</p></li>
<li><p><strong>key</strong> Identifier of the setting.</p></li>
<li><p><strong>default</strong> Default value to return if the key is not set (yet).</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The value corresponding to the given persistent setting, or <cite>def</cite> is the key is not found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.pluginDataPath">
<span class="sig-name descname"><span class="pre">pluginDataPath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.pluginDataPath" title="Link to this definition"></a></dt>
<dd><p>Retrieve the path to a directory where plugin data should be stored.</p>
<p>For python plugins, it is recommended to use a dedicated folder (per plugin) if you need to
store data (resources, or multiple python files).</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>Path to a directory where plugin data should be stored.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.pluginList">
<span class="sig-name descname"><span class="pre">pluginList</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginList" title="mobase.IPluginList"><span class="pre">IPluginList</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.pluginList" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The plugin list interface.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.pluginSetting">
<span class="sig-name descname"><span class="pre">pluginSetting</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">MoVariant</span></span></span><a class="headerlink" href="#mobase.IOrganizer.pluginSetting" title="Link to this definition"></a></dt>
<dd><p>Retrieve settings of plugins.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>plugin_name</strong> Name of the plugin to retrieve the setting for.</p></li>
<li><p><strong>key</strong> Name of the setting to retrieve the value for.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The value of the setting.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.profile">
<span class="sig-name descname"><span class="pre">profile</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.profile" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The interface to the current profile.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.profileName">
<span class="sig-name descname"><span class="pre">profileName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.profileName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the current profile, or an empty string if no profile has been loaded (yet).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.profilePath">
<span class="sig-name descname"><span class="pre">profilePath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.profilePath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The absolute path to the active profile or an empty string if no profile has been loaded (yet).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.refresh">
<span class="sig-name descname"><span class="pre">refresh</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">save_changes</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IOrganizer.refresh" title="Link to this definition"></a></dt>
<dd><p>Refresh the internal mods file structure from disk. This includes the mod list, the plugin
list, data tab and other smaller things like problems button (same as pressing F5).</p>
<p>The main part of the refresh of the mods file structure, mod list and plugin list is done
asynchronously, so you should not expect them to be up-to-date when this function returns.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>save_changes</strong> If True, the relevant profile information is saved first (enabled mods and order of mods).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.resolvePath">
<span class="sig-name descname"><span class="pre">resolvePath</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IOrganizer.resolvePath" title="Link to this definition"></a></dt>
<dd><p>Resolves a path relative to the virtual data directory to its absolute real path.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filename</strong> Path to resolve.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The absolute real path, or an empty string if the path was not found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.setPersistent">
<span class="sig-name descname"><span class="pre">setPersistent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sync</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IOrganizer.setPersistent" title="Link to this definition"></a></dt>
<dd><p>Set the specified persistent value for a plugin.</p>
<p>This does not update the in-memory value for this setting, see <cite>setPluginSetting()</cite> for this.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>plugin_name</strong> Name of the plugin for which to change a value. This should always be <cite>IPlugin.name()</cite> unless you have a
really good reason to access data of another mod AND if you can verify that plugin is actually installed.</p></li>
<li><p><strong>key</strong> Identifier of the setting.</p></li>
<li><p><strong>value</strong> New value for the setting.</p></li>
<li><p><strong>sync</strong> If True, the storage is immediately written to disc. This costs performance but is safer against data loss.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.setPluginSetting">
<span class="sig-name descname"><span class="pre">setPluginSetting</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IOrganizer.setPluginSetting" title="Link to this definition"></a></dt>
<dd><p>Set the specified setting for a plugin.</p>
<p>This automatically notify handlers register with <cite>onPluginSettingChanged</cite>, so you do not have to do it yourself.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>plugin_name</strong> Name of the plugin for which to change a value. This should always be <cite>IPlugin.name()</cite> unless you have a
really good reason to access data of another mod AND if you can verify that plugin is actually installed.</p></li>
<li><p><strong>key</strong> Identifier of the setting.</p></li>
<li><p><strong>value</strong> New value for the setting.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.startApplication">
<span class="sig-name descname"><span class="pre">startApplication</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">executable</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cwd</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">forcedCustomOverwrite</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignoreCustomOverwrite</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IOrganizer.startApplication" title="Link to this definition"></a></dt>
<dd><p>Starts an application with virtual filesystem active.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>executable</strong> Name or path of the executable. If this is only a filename, it will only work if it has been configured
in MO as an executable. If it is a relative path it is expected to be relative to the game directory.</p></li>
<li><p><strong>args</strong> Arguments to pass to the executable. If the list is empty, and <cite>executable</cite> refers to a configured executable,
the configured arguments are used.</p></li>
<li><p><strong>cwd</strong> The working directory for the executable. If this is empty, the path to the executable is used unless <cite>executable</cite>
referred to a configured MO executable, in which case the configured cwd is used.</p></li>
<li><p><strong>profile</strong> Profile to use. If this is empty (the default) the current profile is used.</p></li>
<li><p><strong>forcedCustomOverwrite</strong> The mod to set as the custom overwrite, regardless of what the profile has configured.</p></li>
<li><p><strong>ignoreCustomOverwrite</strong> Set to true to ignore the profiles configured custom overwrite.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The handle to the started application, or 0 if the application failed to start.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.virtualFileTree">
<span class="sig-name descname"><span class="pre">virtualFileTree</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></span><a class="headerlink" href="#mobase.IOrganizer.virtualFileTree" title="Link to this definition"></a></dt>
<dd><p>Retrieve a IFileTree object representing the virtual file tree.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>An IFileTree representing the virtual file tree.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IOrganizer.waitForApplication">
<span class="sig-name descname"><span class="pre">waitForApplication</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">handle</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">refresh</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">bool</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IOrganizer.waitForApplication" title="Link to this definition"></a></dt>
<dd><p>Wait for the application corresponding to the given handle to finish.</p>
<p>This will always show the lock overlay, regardless of whether the
user has disabled locking in the setting, so use this with care.
Note that the lock overlay will always allow the user to unlock, in
which case this will return False.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>handle</strong> Handle of the application to wait for (as returned by <cite>startApplication()</cite>).</p></li>
<li><p><strong>refresh</strong> Whether ModOrganizer should refresh after the process completed or not.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A tuple <cite>(result, exitcode)</cite>, where <cite>result</cite> is a boolean indicating if the application</p>
</dd>
</dl>
<p>completed successfully, and <cite>exitcode</cite> is the exit code of the application.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPlugin">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPlugin</span></span><a class="headerlink" href="#mobase.IPlugin" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">abc.ABC</span></code></p>
<p>Base class for all plugins.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.author">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">author</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPlugin.author" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the plugin author.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.description">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPlugin.description" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The description for this plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.enabledByDefault">
<span class="sig-name descname"><span class="pre">enabledByDefault</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPlugin.enabledByDefault" title="Link to this definition"></a></dt>
<dd><p>Check whether this plugin should be enabled by default.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this plugin should be enabled by default, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.init">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">init</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">organizer</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IOrganizer" title="mobase.IOrganizer"><span class="pre">IOrganizer</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPlugin.init" title="Link to this definition"></a></dt>
<dd><p>Initialize this plugin.</p>
<p>Note that this function may never be called if no <cite>IOrganizer</cite> is available
at that time, such as when creating the first instance in MO.</p>
<p>Plugins will probably want to store the organizer pointer. It is guaranteed
to be valid as long as the plugin is loaded.</p>
<p>These functions may be called before <cite>init()</cite>:</p>
<blockquote>
<div><ul class="simple">
<li><p><cite>name()</cite></p></li>
<li><p>see <cite>IPluginGame</cite> for more.</p></li>
</ul>
</div></blockquote>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>organizer</strong> The main organizer interface.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the plugin was initialized correctly, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.localizedName">
<span class="sig-name descname"><span class="pre">localizedName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPlugin.localizedName" title="Link to this definition"></a></dt>
<dd><p>Retrieve the localized name of the plugin.</p>
<p>Unlike <cite>name()</cite>, this method can (and should!) return a localized name for the plugin.
This method returns name() by default.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The localized name of the plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.master">
<span class="sig-name descname"><span class="pre">master</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPlugin.master" title="Link to this definition"></a></dt>
<dd><p>Retrieve the master plugin of this plugin.</p>
<p>It is often easier to implement a functionality as multiple plugins in MO2, but ship the
plugins together, e.g. as a Python module or using <cite>createFunctions()</cite>. In this case, having
a master plugin (one of the plugin, or a separate one) tells MO2 that these plugins are
linked and should also be displayed together in the UI. If MO2 ever implements automatic
updates for plugins, the <cite>master()</cite> plugin will also be used for this purpose.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The master plugin of this plugin, or a null pointer if this plugin does not have a master.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.name">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPlugin.name" title="Link to this definition"></a></dt>
<dd><p>Retrieve the name of the plugin.</p>
<p>The name of the plugin is used for internal storage purpose so it should not change,
and it should be static. In particular, you should not use a localized string (<cite>tr()</cite>)
for the plugin name.</p>
<p>In the future, we will provide a way to localized plugin names using a distinct method,
such as <cite>localizedName()</cite>.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.requirements">
<span class="sig-name descname"><span class="pre">requirements</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPlugin.requirements" title="Link to this definition"></a></dt>
<dd><p>Retrieve the requirements for this plugin.</p>
<p>This method is called right after <cite>init()</cite> and the ownership the requirements is</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of requirements for this plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.settings">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">settings</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.PluginSetting" title="mobase.PluginSetting"><span class="pre">PluginSetting</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPlugin.settings" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A list of settings for this plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.version">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">version</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></span><a class="headerlink" href="#mobase.IPlugin.version" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The version of this plugin.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginDiagnose">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginDiagnose</span></span><a class="headerlink" href="#mobase.IPluginDiagnose" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p>
<p>Plugins that create problem reports to be displayed in the UI.</p>
<p>This can be used to report problems related to the same plugin (which implements further
interfaces) or as a stand-alone diagnosis tool.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginDiagnose._invalidate">
<span class="sig-name descname"><span class="pre">_invalidate</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginDiagnose._invalidate" title="Link to this definition"></a></dt>
<dd><p>Invalidate the problems corresponding to this plugin.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginDiagnose.activeProblems">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">activeProblems</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginDiagnose.activeProblems" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of active problems found by this plugin.</p>
<p>This method returns a list of problem IDs, that are then used when calling other methods
such as <cite>shortDescription()</cite> or <cite>hasGuidedFix()</cite>.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of active problems for this plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginDiagnose.fullDescription">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fullDescription</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginDiagnose.fullDescription" title="Link to this definition"></a></dt>
<dd><p>Retrieve the full description of the problem corresponding to the given key.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>key</strong> ID of the problem.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The full description of the problem.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>IndexError</strong> If the key is not valid.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginDiagnose.hasGuidedFix">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">hasGuidedFix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginDiagnose.hasGuidedFix" title="Link to this definition"></a></dt>
<dd><p>Check if the problem corresponding to the given key has a guided fix.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>key</strong> ID of the problem.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if there is a guided fix for the problem, False otherwise.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>IndexError</strong> If the key is not valid.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginDiagnose.shortDescription">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">shortDescription</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginDiagnose.shortDescription" title="Link to this definition"></a></dt>
<dd><p>Retrieve the short description of the problem corresponding to the given key.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>key</strong> ID of the problem.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The short description of the problem.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>IndexError</strong> If the key is not valid.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginDiagnose.startGuidedFix">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">startGuidedFix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginDiagnose.startGuidedFix" title="Link to this definition"></a></dt>
<dd><p>Starts a guided fix for the problem corresponding to the given key.</p>
<p>This method should throw <cite>ValueError</cite> if there is no guided fix for the corresponding
problem.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>key</strong> ID of the problem.</p>
</dd>
<dt class="field-even">Raises<span class="colon">:</span></dt>
<dd class="field-even"><ul class="simple">
<li><p><strong>IndexError</strong> If the key is not valid.</p></li>
<li><p><strong>ValueError</strong> If there is no guided fix for this problem.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginFileMapper">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginFileMapper</span></span><a class="headerlink" href="#mobase.IPluginFileMapper" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p>
<p>Plugins that adds virtual file links.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginFileMapper.mappings">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">mappings</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.Mapping" title="mobase.Mapping"><span class="pre">Mapping</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginFileMapper.mappings" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>Mapping for the virtual file system (VFS).</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginGame">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginGame</span></span><a class="headerlink" href="#mobase.IPluginGame" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p>
<p>Base classes for game plugins.</p>
<p>Each game requires a specific game plugin. These plugins were initially designed for
Bethesda games, so a lot of methods and attributes are irrelevant for other games. If
you wish to write a plugin for a much simpler game, please consider the <cite>basic_games</cite>
plugin: <a class="reference external" href="https://github.com/ModOrganizer2/modorganizer-basic_games">https://github.com/ModOrganizer2/modorganizer-basic_games</a></p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.CCPlugins">
<span class="sig-name descname"><span class="pre">CCPlugins</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.CCPlugins" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The current list of active Creation Club plugins.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.DLCPlugins">
<span class="sig-name descname"><span class="pre">DLCPlugins</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.DLCPlugins" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of esp/esm files that are part of known DLCs.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.binaryName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">binaryName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.binaryName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the default executable to run (relative to the game folder).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.dataDirectory">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">dataDirectory</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QDir</span></span></span><a class="headerlink" href="#mobase.IPluginGame.dataDirectory" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The path to the directory containing data (absolute path).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.detectGame">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">detectGame</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginGame.detectGame" title="Link to this definition"></a></dt>
<dd><p>Detect the game.</p>
<p>This method is the first called for game plugins (before <cite>init()</cite>). The following
methods should work properly after the call to <cite>detectGame()</cite> (and before <cite>init()</cite>):</p>
<blockquote>
<div><ul class="simple">
<li><p>gameName()</p></li>
<li><p>isInstalled()</p></li>
<li><p>gameIcon()</p></li>
<li><p>gameDirectory()</p></li>
<li><p>dataDirectory()</p></li>
<li><p>gameVariants()</p></li>
<li><p>looksValid()</p></li>
</ul>
</div></blockquote>
<p>See <cite>IPlugin.init()</cite> for more.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.displayGameName">
<span class="sig-name descname"><span class="pre">displayGameName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.displayGameName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the game to user for display, default to gameName().</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.documentsDirectory">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">documentsDirectory</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QDir</span></span></span><a class="headerlink" href="#mobase.IPluginGame.documentsDirectory" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The directory of the documents folder where configuration files and such for this game reside.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.enabledPlugins">
<span class="sig-name descname"><span class="pre">enabledPlugins</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.enabledPlugins" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A list of plugins enabled by the game but not in a strict load order.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.executableForcedLoads">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">executableForcedLoads</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.ExecutableForcedLoadSetting" title="mobase.ExecutableForcedLoadSetting"><span class="pre">ExecutableForcedLoadSetting</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.executableForcedLoads" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A list of automatically discovered libraries that can be force loaded with executables.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.executables">
<span class="sig-name descname"><span class="pre">executables</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.ExecutableInfo" title="mobase.ExecutableInfo"><span class="pre">ExecutableInfo</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.executables" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A list of automatically discovered executables of the game itself and tools surrounding it.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.gameDirectory">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameDirectory</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QDir</span></span></span><a class="headerlink" href="#mobase.IPluginGame.gameDirectory" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The directory containing the game installation.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.gameIcon">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameIcon</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtGui.QIcon</span></span></span><a class="headerlink" href="#mobase.IPluginGame.gameIcon" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The icon representing the game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.gameName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.gameName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the game (for internal usage).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.gameNexusName">
<span class="sig-name descname"><span class="pre">gameNexusName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.gameNexusName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the game identifier for Nexus.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.gameShortName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameShortName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.gameShortName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The short name of the game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.gameVariants">
<span class="sig-name descname"><span class="pre">gameVariants</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.gameVariants" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of variants for this game.</p>
<p>If there are multiple variants of a game (and the variants make a difference to the
plugin), like a regular one and a GOTY-edition, the plugin can return a list of them
and the user gets to chose which one he owns.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of variants of the game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.gameVersion">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameVersion</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.gameVersion" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The version of the game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.getLauncherName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getLauncherName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.getLauncherName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the launcher executable to run (relative to the game folder), or an</p>
</dd>
</dl>
<p>empty string if there is no launcher.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.getSupportURL">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getSupportURL</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.getSupportURL" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>An URL for the support page of this game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.iniFiles">
<span class="sig-name descname"><span class="pre">iniFiles</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.iniFiles" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of INI files this game uses. The first file in the list should be the</p>
</dd>
</dl>
<p>main INI file.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.initializeProfile">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">initializeProfile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">directory</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QDir</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">settings</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginGame.initializeProfile" title="Link to this definition"></a></dt>
<dd><p>Initialize a profile for this game.</p>
<p>The MO app does not yet support virtualizing only specific aspects but plugins should be written
with this future functionality in mind.</p>
<p>This function will be used to initially create a profile, potentially to repair it or upgrade/downgrade
it so the implementations have to gracefully handle the case that the directory already contains files.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>directory</strong> The directory where the profile is to be initialized.</p></li>
<li><p><strong>settings</strong> The parameters for how the profile should be initialized.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.isInstalled">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isInstalled</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginGame.isInstalled" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this game has been discovered as installed, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.listSaves">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">listSaves</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">folder</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QDir</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.ISaveGame" title="mobase.ISaveGame"><span class="pre">ISaveGame</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.listSaves" title="Link to this definition"></a></dt>
<dd><p>List saves in the given directory.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>folder</strong> The folder to list saves from.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of game saves in the given folder.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.loadOrderMechanism">
<span class="sig-name descname"><span class="pre">loadOrderMechanism</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.LoadOrderMechanism" title="mobase.LoadOrderMechanism"><span class="pre">LoadOrderMechanism</span></a></span></span><a class="headerlink" href="#mobase.IPluginGame.loadOrderMechanism" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The load order mechanism used by this game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.looksValid">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">looksValid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">directory</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QDir</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginGame.looksValid" title="Link to this definition"></a></dt>
<dd><p>Check if the given directory looks like a valid game installation.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>directory</strong> Directory to check.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the directory looks like a valid installation of this game, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.lootGameName">
<span class="sig-name descname"><span class="pre">lootGameName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.lootGameName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The game name to use when calling LOOT from MO2, default to gameShortName().</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.nexusGameID">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">nexusGameID</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IPluginGame.nexusGameID" title="Link to this definition"></a></dt>
<dd><p>Retrieve the Nexus game ID for this game.</p>
<p>Example: For Skyrim, the Nexus game ID is 110.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The Nexus game ID for this game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.nexusModOrganizerID">
<span class="sig-name descname"><span class="pre">nexusModOrganizerID</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IPluginGame.nexusModOrganizerID" title="Link to this definition"></a></dt>
<dd><p>Retrieve the Nexus mod ID of Mod Organizer for this game.</p>
<dl class="simple">
<dt>Example: For Skyrim SE, the mod ID of MO2 is 6194. You can find the mod ID in the URL:</dt><dd><p><a class="reference external" href="https://www.nexusmods.com/skyrimspecialedition/mods/6194">https://www.nexusmods.com/skyrimspecialedition/mods/6194</a></p>
</dd>
</dl>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The Nexus mod ID of Mod Organizer for this game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.primaryPlugins">
<span class="sig-name descname"><span class="pre">primaryPlugins</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.primaryPlugins" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of plugins that are part of the game and not considered optional.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.primarySources">
<span class="sig-name descname"><span class="pre">primarySources</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.primarySources" title="Link to this definition"></a></dt>
<dd><p>Retrieve primary alternative short names for this game.</p>
<p>This is used to determine if a Nexus (or other) download source should be considered
as a primary source for the game so that it is not flagged as an alternative one.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of primary alternative short names for this game, or an empty list.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.savesDirectory">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">savesDirectory</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QDir</span></span></span><a class="headerlink" href="#mobase.IPluginGame.savesDirectory" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The directory where save games are stored.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.secondaryDataDirectories">
<span class="sig-name descname"><span class="pre">secondaryDataDirectories</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.secondaryDataDirectories" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of secondary data directories. Each directories should be
assigned a unique name that differs from “data” which is the name of the main
data directory returned by dataDirectory().</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A mapping from unique name to secondary data directories.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.setGamePath">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">setGamePath</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginGame.setGamePath" title="Link to this definition"></a></dt>
<dd><p>Set the path to the managed game.</p>
<p>This is called during instance creation if the game is not auto-detected and the user has
to specify the installation location. This is not called if the game has been auto-detected,
so <cite>isInstalled()</cite> should call this.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>path</strong> Path to the game installation.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.setGameVariant">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">setGameVariant</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">variant</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginGame.setGameVariant" title="Link to this definition"></a></dt>
<dd><p>Set the game variant.</p>
<p>If there are multiple variants of game (as returned by <cite>gameVariants()</cite>), this will be
called on start with the user-selected game variant.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>variant</strong> The game variant selected by the user.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.sortMechanism">
<span class="sig-name descname"><span class="pre">sortMechanism</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.SortMechanism" title="mobase.SortMechanism"><span class="pre">SortMechanism</span></a></span></span><a class="headerlink" href="#mobase.IPluginGame.sortMechanism" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The sort mechanism for this game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.steamAPPId">
<span class="sig-name descname"><span class="pre">steamAPPId</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginGame.steamAPPId" title="Link to this definition"></a></dt>
<dd><p>Retrieve the Steam app ID for this game.</p>
<p>If the game is not available on Steam, this should return an empty string.</p>
<p>If a game is available in multiple versions, those might have different app ids. The plugin
should try to return the right one</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The Steam app ID for this game. Should be empty for games not available on steam.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginGame.validShortNames">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">validShortNames</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginGame.validShortNames" title="Link to this definition"></a></dt>
<dd><p>Retrieve the valid short names for this game.</p>
<p>This is used to determine if a Nexus download is valid for the current game since not all
game variants have their own nexus pages and others can handle downloads from other nexus
game pages and should be allowed to do so (e.g., you can install some Skyrim LE mod even
when using Skyrim SE).</p>
<p>The short name should be considered the primary handler for a directly supported game
for purposes of auto-launching an instance.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of valid short names for this game.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginInstaller">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginInstaller</span></span><a class="headerlink" href="#mobase.IPluginInstaller" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p>
<p>This is the top-level class for installer. Actual installers should inherit either:</p>
<blockquote>
<div><ul class="simple">
<li><p><cite>IPluginInstallerSimple</cite> if the installer can work directly with the archive. This is what
most installers use.</p></li>
<li><p><cite>IPluginInstallerCustom</cite> if the installer needs to perform custom operations. This is only
used by the external NCC installer and the OMOD installer.</p></li>
</ul>
</div></blockquote>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller._manager">
<span class="sig-name descname"><span class="pre">_manager</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IInstallationManager" title="mobase.IInstallationManager"><span class="pre">IInstallationManager</span></a></span></span><a class="headerlink" href="#mobase.IPluginInstaller._manager" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The installation manager.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller._parentWidget">
<span class="sig-name descname"><span class="pre">_parentWidget</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller._parentWidget" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The parent widget.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller.isArchiveSupported">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isArchiveSupported</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller.isArchiveSupported" title="Link to this definition"></a></dt>
<dd><p>Check if the given file tree corresponds to a supported archive for this installer.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>tree</strong> The tree representing the content of the archive.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if this installer can handle the archive, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller.isManualInstaller">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isManualInstaller</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller.isManualInstaller" title="Link to this definition"></a></dt>
<dd><p>Check if this installer is a manual installer.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this installer is a manual installer, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller.onInstallationEnd">
<span class="sig-name descname"><span class="pre">onInstallationEnd</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">result</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.InstallResult" title="mobase.InstallResult"><span class="pre">InstallResult</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_mod</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller.onInstallationEnd" title="Link to this definition"></a></dt>
<dd><p>Method calls at the end of the installation process. This method is only called once
per installation process, even for recursive installations (e.g. with the bundle installer).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>result</strong> The result of the installation.</p></li>
<li><p><strong>new_mod</strong> If the installation succeeded (result is RESULT_SUCCESS), contains the newly
installed mod, otherwise it contains a null pointer.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller.onInstallationStart">
<span class="sig-name descname"><span class="pre">onInstallationStart</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">archive</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">reinstallation</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">current_mod</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IModInterface" title="mobase.IModInterface"><span class="pre">IModInterface</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller.onInstallationStart" title="Link to this definition"></a></dt>
<dd><p>Method calls at the start of the installation process, before any other methods.
This method is only called once per installation process, even for recursive
installations (e.g. with the bundle installer).</p>
<p>If <cite>reinstallation</cite> is true, then the given mod is the mod being reinstalled (the one
selected by the user). If <cite>reinstallation</cite> is false and <cite>currentMod</cite> is not null, then
it corresponds to a mod MO2 thinks corresponds to the archive (e.g. based on matching Nexus ID
or name).</p>
<p>The default implementation does nothing.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>archive</strong> Path to the archive that is going to be installed.</p></li>
<li><p><strong>reinstallation</strong> True if this is a reinstallation, False otherwise.</p></li>
<li><p><strong>current_mod</strong> A currently installed mod corresponding to the archive being installed, or None
if there is no such mod.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller.priority">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">priority</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller.priority" title="Link to this definition"></a></dt>
<dd><p>Retrieve the priority of this installer.</p>
<p>If multiple installers are able to handle an archive, the one with the highest priority wins.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The priority of this installer.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller.setInstallationManager">
<span class="sig-name descname"><span class="pre">setInstallationManager</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">manager</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IInstallationManager" title="mobase.IInstallationManager"><span class="pre">IInstallationManager</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller.setInstallationManager" title="Link to this definition"></a></dt>
<dd><p>Set the installation manager for this installer.</p>
<p>Python plugins usually do not need to re-implement this and can directly access the installation
manager using <cite>_manager()</cite>.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>manager</strong> The installation manager.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstaller.setParentWidget">
<span class="sig-name descname"><span class="pre">setParentWidget</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginInstaller.setParentWidget" title="Link to this definition"></a></dt>
<dd><p>Set the parent widget for this installer.</p>
<p>Python plugins usually do not need to re-implement this and can directly access the parent
widget using <cite>_parentWidget()</cite> once the UI has been initialized.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>parent</strong> The parent widget.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginInstallerCustom">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginInstallerCustom</span></span><a class="headerlink" href="#mobase.IPluginInstallerCustom" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPluginInstaller" title="mobase.IPluginInstaller"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginInstaller</span></code></a></p>
<p>Custom installer for mods. Custom installers receive the archive name and have to go
from there. They have to be able to extract the archive themselves.</p>
<p>Example of such installers are the external NCC installer or the OMOD installer.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstallerCustom.install">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">install</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">game_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">archive_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">version</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nexus_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.InstallResult" title="mobase.InstallResult"><span class="pre">InstallResult</span></a></span></span><a class="headerlink" href="#mobase.IPluginInstallerCustom.install" title="Link to this definition"></a></dt>
<dd><p>Install the given archive.</p>
<p>The mod needs to be created by calling <cite>IOrganizer.createMod</cite> first.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mod_name</strong> Name of the mod to install. As an input parameter this is the suggested name
(e.g. from meta data) The installer may change this parameter to rename the mod).</p></li>
<li><p><strong>game_name</strong> Name of the game for which the mod is installed.</p></li>
<li><p><strong>archive_name</strong> Name of the archive to install.</p></li>
<li><p><strong>version</strong> Version of the mod. May be empty if the version is not yet known. The plugin is responsible
for setting the version on the created mod.</p></li>
<li><p><strong>nexus_id</strong> ID of the mod or -1 if unknown. The plugin is responsible for setting the mod ID for the
created mod.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The result of the installation process.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstallerCustom.isArchiveSupported">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isArchiveSupported</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginInstallerCustom.isArchiveSupported" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isArchiveSupported</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">archive_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span></dt>
<dd><p>Check if the given file is a supported archive for this installer.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>archive_name</strong> Name of the archive.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if this installer can handle the archive, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstallerCustom.supportedExtensions">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">supportedExtensions</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">set</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginInstallerCustom.supportedExtensions" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A list of file extensions that this installer can handle.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginInstallerSimple">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginInstallerSimple</span></span><a class="headerlink" href="#mobase.IPluginInstallerSimple" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPluginInstaller" title="mobase.IPluginInstaller"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPluginInstaller</span></code></a></p>
<p>Simple installer for mods. Simple installers only deal with an in-memory structure
representing the archive and can modify what to install and where by editing this structure.
Actually extracting the archive is handled by the manager.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginInstallerSimple.install">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">install</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.GuessedString" title="mobase.GuessedString"><span class="pre">GuessedString</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">tree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">version</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nexus_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.InstallResult" title="mobase.InstallResult"><span class="pre">InstallResult</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.InstallResult" title="mobase.InstallResult"><span class="pre">InstallResult</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginInstallerSimple.install" title="Link to this definition"></a></dt>
<dd><p>Install a mod from an archive filetree.</p>
<p>The installer can modify the given tree and use the manager to extract or create new
files.</p>
<p>This method returns different type of objects depending on the actual result of the
installation. The C++ bindings for this method always returns a tuple (result, tree,
version, id).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>name</strong> Name of the mod to install. As an input parameter this is the suggested name
(e.g. from meta data) The installer may change this parameter to rename the mod).</p></li>
<li><p><strong>tree</strong> In-memory representation of the archive content.</p></li>
<li><p><strong>version</strong> Version of the mod, or an empty string is unknown.</p></li>
<li><p><strong>nexus_id</strong> ID of the mod, or -1 if unknown.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>In case of failure, the result of the installation, otherwise the modified tree or</p>
</dd>
</dl>
<p>a tuple (result, tree, version, id) containing the result of the installation, the
modified tree, the new version and the new ID. The tuple can be returned even if the
installation did not succeed.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginList">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginList</span></span><a class="headerlink" href="#mobase.IPluginList" title="Link to this definition"></a></dt>
<dd><p>Primary interface to the list of plugins.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.hasLightExtension">
<span class="sig-name descname"><span class="pre">hasLightExtension</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.hasLightExtension" title="Link to this definition"></a></dt>
<dd><p>Determine if a plugin has a .esl extension.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the given file has a .esl extension, False otherwise or if the</p>
</dd>
</dl>
<p>file does not exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.hasMasterExtension">
<span class="sig-name descname"><span class="pre">hasMasterExtension</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.hasMasterExtension" title="Link to this definition"></a></dt>
<dd><p>Determine if a plugin has a .esm extension.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the given file has a .esm extension, False otherwise or if the</p>
</dd>
</dl>
<p>file does not exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.hasNoRecords">
<span class="sig-name descname"><span class="pre">hasNoRecords</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.hasNoRecords" title="Link to this definition"></a></dt>
<dd><p>Determine if a plugin has no records.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the given file plugin contains no records, False if it does OR if the</p>
</dd>
</dl>
<p>file does not exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.isLightFlagged">
<span class="sig-name descname"><span class="pre">isLightFlagged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.isLightFlagged" title="Link to this definition"></a></dt>
<dd><p>Determine if a plugin is flagged as light.</p>
<p>In gamebryo games, a master file will usually have a .esl file extension but
technically an esp can be flagged as light.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the given plugin is a light plugin, False otherwise or if the</p>
</dd>
</dl>
<p>file does not exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.isMasterFlagged">
<span class="sig-name descname"><span class="pre">isMasterFlagged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.isMasterFlagged" title="Link to this definition"></a></dt>
<dd><p>Determine if a plugin is flagged as mater, i.e., a library, reference by
other plugins.</p>
<p>In gamebryo games, a master file will usually have a .esm file extension but
technically an esp can be flagged as master and an esm might not be.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the given plugin is a master plugin, False otherwise or if the</p>
</dd>
</dl>
<p>file does not exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.isMediumFlagged">
<span class="sig-name descname"><span class="pre">isMediumFlagged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.isMediumFlagged" title="Link to this definition"></a></dt>
<dd><p>Determine if a plugin is flagged as medium.</p>
<p>This plugin flag was added in Starfield and signifies plugin records that
update existing records</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the given plugin is a medium plugin, False otherwise or if the</p>
</dd>
</dl>
<p>file does not exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.loadOrder">
<span class="sig-name descname"><span class="pre">loadOrder</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IPluginList.loadOrder" title="Link to this definition"></a></dt>
<dd><p>Retrieve the load order of a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The load order of the plugin (the order in which the game loads it). If all plugins are enabled this</p>
</dd>
</dl>
<p>is the same as the priority but disabled plugins will have a load order of -1. This also returns -1
if the plugin does not exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.masters">
<span class="sig-name descname"><span class="pre">masters</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginList.masters" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of masters required for a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of masters for the plugin (filenames with extension, no path).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.onPluginMoved">
<span class="sig-name descname"><span class="pre">onPluginMoved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.onPluginMoved" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when a plugin is moved.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a plugin is moved. The first parameter is the plugin name, the
second the old priority of the plugin and the third one the new priority.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.onPluginStateChanged">
<span class="sig-name descname"><span class="pre">onPluginStateChanged</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.onPluginStateChanged" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when plugin states change.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when a plugin states change. The parameter is a map from plugin names to new
plugin states for the plugin whose states have changed.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.onRefreshed">
<span class="sig-name descname"><span class="pre">onRefreshed</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.onRefreshed" title="Link to this definition"></a></dt>
<dd><p>Install a new handler to be called when the list of plugins is refreshed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>callback</strong> The function to call when the list of plugins is refreshed.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the handler was installed properly (there are currently no reasons for this to fail).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.origin">
<span class="sig-name descname"><span class="pre">origin</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginList.origin" title="Link to this definition"></a></dt>
<dd><p>Retrieve the origin of a plugin. This is either the (internal) name of a mod, <cite>“overwrite”</cite> or <cite>“data”</cite>.</p>
<p>The internal name of a mod can differ from the display name for disambiguation.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The name of the origin of the plugin, or an empty string if the plugin does not exist.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.pluginNames">
<span class="sig-name descname"><span class="pre">pluginNames</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginList.pluginNames" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of all plugin names.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.priority">
<span class="sig-name descname"><span class="pre">priority</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.IPluginList.priority" title="Link to this definition"></a></dt>
<dd><p>Retrieve the priority of a plugin.</p>
<p>The higher the priority, the more important.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The priority of the given plugin, or -1 if the plugin does not exist.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.setLoadOrder">
<span class="sig-name descname"><span class="pre">setLoadOrder</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">loadorder</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginList.setLoadOrder" title="Link to this definition"></a></dt>
<dd><p>Set the load order.</p>
<p>Plugins not included in the list will be placed at highest priority in the order they
were before.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>loadorder</strong> The new load order, specified by the list of plugin names, sorted.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.setPriority">
<span class="sig-name descname"><span class="pre">setPriority</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">priority</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginList.setPriority" title="Link to this definition"></a></dt>
<dd><p>Change the priority of a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p></li>
<li><p><strong>priority</strong> New priority of the plugin.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True on success, False if the priority change was not possible. This is usually because</p>
</dd>
</dl>
<p>one of the parameters is invalid. The function returns true even if the plugin was not moved
at the specified priority (e.g. when trying to move a non-master plugin before a master one).</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.setState">
<span class="sig-name descname"><span class="pre">setState</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">state</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginList.setState" title="Link to this definition"></a></dt>
<dd><p>Set the state of a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p></li>
<li><p><strong>state</strong> New state of the plugin (<cite>INACTIVE</cite> or <cite>ACTIVE</cite>).</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginList.state">
<span class="sig-name descname"><span class="pre">state</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.IPluginList.state" title="Link to this definition"></a></dt>
<dd><p>Retrieve the state of a plugin.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>name</strong> Filename of the plugin (without path but with file extension).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The state of the plugin.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginModPage">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginModPage</span></span><a class="headerlink" href="#mobase.IPluginModPage" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p>
<p>Base class for all plugins.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginModPage._parentWidget">
<span class="sig-name descname"><span class="pre">_parentWidget</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></span><a class="headerlink" href="#mobase.IPluginModPage._parentWidget" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The parent widget.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginModPage.displayName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">displayName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginModPage.displayName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the page as displayed in the UI.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginModPage.handlesDownload">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">handlesDownload</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">page_url</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QUrl</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">download_url</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QUrl</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">fileinfo</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModRepositoryFileInfo" title="mobase.ModRepositoryFileInfo"><span class="pre">ModRepositoryFileInfo</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginModPage.handlesDownload" title="Link to this definition"></a></dt>
<dd><p>Check if the plugin handles the specified download.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>page_url</strong> URL of the page that contains the download link.</p></li>
<li><p><strong>download_url</strong> The download URL.</p></li>
<li><p><strong>fileinfo</strong> Not usable in python.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if this plugin wants to handle the specified download, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginModPage.icon">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">icon</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtGui.QIcon</span></span></span><a class="headerlink" href="#mobase.IPluginModPage.icon" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The icon to display with the page.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginModPage.pageURL">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">pageURL</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QUrl</span></span></span><a class="headerlink" href="#mobase.IPluginModPage.pageURL" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The URL to open when the user wants to visit this mod page.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginModPage.setParentWidget">
<span class="sig-name descname"><span class="pre">setParentWidget</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginModPage.setParentWidget" title="Link to this definition"></a></dt>
<dd><p>Set the parent widget for this mod page.</p>
<p>Python plugins usually do not need to re-implement this and can directly access the parent
widget using <cite>_parentWidget()</cite> once the UI has been initialized.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>parent</strong> The parent widget.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginModPage.useIntegratedBrowser">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">useIntegratedBrowser</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginModPage.useIntegratedBrowser" title="Link to this definition"></a></dt>
<dd><p>Indicates if the page should be displayed in the integrated browser.</p>
<p>Unless the page provides a special means of starting downloads (like the nxm:// url schema
on nexus), it will not be possible to handle downloads unless the integrated browser is used!</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the page should be opened in the integrated browser, False otherwise.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginPreview">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginPreview</span></span><a class="headerlink" href="#mobase.IPluginPreview" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p>
<p>These plugins add support for previewing files in the data pane. Right now all image formats supported
by qt are implemented (including dds) but no audio files and no 3d mesh formats.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginPreview.genDataPreview">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">genDataPreview</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">file_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QByteArray</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_size</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QSize</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></span><a class="headerlink" href="#mobase.IPluginPreview.genDataPreview" title="Link to this definition"></a></dt>
<dd><p>Generate a preview widget from in-memory data.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>file_data</strong> In-memory data to preview.</p></li>
<li><p><strong>filename</strong> Name of the file the data comes from.</p></li>
<li><p><strong>max_size</strong> Maximum size of the generated widget.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The widget showing a preview of the in-memory data.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginPreview.genFilePreview">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">genFilePreview</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_size</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QSize</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></span><a class="headerlink" href="#mobase.IPluginPreview.genFilePreview" title="Link to this definition"></a></dt>
<dd><p>Generate a preview widget for the specified file.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>filename</strong> Path to the file to preview.</p></li>
<li><p><strong>max_size</strong> Maximum size of the generated widget.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The widget showing a preview of the file.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginPreview.supportedExtensions">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">supportedExtensions</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">set</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IPluginPreview.supportedExtensions" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of file extensions that are supported by this preview plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginPreview.supportsArchives">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">supportsArchives</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IPluginPreview.supportsArchives" title="Link to this definition"></a></dt>
<dd><p>Check if this preview plugin supports preview from in-memory data.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the plugin supports preview from raw data, False otherwise.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginRequirement">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginRequirement</span></span><a class="headerlink" href="#mobase.IPluginRequirement" title="Link to this definition"></a></dt>
<dd><p>Class representing requirements for plugins.</p>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginRequirement.Problem">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">Problem</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">short_description</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">long_description</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPluginRequirement.Problem" title="Link to this definition"></a></dt>
<dd><p>Class representing a problem found by a requirement.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginRequirement.Problem.longDescription">
<span class="sig-name descname"><span class="pre">longDescription</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginRequirement.Problem.longDescription" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A long description of the problem.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginRequirement.Problem.shortDescription">
<span class="sig-name descname"><span class="pre">shortDescription</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginRequirement.Problem.shortDescription" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A short description of the problem.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginRequirement.check">
<span class="sig-name descname"><span class="pre">check</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">organizer</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IOrganizer" title="mobase.IOrganizer"><span class="pre">IOrganizer</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginRequirement.check" title="Link to this definition"></a></dt>
<dd><p>Check if the requirement is met, and return a problem if not.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>organizer</strong> The IOrganizer instance.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The problem found if the requirement is not met, otherwise None.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPluginTool">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPluginTool</span></span><a class="headerlink" href="#mobase.IPluginTool" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.IPlugin" title="mobase.IPlugin"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IPlugin</span></code></a></p>
<p>This is the simplest of plugin interfaces. Such plugins simply place an icon inside the tools sub-menu
and get invoked when the user clicks it. They are expected to have a user interface of some sort. These
are almost like independent applications except they can access all Mod Organizer interfaces like querying
and modifying the current profile, mod list, load order, use MO to install mods and so on. A tool plugin
can (and should!) integrate its UI as a window inside MO and thus doesnt have to initialize a windows
application itself.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginTool._parentWidget">
<span class="sig-name descname"><span class="pre">_parentWidget</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></span><a class="headerlink" href="#mobase.IPluginTool._parentWidget" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The parent widget.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginTool.display">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">display</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginTool.display" title="Link to this definition"></a></dt>
<dd><p>Called when the user starts the tool.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginTool.displayName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">displayName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginTool.displayName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The display name for this tool, as shown in the tool menu.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginTool.icon">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">icon</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtGui.QIcon</span></span></span><a class="headerlink" href="#mobase.IPluginTool.icon" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The icon for this tool, or a default-constructed QICon().</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginTool.setParentWidget">
<span class="sig-name descname"><span class="pre">setParentWidget</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.IPluginTool.setParentWidget" title="Link to this definition"></a></dt>
<dd><p>Set the parent widget for this tool.</p>
<p>Python plugins usually do not need to re-implement this and can directly access the parent
widget using <cite>_parentWidget()</cite> once the UI has been initialized.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>parent</strong> The parent widget.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPluginTool.tooltip">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">tooltip</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IPluginTool.tooltip" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The tooltip for this tool.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IProfile">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IProfile</span></span><a class="headerlink" href="#mobase.IProfile" title="Link to this definition"></a></dt>
<dd><p>Interface to interact with Mod Organizer 2 profiles.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IProfile.absoluteIniFilePath">
<span class="sig-name descname"><span class="pre">absoluteIniFilePath</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">inifile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IProfile.absoluteIniFilePath" title="Link to this definition"></a></dt>
<dd><p>Retrieve the absolute file path to the corresponding INI file for this profile.</p>
<p>If iniFile does not correspond to a file in the list of INI files for the
current game (as returned by IPluginGame::iniFiles), the path to the global
file will be returned (if iniFile is absolute, iniFile is returned, otherwise
the path is assumed relative to the game documents directory).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>inifile</strong> INI file to retrieve a path for. This can either be the name of a file or a path to the
absolute file outside of the profile.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The absolute path for the given INI file for this profile.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IProfile.absolutePath">
<span class="sig-name descname"><span class="pre">absolutePath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IProfile.absolutePath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The absolute path to the profile folder.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IProfile.invalidationActive">
<span class="sig-name descname"><span class="pre">invalidationActive</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">bool</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.IProfile.invalidationActive" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if automatic archive invalidation is enabled for this profile, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IProfile.localSavesEnabled">
<span class="sig-name descname"><span class="pre">localSavesEnabled</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IProfile.localSavesEnabled" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if profile-specific saves are enabled for this profile, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IProfile.localSettingsEnabled">
<span class="sig-name descname"><span class="pre">localSettingsEnabled</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.IProfile.localSettingsEnabled" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if profile-specific game settings are enabled for this profile, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IProfile.name">
<span class="sig-name descname"><span class="pre">name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.IProfile.name" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of this profile.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ISaveGame">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ISaveGame</span></span><a class="headerlink" href="#mobase.ISaveGame" title="Link to this definition"></a></dt>
<dd><p>Base class for information about what is in a save game.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGame.allFiles">
<span class="sig-name descname"><span class="pre">allFiles</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.ISaveGame.allFiles" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of all files related to this save.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGame.getCreationTime">
<span class="sig-name descname"><span class="pre">getCreationTime</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtCore.QDateTime</span></span></span><a class="headerlink" href="#mobase.ISaveGame.getCreationTime" title="Link to this definition"></a></dt>
<dd><p>Retrieve the creation time of the save.</p>
<p>The creation time of a save is not always the same as the creation time of
the file containing the save.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The creation time of the save.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGame.getFilepath">
<span class="sig-name descname"><span class="pre">getFilepath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></span><a class="headerlink" href="#mobase.ISaveGame.getFilepath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The path name to the (main) file or folder for the save.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGame.getName">
<span class="sig-name descname"><span class="pre">getName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ISaveGame.getName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of this save, for display purpose.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGame.getSaveGroupIdentifier">
<span class="sig-name descname"><span class="pre">getSaveGroupIdentifier</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ISaveGame.getSaveGroupIdentifier" title="Link to this definition"></a></dt>
<dd><p>Retrieve the name of the group this files belong to.</p>
<p>The name can be used to identify sets of saves to transfer between profiles. For
RPG games, this is usually the name of a character.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The group identifier for this save game.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ISaveGameInfoWidget">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ISaveGameInfoWidget</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtWidgets.QWidget</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ISaveGameInfoWidget" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">PyQt6.QtWidgets.QWidget</span></code></p>
<p>Base class for a save game info widget.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGameInfoWidget.__getattr__">
<span class="sig-name descname"><span class="pre">__getattr__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">arg0</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">object</span></span></span><a class="headerlink" href="#mobase.ISaveGameInfoWidget.__getattr__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGameInfoWidget._widget">
<span class="sig-name descname"><span class="pre">_widget</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></span><a class="headerlink" href="#mobase.ISaveGameInfoWidget._widget" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The underlying <cite>QWidget</cite>.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ISaveGameInfoWidget.setSave">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">setSave</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">save</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ISaveGame" title="mobase.ISaveGame"><span class="pre">ISaveGame</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.ISaveGameInfoWidget.setSave" title="Link to this definition"></a></dt>
<dd><p>Set the save file to display in this widget.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>save</strong> The save to display in the widget</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.InstallResult">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">InstallResult</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.InstallResult" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.InstallResult.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.InstallResult.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.InstallResult.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.InstallResult.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.InstallResult.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.InstallResult.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.InstallResult.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.InstallResult.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.InstallResult.CANCELED">
<span class="sig-name descname"><span class="pre">CANCELED</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.InstallResult.CANCELED" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.InstallResult.FAILED">
<span class="sig-name descname"><span class="pre">FAILED</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.InstallResult.FAILED" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.InstallResult.MANUAL_REQUESTED">
<span class="sig-name descname"><span class="pre">MANUAL_REQUESTED</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.InstallResult.MANUAL_REQUESTED" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.InstallResult.NOT_ATTEMPTED">
<span class="sig-name descname"><span class="pre">NOT_ATTEMPTED</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.InstallResult.NOT_ATTEMPTED" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.InstallResult.SUCCESS">
<span class="sig-name descname"><span class="pre">SUCCESS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.InstallResult.SUCCESS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.InstallResult.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.InstallResult.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.InstallResult.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.InstallResult.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">LoadOrderMechanism</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.LoadOrderMechanism" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.LoadOrderMechanism.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.LoadOrderMechanism.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.LoadOrderMechanism.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.LoadOrderMechanism.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.FILE_TIME">
<span class="sig-name descname"><span class="pre">FILE_TIME</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.LoadOrderMechanism.FILE_TIME" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.NONE">
<span class="sig-name descname"><span class="pre">NONE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.LoadOrderMechanism.NONE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.PLUGINS_TXT">
<span class="sig-name descname"><span class="pre">PLUGINS_TXT</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.LoadOrderMechanism.PLUGINS_TXT" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.LoadOrderMechanism.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.LoadOrderMechanism.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.LoadOrderMechanism.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.LocalSavegames">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">LocalSavegames</span></span><a class="headerlink" href="#mobase.LocalSavegames" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Base class for all game features, cannot be inherited, used only for typing
purpose in Python.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.LocalSavegames.mappings">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">mappings</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile_save_dir</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtCore.QDir</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.Mapping" title="mobase.Mapping"><span class="pre">Mapping</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.LocalSavegames.mappings" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.LocalSavegames.prepareProfile">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">prepareProfile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">profile</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IProfile" title="mobase.IProfile"><span class="pre">IProfile</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.LocalSavegames.prepareProfile" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.Mapping">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">Mapping</span></span><a class="headerlink" href="#mobase.Mapping" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">Mapping</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">source</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">destination</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_directory</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">create_target</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.Mapping.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.Mapping.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.Mapping.createTarget">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">createTarget</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">bool</span></em><a class="headerlink" href="#mobase.Mapping.createTarget" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.Mapping.destination">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">destination</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.Mapping.destination" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.Mapping.isDirectory">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isDirectory</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">bool</span></em><a class="headerlink" href="#mobase.Mapping.isDirectory" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.Mapping.source">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">source</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.Mapping.source" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ModDataChecker">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ModDataChecker</span></span><a class="headerlink" href="#mobase.ModDataChecker" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Game feature that is used to check the content of a data tree.</p>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">CheckReturn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.FIXABLE">
<span class="sig-name descname"><span class="pre">FIXABLE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.FIXABLE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.INVALID">
<span class="sig-name descname"><span class="pre">INVALID</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.INVALID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.VALID">
<span class="sig-name descname"><span class="pre">VALID</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.VALID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModDataChecker.CheckReturn.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModDataChecker.CheckReturn.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataChecker.dataLooksValid">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">dataLooksValid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filetree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModDataChecker" title="mobase.ModDataChecker"><span class="pre">ModDataChecker</span></a></span></span><a class="headerlink" href="#mobase.ModDataChecker.dataLooksValid" title="Link to this definition"></a></dt>
<dd><p>Check that the given filetree represent a valid mod layout, or can be easily
fixed.</p>
<p>This method is mainly used during installation (to find which installer should
be used or to recurse into multi-level archives), or to quickly indicates to a
user if a mod looks valid.</p>
<p>This method does not have to be exact, it only has to indicate if the given tree
looks like a valid mod or not by quickly checking the structure (heavy operations
should be avoided).</p>
<p>If the tree can be fixed by the <cite>fix()</cite> method, this method should return <cite>FIXABLE</cite>.
<cite>FIXABLE</cite> should only be returned when it is guaranteed that <cite>fix()</cite> can fix the tree.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filetree</strong> The tree starting at the root of the “data” folder.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Whether the tree is invalid, fixable or valid.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataChecker.fix">
<span class="sig-name descname"><span class="pre">fix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filetree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.ModDataChecker.fix" title="Link to this definition"></a></dt>
<dd><p>Try to fix the given tree.</p>
<p>This method is used during installation to try to fix invalid archives and will only be
called if dataLooksValid returned <cite>FIXABLE</cite>.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filetree</strong> The tree to try to fix. Can be modified during the process.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The fixed tree, or a null pointer if the tree could not be fixed.</p>
</dd>
</dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModDataChecker.FIXABLE">
<span class="sig-name descname"><span class="pre">FIXABLE</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.ModDataChecker.CheckReturn" title="mobase.ModDataChecker.CheckReturn"><span class="pre">ModDataChecker.CheckReturn</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModDataChecker.FIXABLE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModDataChecker.INVALID">
<span class="sig-name descname"><span class="pre">INVALID</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.ModDataChecker.CheckReturn" title="mobase.ModDataChecker.CheckReturn"><span class="pre">ModDataChecker.CheckReturn</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModDataChecker.INVALID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModDataChecker.VALID">
<span class="sig-name descname"><span class="pre">VALID</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.ModDataChecker.CheckReturn" title="mobase.ModDataChecker.CheckReturn"><span class="pre">ModDataChecker.CheckReturn</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModDataChecker.VALID" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ModDataContent">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ModDataContent</span></span><a class="headerlink" href="#mobase.ModDataContent" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>The ModDataContent feature is used (when available) to indicate to users the content
of mods in the “Content” column.</p>
<p>The feature exposes a list of possible content types, each associated with an ID, a name
and an icon. The icon is the path to either:</p>
<blockquote>
<div><ul class="simple">
<li><p>A Qt resource or;</p></li>
<li><p>A file on the disk.</p></li>
</ul>
</div></blockquote>
<p>In order to facilitate the implementation, MO2 already provides a set of icons that can
be used. Those icons are all under <code class="docutils literal notranslate"><span class="pre">:/MO/gui/content</span></code> (e.g. <code class="docutils literal notranslate"><span class="pre">:/MO/gui/content/plugin</span></code> or <code class="docutils literal notranslate"><span class="pre">:/MO/gui/content/music</span></code> <a href="#id1"><span class="problematic" id="id2">`</span></a>).</p>
<p>The list of available icons is:</p>
<blockquote>
<div><ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">plugin</span></code>: <img alt="plugin-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/jigsaw-piece.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">skyproc</span></code>: <img alt="skyproc-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/hand-of-god.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">texture</span></code>: <img alt="texture-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/empty-chessboard.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">music</span></code>: <img alt="music-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/double-quaver.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">sound</span></code>: <img alt="sound-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/lyre.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">interface</span></code>: <img alt="interface-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/usable.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">skse</span></code>: <img alt="skse-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/checkbox-tree.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">script</span></code>: <img alt="script-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/tinker.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">mesh</span></code>: <img alt="mesh-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/breastplate.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">string</span></code>: <img alt="string-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/conversation.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">bsa</span></code>: <img alt="bsa-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/locked-chest.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">menu</span></code>: <img alt="menu-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/config.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">inifile</span></code>: <img alt="inifile-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/feather-and-scroll.png" /></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">modgroup</span></code>: <img alt="modgroup-icon" src="https://raw.githubusercontent.com/ModOrganizer2/modorganizer/master/src/resources/contents/xedit.png" /></p></li>
</ul>
</div></blockquote>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ModDataContent.Content">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">Content</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">icon</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">filter_only</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ModDataContent.Content" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataContent.Content.isOnlyForFilter">
<span class="sig-name descname"><span class="pre">isOnlyForFilter</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModDataContent.Content.isOnlyForFilter" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this content is only meant to be used as a filter criteria.</p>
</dd>
</dl>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModDataContent.Content.icon">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">icon</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModDataContent.Content.icon" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModDataContent.Content.id">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">id</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModDataContent.Content.id" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModDataContent.Content.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModDataContent.Content.name" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataContent.getAllContents">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getAllContents</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.ModDataContent" title="mobase.ModDataContent"><span class="pre">ModDataContent</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.ModDataContent.getAllContents" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The list of all possible contents for the corresponding game.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModDataContent.getContentsFor">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getContentsFor</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filetree</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IFileTree" title="mobase.IFileTree"><span class="pre">IFileTree</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.ModDataContent.getContentsFor" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of contents in the given tree.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filetree</strong> The tree corresponding to the mod to retrieve contents for.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The IDs of the content in the given tree.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ModRepositoryFileInfo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModRepositoryFileInfo" title="mobase.ModRepositoryFileInfo"><span class="pre">ModRepositoryFileInfo</span></a></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ModRepositoryFileInfo" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ModRepositoryFileInfo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mod_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">file_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ModRepositoryFileInfo.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.createFromJson">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">createFromJson</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModRepositoryFileInfo" title="mobase.ModRepositoryFileInfo"><span class="pre">ModRepositoryFileInfo</span></a></span></span><a class="headerlink" href="#mobase.ModRepositoryFileInfo.createFromJson" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.categoryID">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">categoryID</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.categoryID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.description">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">description</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.description" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.fileCategory">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fileCategory</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.fileCategory" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.fileID">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fileID</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.fileID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.fileName">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fileName</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.fileName" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.fileSize">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fileSize</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.fileSize" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.fileTime">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fileTime</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDateTime</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.fileTime" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.gameName">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameName</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.gameName" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.modID">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">modID</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.modID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.modName">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">modName</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.modName" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.name" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.newestVersion">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">newestVersion</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.newestVersion" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.repository">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">repository</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.repository" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.uri">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">uri</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.uri" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.userData">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">userData</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">MoVariant</span></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.userData" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModRepositoryFileInfo.version">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">version</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></em><a class="headerlink" href="#mobase.ModRepositoryFileInfo.version" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ModState">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ModState</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ModState" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__and__">
<span class="sig-name descname"><span class="pre">__and__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.ModState.__and__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModState.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__ge__">
<span class="sig-name descname"><span class="pre">__ge__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModState.__ge__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__gt__">
<span class="sig-name descname"><span class="pre">__gt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModState.__gt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.ModState.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__invert__">
<span class="sig-name descname"><span class="pre">__invert__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.ModState.__invert__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__le__">
<span class="sig-name descname"><span class="pre">__le__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModState.__le__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__lt__">
<span class="sig-name descname"><span class="pre">__lt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModState.__lt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ModState.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__or__">
<span class="sig-name descname"><span class="pre">__or__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.ModState.__or__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__rand__">
<span class="sig-name descname"><span class="pre">__rand__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.ModState.__rand__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__ror__">
<span class="sig-name descname"><span class="pre">__ror__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.ModState.__ror__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__rxor__">
<span class="sig-name descname"><span class="pre">__rxor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.ModState.__rxor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ModState.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ModState.__xor__">
<span class="sig-name descname"><span class="pre">__xor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ModState" title="mobase.ModState"><span class="pre">ModState</span></a></span></span><a class="headerlink" href="#mobase.ModState.__xor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModState.ACTIVE">
<span class="sig-name descname"><span class="pre">ACTIVE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModState.ACTIVE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModState.ALTERNATE">
<span class="sig-name descname"><span class="pre">ALTERNATE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModState.ALTERNATE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModState.EMPTY">
<span class="sig-name descname"><span class="pre">EMPTY</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModState.EMPTY" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModState.ENDORSED">
<span class="sig-name descname"><span class="pre">ENDORSED</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModState.ENDORSED" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModState.ESSENTIAL">
<span class="sig-name descname"><span class="pre">ESSENTIAL</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModState.ESSENTIAL" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModState.EXISTS">
<span class="sig-name descname"><span class="pre">EXISTS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModState.EXISTS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ModState.VALID">
<span class="sig-name descname"><span class="pre">VALID</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ModState.VALID" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModState.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ModState.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ModState.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ModState.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.PluginRequirementFactory">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">PluginRequirementFactory</span></span><a class="headerlink" href="#mobase.PluginRequirementFactory" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginRequirementFactory.basic">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">basic</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">checker</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#mobase.IOrganizer" title="mobase.IOrganizer"><span class="pre">IOrganizer</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">bool</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">description</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a></span></span><a class="headerlink" href="#mobase.PluginRequirementFactory.basic" title="Link to this definition"></a></dt>
<dd><p>Create a basic requirement.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>checker</strong> The callable to use to check if the requirement is met. Should return True
if the requirement is met, False otherwise.</p></li>
<li><p><strong>description</strong> The description of the problem, when the requirement is not met.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The constructed requirement.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginRequirementFactory.diagnose">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">diagnose</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">diagnose</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.IPluginDiagnose" title="mobase.IPluginDiagnose"><span class="pre">IPluginDiagnose</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a></span></span><a class="headerlink" href="#mobase.PluginRequirementFactory.diagnose" title="Link to this definition"></a></dt>
<dd><p>Construct a requirement from a diagnose plugin.</p>
<p>If the wrapped diagnose plugin reports a problem, the requirement fails
and the associated message is the one from the diagnose plugin (or the
list of messages if multiple problems were reported).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>diagnose</strong> The diagnose plugin to wrap in this requirement.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The constructed requirement.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginRequirementFactory.gameDependency">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameDependency</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">games</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a></span></span><a class="headerlink" href="#mobase.PluginRequirementFactory.gameDependency" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">gameDependency</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">game</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a></span></span></dt>
<dd><p>Create a new game dependency requirement.</p>
<p>The requirement is met when the managed game is the specified game.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>game</strong> The name of the required game.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The constructed requirement.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginRequirementFactory.pluginDependency">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">pluginDependency</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugins</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a></span></span><a class="headerlink" href="#mobase.PluginRequirementFactory.pluginDependency" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">pluginDependency</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plugin</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><span class="pre">IPluginRequirement</span></a></span></span></dt>
<dd><p>Create a new plugin dependency requirement.</p>
<p>The requirement is met when the specified plugin is enabled.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>plugin</strong> The name of the plugin that must be enabled.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The constructed requirement.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.PluginSetting">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">PluginSetting</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">description</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default_value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">MoVariant</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.PluginSetting" title="Link to this definition"></a></dt>
<dd><p>Class to hold the user-configurable parameters a plugin accepts. The purpose of this class is
only to inform the application what settings to offer to the user, it does not hold the actual value.</p>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.PluginSetting.default_value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">default_value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">MoVariant</span></em><a class="headerlink" href="#mobase.PluginSetting.default_value" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.PluginSetting.description">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">description</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.PluginSetting.description" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.PluginSetting.key">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.PluginSetting.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.PluginState">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">PluginState</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.PluginState" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__and__">
<span class="sig-name descname"><span class="pre">__and__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.PluginState.__and__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.PluginState.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__ge__">
<span class="sig-name descname"><span class="pre">__ge__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.PluginState.__ge__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__gt__">
<span class="sig-name descname"><span class="pre">__gt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.PluginState.__gt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.PluginState.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__invert__">
<span class="sig-name descname"><span class="pre">__invert__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.PluginState.__invert__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__le__">
<span class="sig-name descname"><span class="pre">__le__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.PluginState.__le__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__lt__">
<span class="sig-name descname"><span class="pre">__lt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.PluginState.__lt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.PluginState.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__or__">
<span class="sig-name descname"><span class="pre">__or__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.PluginState.__or__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__rand__">
<span class="sig-name descname"><span class="pre">__rand__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.PluginState.__rand__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__ror__">
<span class="sig-name descname"><span class="pre">__ror__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.PluginState.__ror__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__rxor__">
<span class="sig-name descname"><span class="pre">__rxor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.PluginState.__rxor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.PluginState.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.PluginState.__xor__">
<span class="sig-name descname"><span class="pre">__xor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.PluginState" title="mobase.PluginState"><span class="pre">PluginState</span></a></span></span><a class="headerlink" href="#mobase.PluginState.__xor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.PluginState.ACTIVE">
<span class="sig-name descname"><span class="pre">ACTIVE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.PluginState.ACTIVE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.PluginState.INACTIVE">
<span class="sig-name descname"><span class="pre">INACTIVE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.PluginState.INACTIVE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.PluginState.MISSING">
<span class="sig-name descname"><span class="pre">MISSING</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.PluginState.MISSING" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.PluginState.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.PluginState.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.PluginState.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.PluginState.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ProfileSetting">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ProfileSetting</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ProfileSetting" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__and__">
<span class="sig-name descname"><span class="pre">__and__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></span><a class="headerlink" href="#mobase.ProfileSetting.__and__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__ge__">
<span class="sig-name descname"><span class="pre">__ge__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__ge__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__gt__">
<span class="sig-name descname"><span class="pre">__gt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__gt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__invert__">
<span class="sig-name descname"><span class="pre">__invert__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></span><a class="headerlink" href="#mobase.ProfileSetting.__invert__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__le__">
<span class="sig-name descname"><span class="pre">__le__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__le__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__lt__">
<span class="sig-name descname"><span class="pre">__lt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__lt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__or__">
<span class="sig-name descname"><span class="pre">__or__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></span><a class="headerlink" href="#mobase.ProfileSetting.__or__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__rand__">
<span class="sig-name descname"><span class="pre">__rand__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></span><a class="headerlink" href="#mobase.ProfileSetting.__rand__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__ror__">
<span class="sig-name descname"><span class="pre">__ror__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></span><a class="headerlink" href="#mobase.ProfileSetting.__ror__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__rxor__">
<span class="sig-name descname"><span class="pre">__rxor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></span><a class="headerlink" href="#mobase.ProfileSetting.__rxor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ProfileSetting.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ProfileSetting.__xor__">
<span class="sig-name descname"><span class="pre">__xor__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ProfileSetting" title="mobase.ProfileSetting"><span class="pre">ProfileSetting</span></a></span></span><a class="headerlink" href="#mobase.ProfileSetting.__xor__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ProfileSetting.CONFIGURATION">
<span class="sig-name descname"><span class="pre">CONFIGURATION</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ProfileSetting.CONFIGURATION" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ProfileSetting.MODS">
<span class="sig-name descname"><span class="pre">MODS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ProfileSetting.MODS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ProfileSetting.PREFER_DEFAULTS">
<span class="sig-name descname"><span class="pre">PREFER_DEFAULTS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ProfileSetting.PREFER_DEFAULTS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ProfileSetting.SAVEGAMES">
<span class="sig-name descname"><span class="pre">SAVEGAMES</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ProfileSetting.SAVEGAMES" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ProfileSetting.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ProfileSetting.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ProfileSetting.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ProfileSetting.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ReleaseType">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ReleaseType</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.ReleaseType" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ReleaseType.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ReleaseType.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ReleaseType.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.ReleaseType.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ReleaseType.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ReleaseType.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ReleaseType.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ReleaseType.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ReleaseType.ALPHA">
<span class="sig-name descname"><span class="pre">ALPHA</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ReleaseType.ALPHA" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ReleaseType.BETA">
<span class="sig-name descname"><span class="pre">BETA</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ReleaseType.BETA" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ReleaseType.CANDIDATE">
<span class="sig-name descname"><span class="pre">CANDIDATE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ReleaseType.CANDIDATE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ReleaseType.FINAL">
<span class="sig-name descname"><span class="pre">FINAL</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ReleaseType.FINAL" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.ReleaseType.PRE_ALPHA">
<span class="sig-name descname"><span class="pre">PRE_ALPHA</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.ReleaseType.PRE_ALPHA" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ReleaseType.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.ReleaseType.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.ReleaseType.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.ReleaseType.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.SaveGameInfo">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">SaveGameInfo</span></span><a class="headerlink" href="#mobase.SaveGameInfo" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Feature to get hold of stuff to do with save games.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.SaveGameInfo.getMissingAssets">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getMissingAssets</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">save</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ISaveGame" title="mobase.ISaveGame"><span class="pre">ISaveGame</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.SaveGameInfo.getMissingAssets" title="Link to this definition"></a></dt>
<dd><p>Retrieve missing assets from the save.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>save</strong> The save to find missing assets for.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A collection of missing assets and the modules that can supply those assets.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.SaveGameInfo.getSaveGameWidget">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getSaveGameWidget</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">PyQt6.QtWidgets.QWidget</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.ISaveGameInfoWidget" title="mobase.ISaveGameInfoWidget"><span class="pre">ISaveGameInfoWidget</span></a><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.SaveGameInfo.getSaveGameWidget" title="Link to this definition"></a></dt>
<dd><p>Retrieve a widget to display over the save game list.</p>
<p>This method is allowed to return <cite>None</cite> in case no widget has been implemented.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>parent</strong> The parent widget.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A SaveGameInfoWidget to display information about save game.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.ScriptExtender">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">ScriptExtender</span></span><a class="headerlink" href="#mobase.ScriptExtender" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Base class for all game features, cannot be inherited, used only for typing
purpose in Python.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.binaryName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">binaryName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.binaryName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The name of the script extender binary.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.getArch">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getArch</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.getArch" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The CPU platform of the extender.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.getExtenderVersion">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">getExtenderVersion</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.getExtenderVersion" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The version of the script extender.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.isInstalled">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">isInstalled</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.isInstalled" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the script extender is installed, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.loaderName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">loaderName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.loaderName" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The loader to use to ensure the game runs with the script extender.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.loaderPath">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">loaderPath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.loaderPath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The full path to the script extender loader.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.pluginPath">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">pluginPath</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QDir</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.pluginPath" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The script extender plugin path, relative to the data folder.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.ScriptExtender.savegameExtension">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">savegameExtension</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.ScriptExtender.savegameExtension" title="Link to this definition"></a></dt>
<dd><p>Retrieve the extension of script extender save files.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The extension of script extender save files (e.g. “skse”).</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.SortMechanism">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">SortMechanism</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.SortMechanism" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.SortMechanism.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.SortMechanism.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.SortMechanism.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.SortMechanism.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.SortMechanism.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.SortMechanism.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.SortMechanism.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.SortMechanism.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.SortMechanism.BOSS">
<span class="sig-name descname"><span class="pre">BOSS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.SortMechanism.BOSS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.SortMechanism.LOOT">
<span class="sig-name descname"><span class="pre">LOOT</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.SortMechanism.LOOT" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.SortMechanism.MLOX">
<span class="sig-name descname"><span class="pre">MLOX</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.SortMechanism.MLOX" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.SortMechanism.NONE">
<span class="sig-name descname"><span class="pre">NONE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.SortMechanism.NONE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.SortMechanism.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.SortMechanism.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.SortMechanism.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.SortMechanism.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.TrackedState">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">TrackedState</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.TrackedState" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.TrackedState.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__ge__">
<span class="sig-name descname"><span class="pre">__ge__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.TrackedState" title="mobase.TrackedState"><span class="pre">TrackedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.TrackedState.__ge__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__gt__">
<span class="sig-name descname"><span class="pre">__gt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.TrackedState" title="mobase.TrackedState"><span class="pre">TrackedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.TrackedState.__gt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.TrackedState.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__le__">
<span class="sig-name descname"><span class="pre">__le__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.TrackedState" title="mobase.TrackedState"><span class="pre">TrackedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.TrackedState.__le__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__lt__">
<span class="sig-name descname"><span class="pre">__lt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.TrackedState" title="mobase.TrackedState"><span class="pre">TrackedState</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.TrackedState.__lt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.TrackedState.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.TrackedState.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.TrackedState.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.TrackedState.TRACKED_FALSE">
<span class="sig-name descname"><span class="pre">TRACKED_FALSE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.TrackedState.TRACKED_FALSE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.TrackedState.TRACKED_TRUE">
<span class="sig-name descname"><span class="pre">TRACKED_TRUE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.TrackedState.TRACKED_TRUE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.TrackedState.TRACKED_UNKNOWN">
<span class="sig-name descname"><span class="pre">TRACKED_UNKNOWN</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.TrackedState.TRACKED_UNKNOWN" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.TrackedState.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.TrackedState.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.TrackedState.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.TrackedState.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.UnmanagedMods">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">UnmanagedMods</span></span><a class="headerlink" href="#mobase.UnmanagedMods" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#mobase.GameFeature" title="mobase.GameFeature"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GameFeature</span></code></a></p>
<p>Base class for all game features, cannot be inherited, used only for typing
purpose in Python.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.UnmanagedMods.displayName">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">displayName</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.UnmanagedMods.displayName" title="Link to this definition"></a></dt>
<dd><p>Retrieve the display name of a given mod.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>mod_name</strong> Internal name of the mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The display name of the mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.UnmanagedMods.mods">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">mods</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">official_only</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.UnmanagedMods.mods" title="Link to this definition"></a></dt>
<dd><p>Retrieve the list of unmanaged mods for the corresponding game.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>official_only</strong> Retrieve only unmanaged official mods.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of unmanaged mods (internal names).</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.UnmanagedMods.referenceFile">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">referenceFile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></span><a class="headerlink" href="#mobase.UnmanagedMods.referenceFile" title="Link to this definition"></a></dt>
<dd><p>Retrieve the reference file for the requested mod.</p>
<p>Example: For Bethesda games, the reference file may be the main
plugin (esp or esm) for the game or a DLCs.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>mod_name</strong> Internal name of the mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The reference file (absolute path) for the requested mod.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.UnmanagedMods.secondaryFiles">
<em class="property"><span class="k"><span class="pre">abstractmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">secondaryFiles</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mod_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#mobase.UnmanagedMods.secondaryFiles" title="Link to this definition"></a></dt>
<dd><p>Retrieve the secondary files for the requested mod.</p>
<p>Example: For Bethesda games, the secondary files may be the archives
corresponding to the reference file.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>mod_name</strong> Internal name of the mod.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The secondary files (absolute paths) for the request mod.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.VersionInfo">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">VersionInfo</span></span><a class="headerlink" href="#mobase.VersionInfo" title="Link to this definition"></a></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">VersionInfo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">scheme</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionScheme" title="mobase.VersionScheme"><span class="pre">VersionScheme</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">VersionScheme.DISCOVER</span></span></em><span class="sig-paren">)</span></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">VersionInfo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">major</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">minor</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">subminor</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">subsubminor</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">release_type</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ReleaseType" title="mobase.ReleaseType"><span class="pre">ReleaseType</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">ReleaseType.FINAL</span></span></em><span class="sig-paren">)</span></dt>
<dt class="sig sig-object py">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">VersionInfo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">major</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">minor</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">subminor</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">release_type</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.ReleaseType" title="mobase.ReleaseType"><span class="pre">ReleaseType</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">ReleaseType.FINAL</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Represents the version of a mod or plugin.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionInfo.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.__ge__">
<span class="sig-name descname"><span class="pre">__ge__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">arg0</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionInfo.__ge__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.__gt__">
<span class="sig-name descname"><span class="pre">__gt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">arg0</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionInfo.__gt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.__le__">
<span class="sig-name descname"><span class="pre">__le__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">arg0</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionInfo.__le__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.__lt__">
<span class="sig-name descname"><span class="pre">__lt__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">arg0</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionInfo" title="mobase.VersionInfo"><span class="pre">VersionInfo</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionInfo.__lt__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionInfo.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.VersionInfo.__str__" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>See <cite>canonicalString()</cite>.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.canonicalString">
<span class="sig-name descname"><span class="pre">canonicalString</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.VersionInfo.canonicalString" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A canonical string representing this version, that can be stored and then parsed using the parse() method.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.clear">
<span class="sig-name descname"><span class="pre">clear</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.VersionInfo.clear" title="Link to this definition"></a></dt>
<dd><p>Resets this VersionInfo to an invalid version.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.displayString">
<span class="sig-name descname"><span class="pre">displayString</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">forced_segments</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">2</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.VersionInfo.displayString" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>forced_segments</strong> The number of version segments to display even if the version is 0. 1 is major, 2 is major
and minor, etc. The only implemented ranges are (-inf,2] for major/minor, [3] for major/minor/subminor,
and [4,inf) for major/minor/subminor/subsubminor. This only versions with a regular scheme.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A string for display to the user. The returned string may not contain enough information to reconstruct this version info.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.isValid">
<span class="sig-name descname"><span class="pre">isValid</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionInfo.isValid" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this VersionInfo is valid, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.parse">
<span class="sig-name descname"><span class="pre">parse</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">scheme</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#mobase.VersionScheme" title="mobase.VersionScheme"><span class="pre">VersionScheme</span></a></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">VersionScheme.DISCOVER</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_manual</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#mobase.VersionInfo.parse" title="Link to this definition"></a></dt>
<dd><p>Update this VersionInfo by parsing the given string using the given scheme.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>value</strong> String to parse.</p></li>
<li><p><strong>scheme</strong> Scheme to use to parse the string.</p></li>
<li><p><strong>is_manual</strong> True if the given string should be treated as user input.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionInfo.scheme">
<span class="sig-name descname"><span class="pre">scheme</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#mobase.VersionScheme" title="mobase.VersionScheme"><span class="pre">VersionScheme</span></a></span></span><a class="headerlink" href="#mobase.VersionInfo.scheme" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The version scheme in effect for this VersionInfo.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.VersionScheme">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">VersionScheme</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwds</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.VersionScheme" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">enum.Enum</span></code></p>
<p>Create a collection of name/value pairs.</p>
<p>Example enumeration:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span><span class="w"> </span><span class="nc">Color</span><span class="p">(</span><span class="n">Enum</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">RED</span> <span class="o">=</span> <span class="mi">1</span>
<span class="gp">... </span> <span class="n">BLUE</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">... </span> <span class="n">GREEN</span> <span class="o">=</span> <span class="mi">3</span>
</pre></div>
</div>
<p>Access them by:</p>
<ul>
<li><p>attribute access:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="o">.</span><span class="n">RED</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>value lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
<li><p>name lookup:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">Color</span><span class="p">[</span><span class="s1">&#39;RED&#39;</span><span class="p">]</span>
<span class="go">&lt;Color.RED: 1&gt;</span>
</pre></div>
</div>
</li>
</ul>
<p>Enumerations can be iterated over, and know how many members they have:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">len</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">3</span>
</pre></div>
</div>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="nb">list</span><span class="p">(</span><span class="n">Color</span><span class="p">)</span>
<span class="go">[&lt;Color.RED: 1&gt;, &lt;Color.BLUE: 2&gt;, &lt;Color.GREEN: 3&gt;]</span>
</pre></div>
</div>
<p>Methods can be added to enumerations, and members can have their own
attributes see the documentation for details.</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionScheme.__eq__">
<span class="sig-name descname"><span class="pre">__eq__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionScheme.__eq__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionScheme.__int__">
<span class="sig-name descname"><span class="pre">__int__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#mobase.VersionScheme.__int__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionScheme.__ne__">
<span class="sig-name descname"><span class="pre">__ne__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#mobase.VersionScheme.__ne__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.VersionScheme.__str__">
<span class="sig-name descname"><span class="pre">__str__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.VersionScheme.__str__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.VersionScheme.DATE">
<span class="sig-name descname"><span class="pre">DATE</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.VersionScheme.DATE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.VersionScheme.DECIMAL_MARK">
<span class="sig-name descname"><span class="pre">DECIMAL_MARK</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.VersionScheme.DECIMAL_MARK" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.VersionScheme.DISCOVER">
<span class="sig-name descname"><span class="pre">DISCOVER</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.VersionScheme.DISCOVER" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.VersionScheme.LITERAL">
<span class="sig-name descname"><span class="pre">LITERAL</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.VersionScheme.LITERAL" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.VersionScheme.NUMBERS_AND_LETTERS">
<span class="sig-name descname"><span class="pre">NUMBERS_AND_LETTERS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.VersionScheme.NUMBERS_AND_LETTERS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="mobase.VersionScheme.REGULAR">
<span class="sig-name descname"><span class="pre">REGULAR</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.VersionScheme.REGULAR" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.VersionScheme.name">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">str</span></em><a class="headerlink" href="#mobase.VersionScheme.name" title="Link to this definition"></a></dt>
<dd><p>The name of the Enum member.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="mobase.VersionScheme.value">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">value</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><a class="headerlink" href="#mobase.VersionScheme.value" title="Link to this definition"></a></dt>
<dd><p>The value of the Enum member.</p>
</dd></dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="mobase.getFileVersion">
<span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">getFileVersion</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filepath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.getFileVersion" title="Link to this definition"></a></dt>
<dd><p>Retrieve the file version of the given executable.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>filepath</strong> Absolute path to the executable.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The file version, or an empty string if the file version could not be retrieved.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="mobase.getIconForExecutable">
<span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">getIconForExecutable</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">executable</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">PyQt6.QtGui.QIcon</span></span></span><a class="headerlink" href="#mobase.getIconForExecutable" title="Link to this definition"></a></dt>
<dd><p>Retrieve the icon of an executable. Currently this always extracts the biggest icon.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>executable</strong> Absolute path to the executable.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The icon for this executable, if any.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="mobase.getProductVersion">
<span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">getProductVersion</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">executable</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">os.PathLike</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">PyQt6.QtCore.QFileInfo</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#mobase.getProductVersion" title="Link to this definition"></a></dt>
<dd><p>Retrieve the product version of the given executable.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>executable</strong> Absolute path to the executable.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The product version, or an empty string if the product version could not be retrieved.</p>
</dd>
</dl>
</dd></dl>
<dl class="py data">
<dt class="sig sig-object py" id="mobase.GameFeatureType">
<span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">GameFeatureType</span></span><a class="headerlink" href="#mobase.GameFeatureType" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py data">
<dt class="sig sig-object py" id="mobase.INVALID_HANDLE_VALUE">
<span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">INVALID_HANDLE_VALUE</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">int</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">Ellipsis</span></em><a class="headerlink" href="#mobase.INVALID_HANDLE_VALUE" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py data">
<dt class="sig sig-object py" id="mobase.MoVariant">
<span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">MoVariant</span></span><a class="headerlink" href="#mobase.MoVariant" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py data">
<dt class="sig sig-object py" id="mobase.__version__">
<span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">__version__</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'2.5.2'</span></em><a class="headerlink" href="#mobase.__version__" title="Link to this definition"></a></dt>
<dd></dd></dl>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="../index.html" class="btn btn-neutral float-left" title="API Reference" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="widgets/index.html" class="btn btn-neutral float-right" title="mobase.widgets" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2023, Holt59.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>