Logo SoCRocket

Transaction-Level Modeling Framework for Space Applications

Public Member Functions | List of all members
trap::GDBConnectionManager Class Reference

#include <GDBConnectionManager.hpp>

Collaboration diagram for trap::GDBConnectionManager:

Public Member Functions

 GDBConnectionManager (bool endianess)
 
 ~GDBConnectionManager ()
 
void initialize (unsigned int port)
 
void sendResponse (GDBResponse &response)
 Sends the response to the GDB debugger connected. More...
 
GDBRequest processRequest ()
 
void disconnect ()
 Closes the connection with the GDB debugger. More...
 
bool checkInterrupt ()
 
void sendInterrupt ()
 

Detailed Description

Manages the connection among the GDB debugger and the stub which communicates with the processor; it is responsible of handling socket connection and of the coding and decoding of the messages. For more details on the internal workings of GDB look at http://sourceware.org/gdb/current/onlinedocs/gdb_33.html

Constructor & Destructor Documentation

trap::GDBConnectionManager::GDBConnectionManager ( bool  endianess)
trap::GDBConnectionManager::~GDBConnectionManager ( )

Member Function Documentation

bool trap::GDBConnectionManager::checkInterrupt ( )

Keeps waiting for a character on the channel with the GDB debugger

References error_code.

void trap::GDBConnectionManager::disconnect ( )

Closes the connection with the GDB debugger.

void trap::GDBConnectionManager::initialize ( unsigned int  port)

Creates a socket connection waiting on the specified port; this will be later used to communicate with GDB

References THROW_ERROR.

Referenced by trap::GDBStub< unsigned int >::initialize().

trap::GDBRequest trap::GDBConnectionManager::processRequest ( )
void trap::GDBConnectionManager::sendInterrupt ( )

Sends and interrupt message to the GDB debugger signaling that the execution of the program halted: this way the GDB debugger becomes responsive and it is possible to debug the program under test

References trap::GDBResponse::payload, trap::GDBResponse::S_rsp, SIGTRAP, and trap::GDBResponse::type.

void trap::GDBConnectionManager::sendResponse ( GDBResponse response)

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