TEMU  4.0
The Terma Emulator
GdbServer.h
Go to the documentation of this file.
1 //===-- temu-c/GdbServer.h - GdbServer API ------------------------*- C++ -*-===//
2 //
3 // TEMU: The Terma Emulator
4 // (c) Terma 2015
5 // Authors: Mattias Holm <maho@terma.com>
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef TEMU_GDBSERVER_H
10 #define TEMU_GDBSERVER_H
11 
12 #include <stdint.h>
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 //! Initialise the GDB Server Library
18 void temu_initGdbServerLib(void);
19 
20 //! Create a new GDB server
21 //!
22 //! \param Port TCP port to start server on.
23 //! \result Opaque handle to GDB server.
24 void* temu_createGdbServer(uint16_t Port);
25 
26 //! Dispose a GDB server
27 //!
28 //! \param Gdb Pointer returned by `temu_createGdbServer()`
29 void temu_disposeGdbServer(void *Gdb);
30 
31 //! Wait current thread for a user to connect
32 //!
33 //! \param Gdb Pointer returned by `temu_createGdbServer()`
34 void temu_gdbWaitForConnection(void *Gdb);
35 
36 //! Add named machine to GDB server
37 //!
38 //! \param Gdb Pointer returned by `temu_createGdbServer()`
39 //! \param MachineName Name of `Machine` object.
40 void temu_gdbAddMachine(void *Gdb, const char *MachineName);
41 
42 //! Add named CPU to GDB server
43 //!
44 //! \param Gdb Pointer returned by `temu_createGdbServer()`
45 //! \param CpuName Name of processor object.
46 void temu_gdbAddCpu(void *Gdb, const char *CpuName);
47 
48 //! Tell GDB server to stop at next safe point in time.
49 //!
50 //! \param Gdb Pointer returned by `temu_createGdbServer()`
51 void temu_gdbAsyncStop(void *Gdb);
52 
53 //! Run the GDB server loop
54 //!
55 //! \param Gdb Pointer returned by `temu_createGdbServer()`
56 int temu_gdbRun(void *Gdb);
57 
58 #ifdef __cplusplus
59 }
60 #endif
61 
62 
63 #endif /* TEMU_GDBSERVER_H */
temu_createGdbServer
void * temu_createGdbServer(uint16_t Port)
temu_gdbAddCpu
void temu_gdbAddCpu(void *Gdb, const char *CpuName)
temu_gdbWaitForConnection
void temu_gdbWaitForConnection(void *Gdb)
temu_gdbAddMachine
void temu_gdbAddMachine(void *Gdb, const char *MachineName)
temu_initGdbServerLib
void temu_initGdbServerLib(void)
Initialise the GDB Server Library.
temu_gdbRun
int temu_gdbRun(void *Gdb)
temu_gdbAsyncStop
void temu_gdbAsyncStop(void *Gdb)
temu_disposeGdbServer
void temu_disposeGdbServer(void *Gdb)