1 // Copyright 2019 Dolphin Emulator Project 2 // Licensed under GPLv2+ 3 // Refer to the license.txt file included. 4 5 #pragma once 6 7 #include <string> 8 #include <vector> 9 10 #include "Common/CommonTypes.h" 11 #include "Core/HW/GCMemcard/GCMemcard.h" 12 13 class PointerWrap; 14 15 namespace Memcard 16 { 17 class GCIFile 18 { 19 public: 20 bool LoadHeader(); 21 bool LoadSaveBlocks(); 22 bool HasCopyProtection() const; 23 void DoState(PointerWrap& p); 24 int UsesBlock(u16 blocknum); 25 26 DEntry m_gci_header; 27 std::vector<GCMBlock> m_save_data; 28 std::vector<u16> m_used_blocks; 29 bool m_dirty; 30 std::string m_filename; 31 }; 32 } // namespace Memcard 33