2020-06-04 12:33:52 -06:00
|
|
|
// Copyright 2020 Dolphin Emulator Project
|
2021-07-04 19:22:19 -06:00
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
2020-06-04 12:33:52 -06:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <optional>
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
#include "Common/CommonTypes.h"
|
2022-07-23 23:45:10 -06:00
|
|
|
#include "Common/Crypto/SHA1.h"
|
2020-06-04 12:33:52 -06:00
|
|
|
#include "DiscIO/Volume.h"
|
|
|
|
|
|
|
|
namespace DiscIO
|
|
|
|
{
|
|
|
|
class VolumeDisc : public Volume
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
std::string GetGameID(const Partition& partition = PARTITION_NONE) const override;
|
|
|
|
Country GetCountry(const Partition& partition = PARTITION_NONE) const override;
|
|
|
|
std::string GetMakerID(const Partition& partition = PARTITION_NONE) const override;
|
|
|
|
std::optional<u16> GetRevision(const Partition& partition = PARTITION_NONE) const override;
|
|
|
|
std::string GetInternalName(const Partition& partition = PARTITION_NONE) const override;
|
|
|
|
std::string GetApploaderDate(const Partition& partition) const override;
|
|
|
|
std::optional<u8> GetDiscNumber(const Partition& partition = PARTITION_NONE) const override;
|
2020-06-15 05:16:01 -06:00
|
|
|
bool IsNKit() const override;
|
2020-06-04 12:33:52 -06:00
|
|
|
|
|
|
|
protected:
|
|
|
|
Region RegionCodeToRegion(std::optional<u32> region_code) const;
|
2022-07-23 23:45:10 -06:00
|
|
|
void AddGamePartitionToSyncHash(Common::SHA1::Context* context) const;
|
2020-06-04 12:33:52 -06:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace DiscIO
|