mirror of
https://github.com/ZDoom/Raze.git
synced 2024-12-15 15:11:41 +00:00
db8b4a00b6
git-svn-id: https://svn.eduke32.com/eduke32@5547 1a8010ca-5511-0410-912e-c29ae57300e0
104 lines
2.7 KiB
C
104 lines
2.7 KiB
C
//-------------------------------------------------------------------------
|
|
/*
|
|
Copyright (C) 2010 EDuke32 developers and contributors
|
|
|
|
This file is part of EDuke32.
|
|
|
|
EDuke32 is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License version 2
|
|
as published by the Free Software Foundation.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
*/
|
|
//-------------------------------------------------------------------------
|
|
|
|
#ifndef grpscan_h_
|
|
#define grpscan_h_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define MAXLISTNAMELEN 32
|
|
|
|
// List of internally-known GRP files
|
|
#define DUKE13_CRC (int32_t)0xBBC9CE44
|
|
#define DUKEKR_CRC (int32_t)0xAA4F6A40
|
|
#define DUKE15_CRC (int32_t)0xFD3DCFF1
|
|
#define DUKEPP_CRC (int32_t)0xF514A6AC
|
|
#define DUKE099_CRC (int32_t)0x02F18900
|
|
#define DUKE10_CRC (int32_t)0xA28AA589
|
|
#define DUKE11_CRC (int32_t)0x912E1E8D
|
|
#define DUKESW_CRC (int32_t)0x983AD923
|
|
#define DUKEMD_CRC (int32_t)0xC5F71561
|
|
#define DUKEDC13_CRC (int32_t)0xA9242158
|
|
#define DUKEDCPP_CRC (int32_t)0xB79D997F
|
|
#define DUKEDC_CRC (int32_t)0xA8CF80DA
|
|
#define VACA13_CRC (int32_t)0x4A2DBB62
|
|
#define VACAPP_CRC (int32_t)0x2F4FCCEE
|
|
#define VACA15_CRC (int32_t)0xB62B42FD
|
|
#define DUKECB_CRC (int32_t)0x18F01C5B
|
|
#define DUKENW_CRC (int32_t)0xF1CAE8E4
|
|
#define DZ2_13_CRC (int32_t)0x82C1B47F
|
|
#define DZ2_PP_CRC (int32_t)0x7FB6117C
|
|
#define NAM_CRC (int32_t)0x75C1F07B
|
|
#define NAPALM_CRC (int32_t)0x3DE1589A
|
|
#define WW2GI_CRC (int32_t)0x907B82BF
|
|
|
|
enum addon_t {
|
|
ADDON_NONE,
|
|
ADDON_DUKEDC,
|
|
ADDON_NWINTER,
|
|
ADDON_CARIBBEAN,
|
|
NUMADDONS
|
|
};
|
|
|
|
typedef struct internalgrpinfo_t {
|
|
char const *name;
|
|
int32_t const crcval;
|
|
int32_t const size;
|
|
int32_t const game;
|
|
int32_t const dependency;
|
|
char const *scriptname;
|
|
void(*postprocessing)(int32_t);
|
|
} internalgrpinfo_t;
|
|
|
|
typedef struct grpinfo_t {
|
|
char *name;
|
|
int32_t crcval;
|
|
int32_t size;
|
|
int32_t game;
|
|
int32_t dependency;
|
|
char *scriptname;
|
|
char *defname;
|
|
void (*postprocessing)(int32_t);
|
|
struct grpinfo_t *next;
|
|
} grpinfo_t;
|
|
|
|
typedef struct grpfile_t {
|
|
char *filename;
|
|
struct grpinfo_t const *type;
|
|
struct grpfile_t *next;
|
|
} grpfile_t;
|
|
|
|
extern grpfile_t *foundgrps;
|
|
extern grpinfo_t *listgrps;
|
|
|
|
extern grpfile_t * FindGroup(int32_t crcval);
|
|
|
|
int32_t ScanGroups(void);
|
|
void FreeGroups(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|