Subversion Repositories eduke32

Rev

Rev 3708 | Rev 3958 | Go to most recent revision | 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
19
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
20
*/
21
//-------------------------------------------------------------------------
22
 
241 terminx 23
#ifndef __grpscan_h__
24
#define __grpscan_h__
25
 
3708 terminx 26
#define MAXLISTNAMELEN 32
27
 
241 terminx 28
// List of internally-known GRP files
3803 terminx 29
#define NUMGRPFILES 15
3654 terminx 30
 
3803 terminx 31
#define DUKE13_CRC  (int32_t)0xBBC9CE44
32
#define DUKEKR_CRC  (int32_t)0xAA4F6A40
33
#define DUKE15_CRC  (int32_t)0xFD3DCFF1
34
#define DUKEPP_CRC  (int32_t)0xF514A6AC
35
#define DUKE099_CRC (int32_t)0x02F18900
36
#define DUKE10_CRC  (int32_t)0xA28AA589
37
#define DUKE11_CRC  (int32_t)0x912E1E8D
38
#define DUKESW_CRC  (int32_t)0x983AD923
39
#define DUKEMD_CRC  (int32_t)0xC5F71561
40
#define DUKEDC_CRC  (int32_t)0xA8CF80DA
41
#define DUKECB_CRC  (int32_t)0x18F01C5B
42
#define DUKENW_CRC  (int32_t)0xF1CAE8E4
43
#define NAM_CRC     (int32_t)0x75C1F07B
44
#define NAPALM_CRC  (int32_t)0x3DE1589A
45
#define WW2GI_CRC   (int32_t)0x907B82BF
3654 terminx 46
 
47
enum addon_t {
48
    ADDON_NONE,
49
    ADDON_DUKEDC,
50
    ADDON_NWINTER,
51
    ADDON_CARIBBEAN,
52
    NUMADDONS
53
};
54
 
3116 hendricks2 55
typedef struct grpfile {
3708 terminx 56
        char *name;
1205 terminx 57
        int32_t crcval;
58
        int32_t size;
59
        int32_t game;
3654 terminx 60
    int32_t dependency;
3708 terminx 61
    char *scriptname;
62
    char *defname;
241 terminx 63
        struct grpfile *next;
3116 hendricks2 64
} grpfile_type;
241 terminx 65
 
3708 terminx 66
// extern struct grpfile grpfiles[NUMGRPFILES];
3116 hendricks2 67
extern struct grpfile *foundgrps;
3708 terminx 68
extern struct grpfile *listgrps;
3116 hendricks2 69
 
3654 terminx 70
extern struct grpfile * FindGroup(int32_t crcval);
1205 terminx 71
int32_t ScanGroups(void);
241 terminx 72
void FreeGroups(void);
73
 
74
#endif