IAnjutaDebugger

IAnjutaDebugger — Debugger interface

Stability Level

Unstable, unless otherwise indicated

Synopsis


#include <libanjuta/interfaces/ianjuta-debugger.h>


#define             IANJUTA_TYPE_DEBUGGER_BREAKPOINT_TYPE
#define             IANJUTA_TYPE_DEBUGGER_DATA
#define             IANJUTA_TYPE_DEBUGGER_ERROR
#define             IANJUTA_TYPE_DEBUGGER_OUTPUT_TYPE
#define             IANJUTA_TYPE_DEBUGGER_STATE
#define             IANJUTA_TYPE_DEBUGGER_STATUS
enum                IAnjutaDebuggerBreakpointType;
enum                IAnjutaDebuggerData;
enum                IAnjutaDebuggerError;
enum                IAnjutaDebuggerOutputType;
enum                IAnjutaDebuggerState;
enum                IAnjutaDebuggerStatus;
                    IAnjutaDebuggerALine;
                    IAnjutaDebuggerBreakpoint;
                    IAnjutaDebuggerDisassembly;
                    IAnjutaDebuggerFrame;
                    IAnjutaDebuggerMemory;
                    IAnjutaDebuggerRegister;
                    IAnjutaDebuggerVariable;
#define             IANJUTA_DEBUGGER_ERROR
void                (*IAnjutaDebuggerCallback)          (const gpointer data,
                                                         gpointer user_data,
                                                         GError *err);
void                (*IAnjutaDebuggerGListCallback)     (const GList *list,
                                                         gpointer user_data,
                                                         GError *err);
void                (*IAnjutaDebuggerGCharCallback)     (const gchar *value,
                                                         gpointer user_data,
                                                         GError *err);
void                (*IAnjutaDebuggerBreakpointCallback)
                                                        (const IAnjutaDebuggerBreakpoint *breakpoint,
                                                         gpointer user_data,
                                                         GError *err);
void                (*IAnjutaDebuggerOutputCallback)    (IAnjutaDebuggerOutputType type,
                                                         const gchar *output,
                                                         gpointer user_data);
void                (*IAnjutaDebuggerMemoryCallback)    (const gchar *address,
                                                         guint length,
                                                         const gchar *data,
                                                         gpointer user_data,
                                                         GError *err);
void                (*IAnjutaDebuggerVariableCallback)  (IAnjutaDebuggerVariable *variable,
                                                         gpointer user_data,
                                                         GError *err);
                    IAnjutaDebugger;
                    IAnjutaDebuggerIface;

Object Hierarchy


  GInterface
   +----IAnjutaDebugger

Prerequisites

IAnjutaDebugger requires GObject.

Signals


  "debugger-ready"                                 : Run Last
  "debugger-started"                               : Run Last
  "debugger-stopped"                               : Run Last
  "frame-changed"                                  : Run Last
  "location-changed"                               : Run Last
  "program-exited"                                 : Run Last
  "program-loaded"                                 : Run Last
  "program-running"                                : Run Last
  "program-stopped"                                : Run Last
  "sharedlib-event"                                : Run Last
  "signal-received"                                : Run Last

Description

Details

IANJUTA_TYPE_DEBUGGER_BREAKPOINT_TYPE

#define IANJUTA_TYPE_DEBUGGER_BREAKPOINT_TYPE (ianjuta_debugger_breakpoint_type_get_type())


IANJUTA_TYPE_DEBUGGER_DATA

#define IANJUTA_TYPE_DEBUGGER_DATA (ianjuta_debugger_data_get_type())


IANJUTA_TYPE_DEBUGGER_ERROR

#define IANJUTA_TYPE_DEBUGGER_ERROR (ianjuta_debugger_error_get_type())


IANJUTA_TYPE_DEBUGGER_OUTPUT_TYPE

#define IANJUTA_TYPE_DEBUGGER_OUTPUT_TYPE (ianjuta_debugger_output_type_get_type())


IANJUTA_TYPE_DEBUGGER_STATE

