Athena IO Library
WiiSaveReader.hpp
1 #ifndef WIISAVEREADER_HPP
2 #define WIISAVEREADER_HPP
3 
4 #include "athena/Global.hpp"
5 #include "athena/MemoryReader.hpp"
6 
7 namespace athena
8 {
9 class WiiSave;
10 class WiiBanner;
11 class WiiFile;
12 class WiiImage;
13 
14 namespace io
15 {
16 
25 {
26  MEMORYCOPYREADER_BASE();
27 public:
33  WiiSaveReader(const atUint8*, atUint64);
34 
39  WiiSaveReader(const std::string&);
40 
45  std::unique_ptr<WiiSave> readSave();
46 private:
47  WiiBanner* readBanner();
48  WiiFile* readFile();
49  WiiImage* readImage(atUint32 width, atUint32 height);
50  void readCerts(atUint32 totalSize);
51  WiiFile* buildTree(std::vector<WiiFile*> files);
52 };
53 
54 } // io
55 } // zelda
56 #endif // WIISAVEREADER_HPP
The WiiImage class.
Definition: WiiImage.hpp:13
Wii file container class.
Definition: WiiFile.hpp:20
Wii banner container class.
Definition: WiiBanner.hpp:16
std::unique_ptr< WiiSave > readSave()
readSave
WiiSaveReader(const atUint8 *, atUint64)
This constructor takes an existing buffer to read from.
Wii data.bin reader class.