RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
symbols.h
1/*
2 * RTEMS monitor symbol table functions
3 *
4 * Description:
5 * Entry points for symbol table routines.
6 *
7 *
8 *
9 * TODO:
10 */
11
12#ifndef _INCLUDE_SYMBOLS_H
13#define _INCLUDE_SYMBOLS_H
14
15#include <rtems/monitor.h>
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
22 uint32_t value;
23 char *name;
24} ;
25
26#define SYMBOL_STRING_BLOCK_SIZE 4080
28 struct rtems_symbol_string_block_s *next;
29 char buffer[SYMBOL_STRING_BLOCK_SIZE];
31
33
34 uint32_t sorted; /* are symbols sorted right now? */
35 uint32_t growth_factor; /* % to grow by when needed */
36 uint32_t next; /* next symbol slot to use when adding */
37 uint32_t 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 uint32_t strings_next; /* next byte to use in this block */
52
53} ;
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 */
The RTEMS Monitor Task.
Definition: symbols.h:21
Definition: symbols.h:32
Definition: symbols.h:27