#define IANJUTA_TYPE_DEBUGGER_STATE (ianjuta_debugger_state_get_type())


IANJUTA_TYPE_DEBUGGER_STATUS

#define IANJUTA_TYPE_DEBUGGER_STATUS (ianjuta_debugger_status_get_type())


enum IAnjutaDebuggerBreakpointType

typedef enum {
	IANJUTA_DEBUGGER_BREAK_REMOVED,
	IANJUTA_DEBUGGER_BREAK_ON_LINE,
	IANJUTA_DEBUGGER_BREAK_ON_ADDRESS,
	IANJUTA_DEBUGGER_BREAK_ON_FUNCTION
} IAnjutaDebuggerBreakpointType;


enum IAnjutaDebuggerData

typedef enum {
	IANJUTA_DEBUGGER_INFORMATION,
	IANJUTA_DEBUGGER_BREAKPOINT,
	IANJUTA_DEBUGGER_FRAME,
	IANJUTA_DEBUGGER_VARIABLE,
	IANJUTA_DEBUGGER_REGISTER
} IAnjutaDebuggerData;


enum IAnjutaDebuggerError

typedef enum {
	IANJUTA_DEBUGGER_OK              =  0,
	IANJUTA_DEBUGGER_NOT_READY       = -1,
	IANJUTA_DEBUGGER_NOT_RUNNING     = -2,
	IANJUTA_DEBUGGER_NOT_STOPPED     = -3,
	IANJUTA_DEBUGGER_NOT_LOADED      = -4,
	IANJUTA_DEBUGGER_NOT_STARTED     = -5,
	IANJUTA_DEBUGGER_NOT_CONNECTED   = -6,
	IANJUTA_DEBUGGER_NOT_IMPLEMENTED = -7,
	IANJUTA_DEBUGGER_CANCEL,
	IANJUTA_DEBUGGER_UNABLE_TO_CREATE_VARIABLE,
	IANJUTA_DEBUGGER_UNABLE_TO_ACCESS_MEMORY,
	IANJUTA_DEBUGGER_UNABLE_TO_OPEN_FILE,
	IANJUTA_DEBUGGER_UNKNOWN_ERROR
} IAnjutaDebuggerError;


enum IAnjutaDebuggerOutputType

typedef enum {
	IANJUTA_DEBUGGER_OUTPUT,
	IANJUTA_DEBUGGER_WARNING_OUTPUT,
	IANJUTA_DEBUGGER_ERROR_OUTPUT,
	IANJUTA_DEBUGGER_INFO_OUTPUT
} IAnjutaDebuggerOutputType;


enum IAnjutaDebuggerState

typedef enum {
	IANJUTA_DEBUGGER_UNDEFINED = -1,
	IANJUTA_DEBUGGER_NO = 0,
	IANJUTA_DEBUGGER_YES = 1
} IAnjutaDebuggerState;


enum IAnjutaDebuggerStatus

typedef enum {
	IANJUTA_DEBUGGER_BUSY,
	IANJUTA_DEBUGGER_STOPPED,
	IANJUTA_DEBUGGER_STARTED,
	IANJUTA_DEBUGGER_PROGRAM_LOADED,
	IANJUTA_DEBUGGER_PROGRAM_RUNNING,
	IANJUTA_DEBUGGER_PROGRAM_STOPPED
} IAnjutaDebuggerStatus;


IAnjutaDebuggerALine

typedef struct {
	guint address;
	const gchar *label;
	const gchar *text;
} IAnjutaDebuggerALine;


IAnjutaDebuggerBreakpoint

typedef struct {
	IAnjutaDebuggerBreakpointType type;
	guint id;
	gchar *file;
	guint line;
	gchar *function;
	guint address;
	IAnjutaDebuggerState enable;
	guint ignore;
	guint times;
	gchar *condition;
	IAnjutaDebuggerState keep;
} IAnjutaDebuggerBreakpoint;


IAnjutaDebuggerDisassembly

