Move everything into the WUPSBackend namespace

This commit is contained in:
Maschell 2023-02-17 12:03:27 +01:00
parent c8acaac6a7
commit 2da2336082
7 changed files with 116 additions and 103 deletions

View File

@ -24,21 +24,23 @@
#include "PluginData.h" #include "PluginData.h"
#include "PluginMetaInformation.h" #include "PluginMetaInformation.h"
class PluginContainer { namespace WUPSBackend {
class PluginContainer {
public: public:
PluginContainer(std::shared_ptr<PluginData> data, std::shared_ptr<PluginMetaInformation> metaInfo) : pluginData(std::move(data)), PluginContainer(std::shared_ptr<PluginData> data, std::shared_ptr<PluginMetaInformation> metaInfo) : pluginData(std::move(data)),
metaInformation(std::move(metaInfo)) { metaInformation(std::move(metaInfo)) {
} }
[[nodiscard]] const std::shared_ptr<PluginMetaInformation> &getMetaInformation() const { [[nodiscard]] const std::shared_ptr<PluginMetaInformation> &getMetaInformation() const {
return this->metaInformation; return this->metaInformation;
} }
[[nodiscard]] const std::shared_ptr<PluginData> &getPluginData() const { [[nodiscard]] const std::shared_ptr<PluginData> &getPluginData() const {
return pluginData; return pluginData;
} }
const std::shared_ptr<PluginData> pluginData; const std::shared_ptr<PluginData> pluginData;
const std::shared_ptr<PluginMetaInformation> metaInformation; const std::shared_ptr<PluginMetaInformation> metaInformation;
}; };
} // namespace WUPSBackend

View File

@ -19,15 +19,17 @@
#include <cstdint> #include <cstdint>
#include <wups_backend/import_defines.h> #include <wups_backend/import_defines.h>
class PluginData { namespace WUPSBackend {
class PluginData {
public: public:
explicit PluginData(uint32_t handle); explicit PluginData(uint32_t handle);
~PluginData(); ~PluginData();
[[nodiscard]] uint32_t getHandle() const { [[nodiscard]] uint32_t getHandle() const {
return handle; return handle;
} }
uint32_t handle; uint32_t handle;
}; };
} // namespace WUPSBackend

View File

@ -21,90 +21,92 @@
#include <string> #include <string>
#include <vector> #include <vector>
class PluginMetaInformation { namespace WUPSBackend {
public: class PluginMetaInformation {
[[nodiscard]] const std::string &getName() const { public:
return name; [[nodiscard]] const std::string &getName() const {
} return name;
}
[[nodiscard]] const std::string &getAuthor() const { [[nodiscard]] const std::string &getAuthor() const {
return this->author; return this->author;
} }
[[nodiscard]] const std::string &getVersion() const { [[nodiscard]] const std::string &getVersion() const {
return this->version; return this->version;
} }
[[nodiscard]] const std::string &getLicense() const { [[nodiscard]] const std::string &getLicense() const {
return this->license; return this->license;
} }
[[nodiscard]] const std::string &getBuildTimestamp() const { [[nodiscard]] const std::string &getBuildTimestamp() const {
return this->buildtimestamp; return this->buildtimestamp;
} }
[[nodiscard]] const std::string &getDescription() const { [[nodiscard]] const std::string &getDescription() const {
return this->description; return this->description;
} }
[[nodiscard]] const std::string &getStorageId() const { [[nodiscard]] const std::string &getStorageId() const {
return this->storageId; return this->storageId;
} }
[[nodiscard]] size_t getSize() const { [[nodiscard]] size_t getSize() const {
return this->size; return this->size;
} }
PluginMetaInformation(std::string name, PluginMetaInformation(std::string name,
std::string author, std::string author,
std::string version, std::string version,
std::string license, std::string license,
std::string buildtimestamp, std::string buildtimestamp,
std::string description, std::string description,
std::string storageId, std::string storageId,
size_t size); size_t size);
private: private:
PluginMetaInformation() = default; PluginMetaInformation() = default;
void setName(std::string name_) { void setName(std::string name_) {
this->name = std::move(name_); this->name = std::move(name_);
} }
void setAuthor(std::string author_) { void setAuthor(std::string author_) {
this->author = std::move(author_); this->author = std::move(author_);
} }
void setVersion(std::string version_) { void setVersion(std::string version_) {
this->version = std::move(version_); this->version = std::move(version_);
} }
void setLicense(std::string license_) { void setLicense(std::string license_) {
this->license = std::move(license_); this->license = std::move(license_);
} }
void setBuildTimestamp(std::string buildtimestamp_) { void setBuildTimestamp(std::string buildtimestamp_) {
this->buildtimestamp = std::move(buildtimestamp_); this->buildtimestamp = std::move(buildtimestamp_);
} }
void setDescription(std::string description_) { void setDescription(std::string description_) {
this->description = std::move(description_); this->description = std::move(description_);
} }
void setStorageId(std::string storageId_) { void setStorageId(std::string storageId_) {
this->storageId = std::move(storageId_); this->storageId = std::move(storageId_);
} }
void setSize(size_t size_) { void setSize(size_t size_) {
this->size = size_; this->size = size_;
} }
std::string name; std::string name;
std::string author; std::string author;
std::string version; std::string version;
std::string license; std::string license;
std::string buildtimestamp; std::string buildtimestamp;
std::string description; std::string description;
std::string storageId; std::string storageId;
size_t size{}; size_t size{};
}; };
} // namespace WUPSBackend

