Added target address space and memory segment descriptor structs

This commit is contained in:
Nav
2024-03-16 00:06:53 +00:00
parent e2f7fb48f3
commit 47e92157f7
4 changed files with 174 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
#pragma once
#include <string>
#include <optional>
#include "TargetMemory.hpp"
#include "TargetMemorySegmentType.hpp"
namespace Targets
{
struct TargetMemorySegmentDescriptor
{
public:
std::string key;
std::string name;
TargetMemorySegmentType type;
TargetMemoryAddress startAddress;
TargetMemorySize size;
TargetMemoryAccess debugModeAccess;
TargetMemoryAccess programmingModeAccess;
std::optional<TargetMemorySize> pageSize;
TargetMemorySegmentDescriptor(
const std::string& key,
const std::string& name,
TargetMemorySegmentType type,
TargetMemoryAddress startAddress,
TargetMemorySize size,
const TargetMemoryAccess& debugModeAccess,
const TargetMemoryAccess& programmingModeAccess,
std::optional<TargetMemorySize> pageSize
)
: key(key)
, name(name)
, type(type)
, startAddress(startAddress)
, size(size)
, debugModeAccess(debugModeAccess)
, programmingModeAccess(programmingModeAccess)
, pageSize(pageSize)
{};
};
}