Play-/Source/RegisterStateFile.h

31 lines
792 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:
CRegisterStateFile(const char*);
CRegisterStateFile(Framework::CStream&);
virtual ~CRegisterStateFile();
void SetRegister32(const char*, uint32);
void SetRegister64(const char*, uint64);
void SetRegister128(const char*, uint128);
uint32 GetRegister32(const char*) const;
uint64 GetRegister64(const char*) const;
uint128 GetRegister128(const char*) const;
void Read(Framework::CStream&);
2017-09-10 00:41:19 -04:00
void Write(Framework::CStream&) override;
private:
typedef std::pair<uint8, uint128> Register;
typedef std::map<std::string, Register> RegisterList;
RegisterList m_registers;
};