typedef struct {
	guint size;
	IAnjutaDebuggerALine data[];
} IAnjutaDebuggerDisassembly;


IAnjutaDebuggerFrame

typedef struct {
	guint thread;
	guint level;
	gchar *args;
	gchar *file;
	guint line;
	gchar *function;
	gchar *library;
	guint address;
} IAnjutaDebuggerFrame;


IAnjutaDebuggerMemory

typedef struct {
	guint address;
	guint length;
	gchar *data;
} IAnjutaDebuggerMemory;


IAnjutaDebuggerRegister

typedef struct {
	guint num;
	gchar *name;
	gchar *value;
} IAnjutaDebuggerRegister;


IAnjutaDebuggerVariable

typedef struct {
	gchar *name;
	gchar *expression;
	gchar *type;
	gchar *value;
	gboolean changed;
	gint children;
} IAnjutaDebuggerVariable;


IANJUTA_DEBUGGER_ERROR

#define IANJUTA_DEBUGGER_ERROR ianjuta_debugger_error_quark()


IAnjutaDebuggerCallback ()

void                (*IAnjutaDebuggerCallback)          (const gpointer data,
                                                         gpointer user_data,
                                                         GError *err);

data :

user_data :

err :


IAnjutaDebuggerGListCallback ()

void                (*IAnjutaDebuggerGListCallback)     (const GList *list,
                                                         gpointer user_data,
                                                         GError *err);

list :

user_data :

err :


IAnjutaDebuggerGCharCallback ()

void                (*IAnjutaDebuggerGCharCallback)     (const gchar *value,
                                                         gpointer user_data,
                                                         GError *err);

value :

user_data :

err :


IAnjutaDebuggerBreakpointCallback ()

void                (*IAnjutaDebuggerBreakpointCallback)
                                                        (const IAnjutaDebuggerBreakpoint *breakpoint,
                                                         gpointer user_data,
                                                         GError *err);

breakpoint :

user_data :

err :


IAnjutaDebuggerOutputCallback ()

void                (*IAnjutaDebuggerOutputCallback)    (IAnjutaDebuggerOutputType type,
                                                         const gchar *output,
                                                         gpointer user_data);

type :

output :

user_data :


IAnjutaDebuggerMemoryCallback ()

void                (*IAnjutaDebuggerMemoryCallback)    (const gchar *address,
                                                         guint length,
                                                         const gchar *data,
                                                         gpointer user_data,
                                                         GError *err);

address :

length :

data :

user_data :

err :


IAnjutaDebuggerVariableCallback ()

void                (*IAnjutaDebuggerVariableCallback)  (IAnjutaDebuggerVariable *variable,
                                                         gpointer user_data,
                                                         GError *err);

variable :

user_data :

err :


IAnjutaDebugger

typedef struct _IAnjutaDebugger IAnjutaDebugger;


IAnjutaDebuggerIface

typedef struct _IAnjutaDebuggerIface IAnjutaDebuggerIface;

Signal Details

The "debugger-ready" signal

void                user_function                      (IAnjutaDebugger      *ianjutadebugger,
                                                        IAnjutaDebuggerStatus arg1,
                                                        gpointer              user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "debugger-started" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "debugger-stopped" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gint             arg1,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "frame-changed" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        guint            arg1,
                                                        guint            arg2,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

arg1 :

arg2 :

user_data :

user data set when the signal handler was connected.

The "location-changed" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gchar           *arg1,
                                                        guint            arg2,
                                                        guint            arg3,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

arg1 :

arg2 :

arg3 :

user_data :

user data set when the signal handler was connected.

The "program-exited" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "program-loaded" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "program-running" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "program-stopped" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        guint            arg1,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "sharedlib-event" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "signal-received" signal

void                user_function                      (IAnjutaDebugger *ianjutadebugger,
                                                        gchar           *arg1,
                                                        gchar           *arg2,
                                                        gpointer         user_data)            : Run Last

ianjutadebugger :

the object which received the signal.

arg1 :

arg2 :

user_data :

user data set when the signal handler was connected.