Play-/Source/RegisterStateFile.h

31 lines
754 B
C
Raw Normal View History

2016-03-19 12:02:28 -07:00
#pragma once
#include "zip/ZipFile.h"
#include "uint128.h"
#include <map>
class CRegisterStateFile : public Framework::CZipFile
{
public:
2018-04-30 21:01:23 +01:00
CRegisterStateFile(const char*);
CRegisterStateFile(Framework::CStream&);
virtual ~CRegisterStateFile();
2018-04-30 21:01:23 +01:00
void SetRegister32(const char*, uint32);
void SetRegister64(const char*, uint64);
void SetRegister128(const char*, uint128);
2018-04-30 21:01:23 +01:00
uint32 GetRegister32(const char*) const;
uint64 GetRegister64(const char*) const;
uint128 GetRegister128(const char*) const;
2018-04-30 21:01:23 +01:00
void Read(Framework::CStream&);
void Write(Framework::CStream&) override;
private:
typedef std::pair<uint8, uint128> Register;
typedef std::map<std::string, Register> RegisterList;
2018-04-30 21:01:23 +01:00
RegisterList m_registers;
};