Mercurial > garten
annotate main.c @ 18:5937504619f2
rename game.h -> modules.h; added some error handling; and more
author | meillo@marmaro.de |
---|---|
date | Wed, 23 Jul 2008 17:40:55 +0200 |
parents | f1d43b52ed36 |
children | eb8db0d906de |
rev | line source |
---|---|
13 | 1 #include <stdio.h> |
2 #include <stdlib.h> | |
3 #include "db.h" | |
18
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
4 #include "modules.h" |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
5 |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
6 |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
7 void init(void) { |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
8 /* echo "started backend cycle at `date +%F\ %H:%M:%S`" */ |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
9 db_connect(); |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
10 read_time(); |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
11 } |
13 | 12 |
13 | |
18
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
14 void cleanup(void) { |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
15 db_close(); |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
16 /* echo "finished backend cycle at `date +%F\ %H:%M:%S`" */ |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
17 } |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
18 |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
19 |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
20 void run_module(char* name, int (*module)(void)) { |
13 | 21 printf(" --> %s\n", name); |
18
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
22 if (!module()) { |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
23 fprintf(stderr, "failure in module '%s'\n", name); |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
24 cleanup(); |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
25 exit(2); |
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
26 } |
13 | 27 printf(" --< %s\n", name); |
28 } | |
29 | |
30 | |
31 int main(int argc, char* argv[]) { | |
32 if (argc != 2) { | |
33 printf("usage: %s <database>\n", argv[0]); | |
34 exit(1); | |
35 } | |
36 database = argv[1]; | |
37 printf("database '%s'\n", database); | |
18
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
38 init(); |
13 | 39 |
40 /* modules */ | |
41 run_module("clock", worldclock); | |
42 run_module("weather", weather); | |
43 run_module("environment", environment); | |
44 /* run_module("market", market); */ | |
45 run_module("growth", growth); | |
46 /* run_module("orderexec", orderexec); */ | |
47 | |
18
5937504619f2
rename game.h -> modules.h; added some error handling; and more
meillo@marmaro.de
parents:
13
diff
changeset
|
48 cleanup(); |
13 | 49 return 0; |
50 } |