source: rtems/cpukit/libmisc/monitor/symbols.h @ 7fcc26ac

4.104.114.84.95
Last change on this file since 7fcc26ac was 5beb562, checked in by Joel Sherrill <joel.sherrill@…>, on 09/21/97 at 16:58:57

Cleaned up as part of adding the Monitor test.

  • Property mode set to 100644
File size: 1.4 KB
Line 
1/*
2 *  RTEMS monitor symbol table functions
3 *
4 *  Description:
5 *      Entry points for symbol table routines.
6 *
7 *
8 *
9 *  TODO:
10 *
11 *  $Id$
12 */
13
14#ifndef _INCLUDE_SYMBOLS_H
15#define _INCLUDE_SYMBOLS_H
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21typedef struct {
22    rtems_unsigned32 value;
23    char            *name;
24} rtems_symbol_t;
25
26#define SYMBOL_STRING_BLOCK_SIZE 4080
27typedef struct rtems_symbol_string_block_s {
28    struct rtems_symbol_string_block_s *next;
29    char   buffer[SYMBOL_STRING_BLOCK_SIZE];
30} rtems_symbol_string_block_t;
31
32typedef struct {
33
34    rtems_unsigned32 sorted;          /* are symbols sorted right now? */
35    rtems_unsigned32 growth_factor;   /* % to grow by when needed */
36    rtems_unsigned32 next;            /* next symbol slot to use when adding */
37    rtems_unsigned32 size;            /* max # of symbols */
38
39    /*
40     * Symbol list -- sorted by address (when we do a lookup)
41     */
42
43    rtems_symbol_t  *addresses;         /* symbol array by address */
44
45    /*
46     * String pool, unsorted, a list of blocks of string data
47     */
48
49    rtems_symbol_string_block_t *string_buffer_head;
50    rtems_symbol_string_block_t *string_buffer_current;
51    rtems_unsigned32 strings_next;      /* next byte to use in this block */
52
53} rtems_symbol_table_t;
54
55#define rtems_symbol_name(sp)   ((sp)->name)
56#define rtems_symbol_value(sp)  ((sp)->value)
57
58#ifdef __cplusplus
59}
60#endif
61
62#endif /* ! _INCLUDE_SYMBOLS_H */
Note: See TracBrowser for help on using the repository browser.