View File

@ -20,17 +20,19 @@
#include "PluginMetaInformation.h" #include "PluginMetaInformation.h"
#include <optional> #include <optional>
class PluginUtils { namespace WUPSBackend {
public: class PluginUtils {
static std::optional<std::unique_ptr<PluginMetaInformation>> getMetaInformationForBuffer(char *buffer, size_t size); public:
static std::optional<std::unique_ptr<PluginMetaInformation>> getMetaInformationForBuffer(char *buffer, size_t size);
static std::optional<std::unique_ptr<PluginMetaInformation>> getMetaInformationForPath(const std::string &path); static std::optional<std::unique_ptr<PluginMetaInformation>> getMetaInformationForPath(const std::string &path);
static std::vector<std::unique_ptr<PluginContainer>> getLoadedPlugins(uint32_t maxSize); static std::vector<std::unique_ptr<PluginContainer>> getLoadedPlugins(uint32_t maxSize);
static std::optional<std::unique_ptr<PluginContainer>> getPluginForPath(const std::string &path); static std::optional<std::unique_ptr<PluginContainer>> getPluginForPath(const std::string &path);
static std::optional<std::unique_ptr<PluginContainer>> getPluginForBuffer(char *buffer, size_t size); static std::optional<std::unique_ptr<PluginContainer>> getPluginForBuffer(char *buffer, size_t size);
static int32_t LoadAndLinkOnRestart(const std::vector<std::unique_ptr<PluginContainer>> &plugins); static int32_t LoadAndLinkOnRestart(const std::vector<std::unique_ptr<PluginContainer>> &plugins);
}; };
} // namespace WUPSBackend

View File

@ -20,6 +20,8 @@
#include "logger.h" #include "logger.h"
#include <coreinit/debug.h> #include <coreinit/debug.h>
using namespace WUPSBackend;
PluginData::PluginData(uint32_t handle) { PluginData::PluginData(uint32_t handle) {
this->handle = handle; this->handle = handle;
} }

View File

@ -18,9 +18,10 @@
#include "wups_backend/PluginMetaInformation.h" #include "wups_backend/PluginMetaInformation.h"
#include <cstring> #include <cstring>
#include <optional>
#include <utility> #include <utility>
using namespace WUPSBackend;
PluginMetaInformation::PluginMetaInformation(std::string name, PluginMetaInformation::PluginMetaInformation(std::string name,
std::string author, std::string author,
std::string version, std::string version,

View File

@ -22,6 +22,8 @@
#include <cstring> #include <cstring>
#include <memory> #include <memory>
using namespace WUPSBackend;
std::optional<std::unique_ptr<PluginMetaInformation>> getMetaInformation(const plugin_information &info) { std::optional<std::unique_ptr<PluginMetaInformation>> getMetaInformation(const plugin_information &info) {
if (info.plugin_information_version != PLUGIN_INFORMATION_VERSION) { if (info.plugin_information_version != PLUGIN_INFORMATION_VERSION) {
DEBUG_FUNCTION_LINE_ERR("Version mismatch"); DEBUG_FUNCTION_LINE_ERR("Version mismatch");