replicode
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
r_comp::Image Class Reference

#include <segments.h>

Collaboration diagram for r_comp::Image:
Collaboration graph

Public Member Functions

 Image ()
 
 ~Image ()
 
void add_sys_object (SysObject *object, std::string name)
 
void add_sys_object (SysObject *object)
 
void get_objects (Mem *mem, r_code::vector< r_code::Code * > &ram_objects)
 
template<class O >
void get_objects (r_code::vector< Code * > &ram_objects)
 
void add_objects (r_code::list< P< r_code::Code > > &objects)
 
void add_objects (r_code::list< P< r_code::Code > > &objects, std::vector< SysObject * > &imported_objects)
 
template<class I >
Iserialize ()
 
template<class I >
void load (I *image)
 

Public Attributes

ObjectMap object_map
 
CodeSegment code_segment
 
ObjectNames object_names
 
uint64_t timestamp
 

Private Member Functions

void add_object (r_code::Code *object)
 
SysObjectadd_object (Code *object, std::vector< SysObject * > &imported_objects)
 
size_t get_reference_count (const Code *object) const
 
void build_references ()
 
void build_references (SysObject *sys_object, r_code::Code *object)
 
void unpack_objects (r_code::vector< Code * > &ram_objects)
 

Private Attributes

size_t map_offset
 
std::unordered_map< r_code::Code *, size_tptrs_to_indices
 

Constructor & Destructor Documentation

r_comp::Image::Image ( )
r_comp::Image::~Image ( )

Member Function Documentation

void r_comp::Image::add_object ( r_code::Code object)
private

Here is the call graph for this function:

Here is the caller graph for this function:

SysObject * r_comp::Image::add_object ( Code object,
std::vector< SysObject * > &  imported_objects 
)
private

Here is the call graph for this function:

void r_comp::Image::add_objects ( r_code::list< P< r_code::Code > > &  objects)

Here is the call graph for this function:

Here is the caller graph for this function:

void r_comp::Image::add_objects ( r_code::list< P< r_code::Code > > &  objects,
std::vector< SysObject * > &  imported_objects 
)

Here is the call graph for this function:

void r_comp::Image::add_sys_object ( SysObject object,
std::string  name 
)

Here is the caller graph for this function:

void r_comp::Image::add_sys_object ( SysObject object)

Here is the call graph for this function:

void r_comp::Image::build_references ( )
private

Here is the call graph for this function:

Here is the caller graph for this function:

void r_comp::Image::build_references ( SysObject sys_object,
r_code::Code object 
)
private

Here is the call graph for this function:

void r_comp::Image::get_objects ( Mem mem,
r_code::vector< r_code::Code * > &  ram_objects 
)

Here is the call graph for this function:

template<class O >
void r_comp::Image::get_objects ( r_code::vector< Code * > &  ram_objects)
inline

Here is the call graph for this function:

size_t r_comp::Image::get_reference_count ( const Code object) const
private

Here is the call graph for this function:

Here is the caller graph for this function:

template<class I >
void r_comp::Image::load ( I image)
inline

Here is the call graph for this function:

template<class I >
I* r_comp::Image::serialize ( )
inline

Here is the call graph for this function:

void r_comp::Image::unpack_objects ( r_code::vector< Code * > &  ram_objects)
private

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

CodeSegment r_comp::Image::code_segment
size_t r_comp::Image::map_offset
private
ObjectMap r_comp::Image::object_map
ObjectNames r_comp::Image::object_names
std::unordered_map<r_code::Code *, size_t> r_comp::Image::ptrs_to_indices
private
uint64_t r_comp::Image::timestamp

The documentation for this class was generated from the following files: