summaryrefslogtreecommitdiffstats
path: root/src/core/loader/loader.h
diff options
context:
space:
mode:
authorbunnei <ericbunnie@gmail.com>2014-06-17 00:03:13 +0200
committerbunnei <ericbunnie@gmail.com>2014-06-17 00:03:13 +0200
commit0aca202ae936d3fccbab34f36d9246e0598849a5 (patch)
treefff4a16ed505ebddcc3048cf734db0237839d338 /src/core/loader/loader.h
parentLoader: Added stubbed detection of CXI and CCI files. (diff)
downloadyuzu-0aca202ae936d3fccbab34f36d9246e0598849a5.tar
yuzu-0aca202ae936d3fccbab34f36d9246e0598849a5.tar.gz
yuzu-0aca202ae936d3fccbab34f36d9246e0598849a5.tar.bz2
yuzu-0aca202ae936d3fccbab34f36d9246e0598849a5.tar.lz
yuzu-0aca202ae936d3fccbab34f36d9246e0598849a5.tar.xz
yuzu-0aca202ae936d3fccbab34f36d9246e0598849a5.tar.zst
yuzu-0aca202ae936d3fccbab34f36d9246e0598849a5.zip
Diffstat (limited to 'src/core/loader/loader.h')
-rw-r--r--src/core/loader/loader.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/core/loader/loader.h b/src/core/loader/loader.h
new file mode 100644
index 000000000..9d4aaa874
--- /dev/null
+++ b/src/core/loader/loader.h
@@ -0,0 +1,54 @@
+// Copyright 2014 Citra Emulator Project
+// Licensed under GPLv2
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include "common/common.h"
+
+////////////////////////////////////////////////////////////////////////////////////////////////////
+
+namespace Loader {
+
+enum FileType {
+ FILETYPE_ERROR,
+
+ FILETYPE_CTR_CCI,
+ FILETYPE_CTR_CIA,
+ FILETYPE_CTR_CXI,
+ FILETYPE_CTR_ELF,
+ FILETYPE_CTR_BIN,
+
+ FILETYPE_LAUNCHER_DAT,
+
+ FILETYPE_DIRECTORY_CXI,
+
+ FILETYPE_UNKNOWN_BIN,
+ FILETYPE_UNKNOWN_ELF,
+
+ FILETYPE_ARCHIVE_RAR,
+ FILETYPE_ARCHIVE_ZIP,
+
+ FILETYPE_NORMAL_DIRECTORY,
+
+ FILETYPE_UNKNOWN
+};
+
+////////////////////////////////////////////////////////////////////////////////////////////////////
+
+/**
+ * Identifies the type of a bootable file
+ * @param filename String filename of bootable file
+ * @return FileType of file
+ */
+FileType IdentifyFile(std::string &filename);
+
+/**
+ * Identifies and loads a bootable file
+ * @param filename String filename of bootable file
+ * @param error_string Point to string to put error message if an error has occurred
+ * @return True on success, otherwise false
+ */
+bool LoadFile(std::string &filename, std::string *error_string);
+
+} // namespace