18#ifndef INCLUDED_MODINSTALLER
19#define INCLUDED_MODINSTALLER
64 const std::shared_ptr<ScriptContext>& scriptContext,
77 return ext ==
".pyromod" || ext ==
".zip";
Install a mod into the mods directory.
Definition: ModInstaller.h:33
VfsPath m_CacheDir
Definition: ModInstaller.h:84
const std::vector< CStr > & GetInstalledMods() const
Definition: ModInstaller.cpp:137
PIVFS m_VFS
Definition: ModInstaller.h:81
~CModInstaller()
Definition: ModInstaller.cpp:47
OsPath m_TempDir
Definition: ModInstaller.h:83
std::vector< CStr > m_InstalledMods
Definition: ModInstaller.h:85
static bool IsDefaultModExtension(const Path &ext)
Definition: ModInstaller.h:75
ModInstallationResult Install(const OsPath &mod, const std::shared_ptr< ScriptContext > &scriptContext, bool keepFile)
Process and unpack the mod.
Definition: ModInstaller.cpp:53
OsPath m_ModsDir
Definition: ModInstaller.h:82
CModInstaller(const OsPath &modsdir, const OsPath &tempdir)
Initialise the mod installer for processing the given mod.
Definition: ModInstaller.cpp:40
ModInstallationResult
Definition: ModInstaller.h:36
@ FAIL_ON_VFS_MOUNT
Definition: ModInstaller.h:38
@ FAIL_ON_MOD_LOAD
Definition: ModInstaller.h:39
@ FAIL_ON_PARSE_JSON
Definition: ModInstaller.h:40
@ FAIL_ON_MOD_COPY
Definition: ModInstaller.h:44
@ FAIL_ON_MOD_MOVE
Definition: ModInstaller.h:42
@ FAIL_ON_JSON_WRITE
Definition: ModInstaller.h:43
@ FAIL_ON_EXTRACT_NAME
Definition: ModInstaller.h:41
@ SUCCESS
Definition: ModInstaller.h:37
Abstraction around a SpiderMonkey JSContext.
Definition: ScriptContext.h:46
std::shared_ptr< IVFS > PIVFS
Definition: vfs.h:220