File: headers.h

package info (click to toggle)
robodoc 4.0.18-1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k, sarge
  • size: 924 kB
  • ctags: 669
  • sloc: ansic: 8,386; xml: 953; sh: 335; makefile: 144; perl: 68
file content (169 lines) | stat: -rw-r--r-- 5,299 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
#ifndef ROBODOC_HEADERS_H
#define ROBODOC_HEADERS_H

/****s* Headers/RB_header
 *  FUNCTION
 *    This structure is used to store the headers that are extracted
 *    from the source files.
 *  MODIFICATION HISTORY
 *    8. August 1995: Koessi
 *                    changed int version to char *version
 *  ATTRIBUTES
 *    next          -- used to store RB_headers in a RB_Part as
 *                     a linked list.
 *    parent        -- the parent of this header
 *    name          -- the full name of the header
 *                     modulename/functionname [versioninfo]
 *    owner         -- the Part that owns this header.
 *    htype         -- the type of this header.
 *    version       -- unused
 *    function_name -- the functionname ( a better name would
 *                       be objectname or  thingy name,
 *                     it is the name of the thing that is
 *                     being documented ).
 *    module_name   -- the modulename
 *    unique_name   -- unique name used for labels.
 *    file_name     -- documentation file of this header.
 *    lines         -- content of the header
 *    no_lines      -- number of lines in the content.
 *  SOURCE
 */

struct RB_header
{
    struct RB_header     *next;
    struct RB_header     *parent;
    struct RB_Part       *owner;
    struct RB_HeaderType *htype;
    int                   is_internal;
    char                 *name;
    char                 *version;
    char                 *function_name;
    char                 *module_name;
    char                 *unique_name;
    char                 *file_name;
    char                **lines;
    int                   no_lines;
};

/*********/

/****d* Headers/src_constants
 * NAME
 *   src_constants -- numerals for header_markers
 * NOTE
 *   Most of them seem to be unused at the moment.
 *   But it's better to keep it up to date for the
 *   eventuality of a later use by robohdrs.
 * SOURCE
 */

#define SRC_C        0
#define SRC_ACM      1  /* Added by David White for Aspen Custom Modeller */
#define SRC_CPP      2  /* All values incremented 1 to allow for ACM */
#define SRC_PASCAL   3
#define SRC_PASCAL2  4
#define SRC_APLUS    5 /* David White for Aspen Plus */
#define SRC_ASM      6
#define SRC_ASM2     7
#define SRC_FORTRAN  8
#define SRC_BASIC    9
#define SRC_TEX      10
#define SRC_SCRIPT   11
#define SRC_COBOL    12
#define SRC_OCCAM    13
#define SRC_HTML     14
#define SRC_HTML2    15
#define SRC_GNUASM   16
#define SRC_F902     17
#define SRC_F90      18
#define SRC_VB       20
#define SRC_DBC      21

/*********/

/****d* Headers/src_remark_constants
 * NAME
 *   src_remark_constants -- numerals for remark_markers
 * NOTE
 *   Most of them seem to be unused at the moment.
 *   But it's better to keep it up to date for the
 *   eventuality of a later use by robohdrs.
 * SOURCE
 */

#define SRC_R_C        0
#define SRC_R_ACM      1  /* Added by David White for Aspen Custom Modeller */
#define SRC_R_CPP      2  /* All values incremented 1 to allow for ACM */
#define SRC_R_PASCAL   3  /* PASCAL and PASCAL2 were 1, should have been 2, incr to 3 */
#define SRC_R_PASCAL2  3
#define SRC_R_APLUS    4 /* David White for Aspen Plus */
#define SRC_R_ASM      5
#define SRC_R_ASM2     6
#define SRC_R_FORTRAN  7
#define SRC_R_BASIC    8
#define SRC_R_TEX      9
#define SRC_R_SCRIPT   10
#define SRC_R_COBOL    11
#define SRC_R_OCCAM    12
#define SRC_R_GNUASM   13
#define SRC_R_F902     14
#define SRC_R_F90      15
#define SRC_R_VB       17
#define SRC_R_DBC      18
#define SRC_R_HTML     19       /* NULL */
#define SRC_R_HTML2    19       /* NULL */

/*********/

/****d* Headers/end_remark_constants [3.0h]
 * NAME
 *   end_remark_constants -- numerals for end_markers
 * NOTE
 *   Most of them seem to be unused at the moment.  But it's better to
 *   keep it up to date for the eventuality of a later use by
 *   robohdrs.
 * SOURCE
 */

#define SRC_E_C        0
#define SRC_E_ACM      1  /* Added by David White for Aspen Custom Modeller */
#define SRC_E_CPP      2  /* All values incremented 1 to allow for ACM */
#define SRC_E_PASCAL   4
#define SRC_E_PASCAL2  5
#define SRC_E_APLUS    6 /* David White for Aspen Plus */
#define SRC_E_ASM      7
#define SRC_E_ASM2     8
#define SRC_E_FORTRAN  9
#define SRC_E_BASIC    10
#define SRC_E_TEX      11
#define SRC_E_SCRIPT   12
#define SRC_E_COBOL    13
#define SRC_E_OCCAM    14
#define SRC_E_HTML     15
#define SRC_E_HTML2    16
#define SRC_E_GNUASM   17
#define SRC_E_F902     18
#define SRC_E_F90      19
#define SRC_E_VB       21
#define SRC_E_DBC      22


/*********/

extern char        *robo_header;        /* Added by DavidCD */
extern char        *robo_end[];         /* Added by DavidCD */
extern char        *header_markers[];
extern char        *remark_markers[];
extern char        *end_markers[];
extern char        *end_remark_markers[];
extern char        *RB_header_type_names[];
extern char        *RB_internal_header_type_names[];

int          RB_Is_Begin_Marker( char *cur_line, char **type );
int          RB_Is_End_Marker( char *cur_line );
void         RB_Header_Lock_Reset( void );
char        *RB_Skip_Remark_Marker( char *lline_buffer );
int          RB_Has_Remark_Marker( char* lline_buffer );

#endif /* ROBODOC_HEADERS_H */