dolphin/Source/Core/UICommon/ResourcePack/Manifest.h

42 lines
930 B
C++

// Copyright 2018 Dolphin Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include <optional>
#include <string>
namespace ResourcePack
{
class Manifest
{
public:
explicit Manifest(const std::string& text);
bool IsValid() const;
bool IsCompressed() const;
const std::string& GetName() const;
const std::string& GetVersion() const;
const std::string& GetID() const;
const std::string& GetError() const;
const std::optional<std::string>& GetAuthors() const;
const std::optional<std::string>& GetDescription() const;
const std::optional<std::string>& GetWebsite() const;
private:
bool m_valid = true;
bool m_compressed = false;
std::string m_name;
std::string m_version;
std::string m_id;
std::string m_error;
std::optional<std::string> m_authors;
std::optional<std::string> m_description;
std::optional<std::string> m_website;
};
} // namespace ResourcePack