/*
* The ManaPlus Client
* Copyright (C) 2011-2013 The ManaPlus Developers
*
* This file is part of The ManaPlus Client.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* any later version.
*
* 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, see <http://www.gnu.org/licenses/>.
*/
#include "localconsts.h"
// #define DEBUG_JOYSTICK 1
#ifdef ENABLE_MEM_DEBUG
// #define _DEBUG_NEW_EMULATE_MALLOC 1
#include "debug/debug_new.h"
#define reportFalse(val) reportFalse1(val, __FILE__, __LINE__)
#define reportFalse1(val, file, line) reportFalseReal(val, file, line)
#define reportTrue(val) reportTrue1(val, __FILE__, __LINE__)
#define reportTrue1(val, file, line) reportTrueReal(val, file, line)
#else // ENABLE_MEM_DEBUG
#define reportFalse(val) (val)
#define reportTrue(val) (val)
#endif // ENABLE_MEM_DEBUG
#ifdef DEBUG_SDL_SURFACES
#define MIMG_LoadPNG_RW(src) FakeIMG_LoadPNG_RW(src, __FILE__, __LINE__)
#define MSDL_FreeSurface(s) FakeSDL_FreeSurface(s, __FILE__, __LINE__)
#define MSDL_CreateRGBSurface(flags, w, h, d, r, g, b, a) \
FakeSDL_CreateRGBSurface(flags, w, h, d, r, g, b, a, __FILE__, __LINE__)
#define MSDL_ConvertSurface(src, fmt, flags) \
FakeSDL_ConvertSurface(src, fmt, flags, __FILE__, __LINE__)
#define MTTF_RenderUTF8_Blended(font, text, fg) \
FakeTTF_RenderUTF8_Blended(font, text, fg, __FILE__, __LINE__)
#define MIMG_Load(file) FakeIMG_Load(file, __FILE__, __LINE__)
#define MSDL_DisplayFormatAlpha(surface) \
FakeSDL_DisplayFormatAlpha(surface, __FILE__, __LINE__)
#define MSDL_DisplayFormat(surface) \
FakeSDL_DisplayFormat(surface, __FILE__, __LINE__)
#else // ENABLE_SDL_DEBUG
#define MIMG_LoadPNG_RW(src) IMG_LoadPNG_RW(src)
#define MSDL_FreeSurface(surface) SDL_FreeSurface(surface)
#define MSDL_CreateRGBSurface(flags, w, h, d, r, g, b, a) \
SDL_CreateRGBSurface(flags, w, h, d, r, g, b, a)
#define MSDL_ConvertSurface(src, fmt, flags) \
SDL_ConvertSurface(src, fmt, flags)
#define MTTF_RenderUTF8_Blended(font, text, fg) \
TTF_RenderUTF8_Blended(font, text, fg)
#define MIMG_Load(file) IMG_Load(file)
#define MSDL_DisplayFormatAlpha(surface) SDL_DisplayFormatAlpha(surface)
#define MSDL_DisplayFormat(surface) SDL_DisplayFormat(surface)
#endif // ENABLE_SDL_DEBUG
#ifdef DEBUG_PHYSFS
#define MPHYSFSRWOPS_openRead(name) \
FakePHYSFSRWOPS_openRead(name, __FILE__, __LINE__)
#else // DEBUG_PHYSFS
#define MPHYSFSRWOPS_openRead(name) PHYSFSRWOPS_openRead(name)
#endif // DEBUG_PHYSFS
#ifdef ENABLE_CHECKS
#define CHECKLISTENERS \
config.checkListeners(this, __FILE__, __LINE__); \
serverConfig.checkListeners(this, __FILE__, __LINE__);
#else // ENABLE_CHECKS
#define CHECKLISTENERS
#endif // ENABLE_CHECKS