Skip to content

MemoryMap

class MemoryMap

Represents the layout of memory for a target system, including sections and segments.

DEFINITION
class MemoryMap;

class Block

DEFINITION
class Block;

constructor Block

DEFINITION
Block ( uint64_t  bank,
uint64_t  start,
uint64_t  size );
PARAMETERDESCRIPTION
bank
start
size

method operator<const

DEFINITION
bool  operator< ( const Block & other ) const;
PARAMETERDESCRIPTION
other
RETURNSDESCRIPTION
bool

method operator==const

DEFINITION
bool  operator== ( const Block & other ) const;
PARAMETERDESCRIPTION
other
RETURNSDESCRIPTION
bool

member bank

DEFINITION
uint64_t  bank;

member range

DEFINITION
Range  range;

class Section

DEFINITION
class Section;

constructor Section

DEFINITION
Section ( );

constructor Section

DEFINITION
Section ( Symbol  name,
AccessType  access,
std::vector< Block >  raw_blocks );
PARAMETERDESCRIPTION
name
access
raw_blocks

method add_blocks

DEFINITION
void  add_blocks ( std::vector< Block >  raw_blocks );
PARAMETERDESCRIPTION
raw_blocks

method clear

DEFINITION
void  clear ( );

method emptyconst

DEFINITION
bool  empty ( ) const;
RETURNSDESCRIPTION
bool

method maximum_addressconst

DEFINITION
uint64_t  maximum_address ( ) const;
RETURNSDESCRIPTION
uint64_t

method minimum_addressconst

DEFINITION
uint64_t  minimum_address ( ) const;
RETURNSDESCRIPTION
uint64_t

method operator<const

DEFINITION
bool  operator< ( const Section & other ) const;
PARAMETERDESCRIPTION
other
RETURNSDESCRIPTION
bool

member access

DEFINITION
AccessType  access;

member blocks

DEFINITION
std::vector< Block >  blocks;

member name

DEFINITION
Symbol  name;

member size

DEFINITION
size_t  size;

enum AccessType

DEFINITION
enum AccessType;
VALUEDESCRIPTION
RESERVE_ONLY
READ_ONLY
READ_WRITE

method access_type_lessstatic

DEFINITION
static bool  access_type_less ( AccessType  a,
AccessType  b );
PARAMETERDESCRIPTION
a
b
RETURNSDESCRIPTION
bool

method add_section

DEFINITION
void  add_section ( Section  section );
PARAMETERDESCRIPTION
section

method add_segment

DEFINITION
void  add_segment ( Symbol  name,
std::vector< Block >  segment );
PARAMETERDESCRIPTION
name
segment

method has_sectionconst

DEFINITION
bool  has_section ( Symbol  name ) const;
PARAMETERDESCRIPTION
name
RETURNSDESCRIPTION
bool

method initialize_memoryconst

DEFINITION
Memory  initialize_memory ( ) const;
RETURNSDESCRIPTION
Memory

method is_abstractconst

DEFINITION
bool  is_abstract ( ) const;
RETURNSDESCRIPTION
bool

method is_compatible_withconst

DEFINITION
bool  is_compatible_with ( const MemoryMap & other ) const;
PARAMETERDESCRIPTION
other
RETURNSDESCRIPTION
bool

method sectionconst

DEFINITION
const Section * section ( Symbol  name ) const;
PARAMETERDESCRIPTION
name
RETURNSDESCRIPTION
const Section *

method segmentconst

DEFINITION
const std::vector< Block > * segment ( Symbol  name ) const;
PARAMETERDESCRIPTION
name
RETURNSDESCRIPTION
const std::vector< Block > *

member fill_byte

DEFINITION
uint8_t  fill_byte;

member sections

DEFINITION
std::unordered_map< Symbol, Section >  sections;

member segments

DEFINITION
std::unordered_map< Symbol, std::vector< Block > >  segments;

class Block

DEFINITION
class Block;

constructor Block

DEFINITION
Block ( uint64_t  bank,
uint64_t  start,
uint64_t  size );
PARAMETERDESCRIPTION
bank
start
size

method operator<const

DEFINITION
bool  operator< ( const Block & other ) const;
PARAMETERDESCRIPTION
other
RETURNSDESCRIPTION
bool

method operator==const

DEFINITION
bool  operator== ( const Block & other ) const;
PARAMETERDESCRIPTION
other
RETURNSDESCRIPTION
bool

member bank

DEFINITION
uint64_t  bank;

member range

DEFINITION
Range  range;

class Section

DEFINITION
class Section;

constructor Section

DEFINITION
Section ( );

constructor Section

DEFINITION
Section ( Symbol  name,
AccessType  access,
std::vector< Block >  raw_blocks );
PARAMETERDESCRIPTION
name
access
raw_blocks

method add_blocks

DEFINITION
void  add_blocks ( std::vector< Block >  raw_blocks );
PARAMETERDESCRIPTION
raw_blocks

method clear

DEFINITION
void  clear ( );

method emptyconst

DEFINITION
bool  empty ( ) const;
RETURNSDESCRIPTION
bool

method maximum_addressconst

DEFINITION
uint64_t  maximum_address ( ) const;
RETURNSDESCRIPTION
uint64_t

method minimum_addressconst

DEFINITION
uint64_t  minimum_address ( ) const;
RETURNSDESCRIPTION
uint64_t

method operator<const

DEFINITION
bool  operator< ( const Section & other ) const;
PARAMETERDESCRIPTION
other
RETURNSDESCRIPTION
bool

member access

DEFINITION
AccessType  access;

member blocks

DEFINITION
std::vector< Block >  blocks;

member name

DEFINITION
Symbol  name;

member size

DEFINITION
size_t  size;