18 m_ProgramIsStopped(true),
22 m_userSelectedFrameNo(-1)
30 for (
size_t ii = 0; ii <
m_DCmds.GetCount(); ++ii)
80 event.SetString(file);
82 m_pDBG->ProcessEvent(event);
91 m_pDBG->ProcessEvent(event);
198 if (
Manager::Get()->GetDebuggerManager()->UpdateBacktrace())
virtual bool IsContinueCommand() const
Tells if the command is a continue type command (continue, step, next and run to cursor commands shou...
void NotifyCursorChanged()
Called by implementations to notify cursor changes.
virtual ~DebuggerDriver()
void ShowFile(const wxString &file, int line)
Show a file/line without changing the cursor.
virtual void AddDirectory(const wxString &dir)
Add a directory in search list.
static Manager * Get()
Use Manager::Get() to get a pointer to its instance Manager::Get() is guaranteed to never return an i...
void RunQueue()
runs the next command in the queue, if it is idle
void DoSendCommand(const wxString &cmd)
int Index(const wxString &sz, bool bCase=true, bool bFromEnd=false) const
wxString m_Cmd
the actual command
wxString GetDebuggersWorkingDirectory() const
bool IsProgramStopped() const
Is the program stopped?
virtual void SetArguments(const wxString &args)
Set the execution arguments.
StackFrameContainer m_backtrace
void Log(const wxString &msg, Logger::level level=Logger::info)
QueuePriority
The priority used when adding a command in the queue.
const ThreadsContainer & GetThreads() const
returns the thread container with the current list of threads
void RemoveTopCommand(bool deleteIt=true)
removes the top command (it has finished)
long int line
If -1, no line info.
void Log(const wxString &msg)
std::vector< cb::shared_ptr< cbStackFrame > > StackFrameContainer
const StackFrameContainer & GetStackFrames() const
returns the container with the current backtrace
virtual void SetWorkingDirectory(const wxString &dir)
Set the working directory.
DebuggerManager * GetDebuggerManager() const
bool wxSetWorkingDirectory(const wxString &dir)
void DebugLog(const wxString &msg)
void ResetCursor()
Called by implementations to reset the cursor.
const int DEBUGGER_CURSOR_CHANGED
wxCommandEvent ID fired when the cursor has changed.
void NotifyDebuggeeContinued()
void QueueCommand(DebuggerCmd *dcmd, QueuePriority prio=Low)
add a command in the queue. The DebuggerCmd will be deleted automatically when finished.
std::vector< cb::shared_ptr< cbThread > > ThreadsContainer
virtual void ClearDirectories()
Clear directories search list.
ThreadsContainer m_threads
const int DEBUGGER_SHOW_FILE_LINE
wxCommandEvent ID fired to display a file/line (w/out changing the cursor)
wxString m_LastCursorAddress
int m_userSelectedFrameNo
void SetCurrentFrame(int number, bool user_selected)
cbBacktraceDlg * GetBacktraceDialog()
size_t Add(const wxString &str, size_t copies=1)
DebuggerDriver(DebuggerGDB *plugin)
DebuggerCmd * CurrentCommand()
returns the currently executing command
Basic interface for debugger commands.
virtual void Action()
Executes an action.
void DebugLog(const wxString &msg, Logger::level level=Logger::info)