Rev 4747 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1652 | terminx | 1 | //------------------------------------------------------------------------- |
2 | /* |
||
3 | Copyright (C) 2010 EDuke32 developers and contributors |
||
4 | |||
5 | This file is part of EDuke32. |
||
6 | |||
7 | EDuke32 is free software; you can redistribute it and/or |
||
8 | modify it under the terms of the GNU General Public License version 2 |
||
9 | as published by the Free Software Foundation. |
||
10 | |||
11 | This program is distributed in the hope that it will be useful, |
||
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
||
14 | |||
15 | See the GNU General Public License for more details. |
||
16 | |||
17 | You should have received a copy of the GNU General Public License |
||
18 | along with this program; if not, write to the Free Software |
||
4541 | hendricks2 | 19 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
1652 | terminx | 20 | */ |
21 | //------------------------------------------------------------------------- |
||
22 | |||
4747 | terminx | 23 | #ifndef grpscan_h_ |
24 | #define grpscan_h_ |
||
241 | terminx | 25 | |
3708 | terminx | 26 | #define MAXLISTNAMELEN 32 |
27 | |||
241 | terminx | 28 | // List of internally-known GRP files |
3803 | terminx | 29 | #define DUKE13_CRC (int32_t)0xBBC9CE44 |
30 | #define DUKEKR_CRC (int32_t)0xAA4F6A40 |
||
31 | #define DUKE15_CRC (int32_t)0xFD3DCFF1 |
||
32 | #define DUKEPP_CRC (int32_t)0xF514A6AC |
||
33 | #define DUKE099_CRC (int32_t)0x02F18900 |
||
34 | #define DUKE10_CRC (int32_t)0xA28AA589 |
||
35 | #define DUKE11_CRC (int32_t)0x912E1E8D |
||
36 | #define DUKESW_CRC (int32_t)0x983AD923 |
||
37 | #define DUKEMD_CRC (int32_t)0xC5F71561 |
||
5062 | hendricks2 | 38 | #define DUKEDC13_CRC (int32_t)0xA9242158 |
39 | #define DUKEDCPP_CRC (int32_t)0xB79D997F |
||
3803 | terminx | 40 | #define DUKEDC_CRC (int32_t)0xA8CF80DA |
5062 | hendricks2 | 41 | #define VACA13_CRC (int32_t)0x4A2DBB62 |
42 | #define VACAPP_CRC (int32_t)0x2F4FCCEE |
||
43 | #define VACA15_CRC (int32_t)0xB62B42FD |
||
3803 | terminx | 44 | #define DUKECB_CRC (int32_t)0x18F01C5B |
45 | #define DUKENW_CRC (int32_t)0xF1CAE8E4 |
||
46 | #define NAM_CRC (int32_t)0x75C1F07B |
||
47 | #define NAPALM_CRC (int32_t)0x3DE1589A |
||
48 | #define WW2GI_CRC (int32_t)0x907B82BF |
||
3654 | terminx | 49 | |
50 | enum addon_t { |
||
51 | ADDON_NONE, |
||
52 | ADDON_DUKEDC, |
||
53 | ADDON_NWINTER, |
||
54 | ADDON_CARIBBEAN, |
||
55 | NUMADDONS |
||
56 | }; |
||
57 | |||
3116 | hendricks2 | 58 | typedef struct grpfile { |
3708 | terminx | 59 | char *name; |
1205 | terminx | 60 | int32_t crcval; |
61 | int32_t size; |
||
62 | int32_t game; |
||
3654 | terminx | 63 | int32_t dependency; |
3708 | terminx | 64 | char *scriptname; |
65 | char *defname; |
||
5062 | hendricks2 | 66 | void (*postprocessing)(void); |
241 | terminx | 67 | struct grpfile *next; |
3116 | hendricks2 | 68 | } grpfile_type; |
241 | terminx | 69 | |
5062 | hendricks2 | 70 | extern struct grpfile internalgrpfiles[]; |
3116 | hendricks2 | 71 | extern struct grpfile *foundgrps; |
3708 | terminx | 72 | extern struct grpfile *listgrps; |
3116 | hendricks2 | 73 | |
3654 | terminx | 74 | extern struct grpfile * FindGroup(int32_t crcval); |
1205 | terminx | 75 | int32_t ScanGroups(void); |
241 | terminx | 76 | void FreeGroups(void); |
77 | |||
78 | #endif |