class SoWrapper

Defined at line 29 of file ../../src/developer/debug/debug_agent/integration_tests/so_wrapper.h

SoWrapper functionalities are two-fold:

- Manages a given .so as a resource and exposes a way to expose the addresses

of symbols within that .so.

- Queries all the modules loaded within the current process. The main purpose

of this is to find the same module that was loaded by Init and be able to

start address.

With that the offset is calculable and we can know how far inside a

particular module a symbol is. That can then be used to place breakpoints or

other address specific tools.

Public Methods

bool Init (std::string so_name)

Fails if |so_name| doesn't point to a valid .so.

Defined at line 32 of file ../../src/developer/debug/debug_agent/integration_tests/so_wrapper.cc

void ~SoWrapper ()

Defined at line 44 of file ../../src/developer/debug/debug_agent/integration_tests/so_wrapper.cc

const std::string & so_name ()

Defined at line 47 of file ../../src/developer/debug/debug_agent/integration_tests/so_wrapper.h

uint64_t GetSymbolOffset (const char * module, const char * symbol)

GetSymbolAddress - GetModuleStartAddress.

Defined at line 63 of file ../../src/developer/debug/debug_agent/integration_tests/so_wrapper.cc

uint64_t GetModuleStartAddress (const char * module_name)

Gets the start address of a module loaded in the current process.

Returns 0 if not found.

Defined at line 49 of file ../../src/developer/debug/debug_agent/integration_tests/so_wrapper.cc

uint64_t GetSymbolAddress (const char * symbol_name)

Looks for the address where a particular symbol from the loaded .so is

loaded in the current address space.

Returns 0 if not found.

Defined at line 57 of file ../../src/developer/debug/debug_agent/integration_tests/so_wrapper.cc