2009-05-08 13:28:41 +00:00
|
|
|
/*
|
|
|
|
* OpenClonk, http://www.openclonk.org
|
|
|
|
*
|
2009-06-05 13:41:20 +00:00
|
|
|
* Copyright (c) 1998-2000, 2007 Matthes Bender
|
|
|
|
* Copyright (c) 2005 Tobias Zwick
|
2010-12-23 00:01:24 +00:00
|
|
|
* Copyright (c) 2005, 2008, 2010 Sven Eberhardt
|
|
|
|
* Copyright (c) 2005-2006, 2010 Günther Brammer
|
|
|
|
* Copyright (c) 2010 Nicolas Hake
|
2009-05-08 13:28:41 +00:00
|
|
|
* Copyright (c) 2001-2009, RedWolf Design GmbH, http://www.clonk.de
|
|
|
|
*
|
|
|
|
* Portions might be copyrighted by other authors who have contributed
|
|
|
|
* to OpenClonk.
|
|
|
|
*
|
|
|
|
* Permission to use, copy, modify, and/or distribute this software for any
|
|
|
|
* purpose with or without fee is hereby granted, provided that the above
|
|
|
|
* copyright notice and this permission notice appear in all copies.
|
|
|
|
* See isc_license.txt for full license and disclaimer.
|
|
|
|
*
|
|
|
|
* "Clonk" is a registered trademark of Matthes Bender.
|
|
|
|
* See clonk_trademark_license.txt for full license.
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* Main header to include all others */
|
|
|
|
|
|
|
|
#ifndef INC_C4Include
|
|
|
|
#define INC_C4Include
|
|
|
|
|
2010-12-09 11:19:39 +00:00
|
|
|
#include "PlatformAbstraction.h"
|
|
|
|
|
|
|
|
// boost headers - after PlatformAbstraction to prevent redefines of stdint
|
2010-12-08 19:20:41 +00:00
|
|
|
#include <boost/function.hpp>
|
|
|
|
#include <boost/bind.hpp>
|
|
|
|
|
2010-01-02 00:11:54 +00:00
|
|
|
#include "Standard.h"
|
2010-03-04 21:16:55 +00:00
|
|
|
#include "C4Prototypes.h"
|
2010-05-04 15:35:18 +00:00
|
|
|
#include "C4Real.h"
|
2010-01-02 00:11:54 +00:00
|
|
|
#include "StdBuf.h"
|
|
|
|
#include "StdFile.h"
|
|
|
|
#include "StdResStr2.h"
|
2010-03-04 21:16:55 +00:00
|
|
|
#include "C4Log.h"
|
2011-01-06 20:18:13 +00:00
|
|
|
#include "C4Reloc.h"
|
2011-11-01 23:07:29 +00:00
|
|
|
#include "C4Config.h"
|
2009-10-25 23:09:34 +00:00
|
|
|
|
2010-08-03 20:55:49 +00:00
|
|
|
#include "C4Game.h"
|
|
|
|
|
2009-05-08 13:28:41 +00:00
|
|
|
#ifdef DEBUGREC
|
|
|
|
#define DEBUGREC_SCRIPT
|
|
|
|
#define DEBUGREC_START_FRAME 0
|
|
|
|
#define DEBUGREC_PXS
|
|
|
|
#define DEBUGREC_OBJCOM
|
|
|
|
#define DEBUGREC_MATSCAN
|
|
|
|
//#define DEBUGREC_RECRUITMENT
|
|
|
|
#define DEBUGREC_MENU
|
|
|
|
#define DEBUGREC_OCF
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// solidmask debugging
|
|
|
|
//#define SOLIDMASK_DEBUG
|
|
|
|
|
2010-12-07 22:43:00 +00:00
|
|
|
// debug memory management - must come after boost headers,
|
|
|
|
// because boost uses placement new
|
|
|
|
#ifndef NODEBUGMEM
|
|
|
|
#if defined(_DEBUG) && defined(_MSC_VER)
|
|
|
|
#if _MSC_VER <= 1200
|
|
|
|
#include <new>
|
|
|
|
#include <memory>
|
|
|
|
#include <crtdbg.h>
|
|
|
|
#include <malloc.h>
|
|
|
|
#define malloc(size) ::_malloc_dbg(size, _NORMAL_BLOCK, __FILE__, __LINE__)
|
|
|
|
#else
|
|
|
|
#define _CRTDBG_MAP_ALLOC
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <crtdbg.h>
|
|
|
|
#endif
|
2010-12-13 16:31:21 +00:00
|
|
|
inline void *operator new(size_t s, const char *szFile, long iLine)
|
2010-12-07 22:43:00 +00:00
|
|
|
{ return ::operator new(s, _NORMAL_BLOCK, szFile, iLine); }
|
|
|
|
inline void operator delete(void *p, const char *, long)
|
|
|
|
{ ::operator delete(p); }
|
|
|
|
#define new_orig new
|
|
|
|
#define new new(__FILE__, __LINE__)
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2010-01-02 00:11:54 +00:00
|
|
|
#include <algorithm>
|
|
|
|
#include <cassert>
|
|
|
|
#include <cctype>
|
|
|
|
#include <cerrno>
|
|
|
|
#include <climits>
|
2010-04-24 15:40:41 +00:00
|
|
|
|
2010-01-02 00:11:54 +00:00
|
|
|
#include <cmath>
|
|
|
|
#include <cstdarg>
|
|
|
|
#include <cstddef>
|
|
|
|
#include <cstdio>
|
|
|
|
#include <cstdlib>
|
|
|
|
#include <cstring>
|
|
|
|
#include <ctime>
|
|
|
|
#include <iostream>
|
|
|
|
#include <list>
|
|
|
|
#include <map>
|
|
|
|
#include <memory>
|
|
|
|
#include <new>
|
|
|
|
#include <set>
|
|
|
|
#include <sstream>
|
|
|
|
#include <stdexcept>
|
|
|
|
#include <string>
|
|
|
|
#include <utility>
|
|
|
|
#include <vector>
|
2009-05-08 13:28:41 +00:00
|
|
|
|
|
|
|
#endif // INC_C4Include
|