blob: d0d329e8a8719e642f70249820f99e0e9cd1dd81 (
plain)
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
|
/*
See license.txt in the root of this project.
*/
# ifndef LMT_MAINBODY_H
# define LMT_MAINBODY_H
/* Global variables */
typedef enum run_states {
initializing_state,
updating_state,
production_state,
} run_states;
typedef enum ready_states {
output_disabled_state,
output_enabled_state,
} ready_states;
typedef struct main_state_info {
int run_state; /*tex Are we |INITEX|? */
int ready_already; /*tex A typical \TEX\ variable name. */
double start_time;
} main_state_info ;
extern main_state_info lmt_main_state ;
/*tex
The following procedure, which is called just before \TEX\ initializes its input and output,
establishes the initial values of the date and time. It calls a macro-defined |dateandtime|
routine. |dateandtime| in turn is also a |CCODE\ macro, which calls |get_date_and_time|,
passing it the addresses of the day, month, etc., so they can be set by the routine.
|get_date_and_time| also sets up interrupt catching if that is conditionally compiled in the
\CCODE\ code.
*/
extern void tex_main_body (void);
extern void tex_close_files_and_terminate (int error);
# endif
|