1 /*
2  * Copyright (C) 1995 Advanced RISC Machines Limited. All rights reserved.
3  *
4  * This software may be freely used, copied, modified, and distributed
5  * provided that the above copyright notice is preserved in all copies of the
6  * software.
7  */
8 
9 /*
10  * ARM debugger toolbox : dbg_hif.c
11  * Description of the Dbg_HostosInterface structure.  This is *NOT*
12  * part of the debugger toolbox, but it is required by 2 back ends
13  * (armul & pisd) and two front ends (armsd & wdbg), so putting it
14  * in the toolbox is the only way of avoiding multiple copies.
15  */
16 
17 /*
18  * RCS $Revision: 1.3 $
19  * Checkin $Date: 2004/12/27 14:00:54 $
20  */
21 
22 #ifndef dbg_hif__h
23 #define dbg_hif__h
24 
25 #ifdef STDC_HEADERS
26 #  include <stdarg.h>
27 #else
28 #  include <varargs.h>
29 #endif
30 
31 typedef void Hif_DbgPrint(void *arg, const char *format, va_list ap);
32 typedef void Hif_DbgPause(void *arg);
33 
34 typedef void Hif_WriteC(void *arg, int c);
35 typedef int Hif_ReadC(void *arg);
36 typedef int Hif_Write(void *arg, char const *buffer, int len);
37 typedef char *Hif_GetS(void *arg, char *buffer, int len);
38 
39 typedef void Hif_RDIResetProc(void *arg);
40 
41 struct Dbg_HostosInterface {
42     Hif_DbgPrint *dbgprint;
43     Hif_DbgPause *dbgpause;
44     void *dbgarg;
45 
46     Hif_WriteC *writec;
47     Hif_ReadC *readc;
48     Hif_Write *write;
49     Hif_GetS *gets;
50     void *hostosarg;
51 
52     Hif_RDIResetProc *reset;
53     void *resetarg;
54 };
55 
56 #endif
57