public/compat_wrappers.h
author David Anderson <dvander@alliedmods.net>
Wed Feb 25 20:07:12 2009 -0500 (2009-02-25)
changeset 2607 f3b8bbe17f85
parent 2289 44045ead61cd
child 2400 76b7b4575e21
permissions -rw-r--r--
Backed out changeset fa286305bd3f
faluco@1541
     1
/**
faluco@1541
     2
 * vim: set ts=4 :
faluco@1541
     3
 * =============================================================================
faluco@1541
     4
 * SourceMod
ds@1947
     5
 * Copyright (C) 2004-2008 AlliedModders LLC.  All rights reserved.
faluco@1541
     6
 * =============================================================================
faluco@1541
     7
 *
faluco@1541
     8
 * This program is free software; you can redistribute it and/or modify it under
faluco@1541
     9
 * the terms of the GNU General Public License, version 3.0, as published by the
faluco@1541
    10
 * Free Software Foundation.
faluco@1541
    11
 * 
faluco@1541
    12
 * This program is distributed in the hope that it will be useful, but WITHOUT
faluco@1541
    13
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
faluco@1541
    14
 * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
faluco@1541
    15
 * details.
faluco@1541
    16
 *
faluco@1541
    17
 * You should have received a copy of the GNU General Public License along with
faluco@1541
    18
 * this program.  If not, see <http://www.gnu.org/licenses/>.
faluco@1541
    19
 *
faluco@1541
    20
 * As a special exception, AlliedModders LLC gives you permission to link the
faluco@1541
    21
 * code of this program (as well as its derivative works) to "Half-Life 2," the
faluco@1541
    22
 * "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
faluco@1541
    23
 * by the Valve Corporation.  You must obey the GNU General Public License in
faluco@1541
    24
 * all respects for all other code used.  Additionally, AlliedModders LLC grants
faluco@1541
    25
 * this exception to all derivative works.  AlliedModders LLC defines further
faluco@1541
    26
 * exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
faluco@1541
    27
 * or <http://www.sourcemod.net/license.php>.
faluco@1541
    28
 *
faluco@1541
    29
 * Version: $Id$
faluco@1541
    30
 */
faluco@1541
    31
faluco@1541
    32
#ifndef _INCLUDE_SOURCEMOD_COMPAT_WRAPPERS_H_
faluco@1541
    33
#define _INCLUDE_SOURCEMOD_COMPAT_WRAPPERS_H_
faluco@1541
    34
faluco@1541
    35
#if defined ORANGEBOX_BUILD
faluco@1541
    36
	#define CONVAR_REGISTER(object)				ConVar_Register(0, object)
faluco@1541
    37
faluco@1541
    38
	inline bool IsFlagSet(ConCommandBase *cmd, int flag)
faluco@1541
    39
	{
faluco@1541
    40
		return cmd->IsFlagSet(flag);
faluco@1541
    41
	}
faluco@1541
    42
	inline void InsertServerCommand(const char *buf)
faluco@1541
    43
	{
dvander@1731
    44
		engine->InsertServerCommand(buf);
faluco@1541
    45
	}
faluco@1541
    46
#else
faluco@1541
    47
	class CCommand
faluco@1541
    48
	{
faluco@1541
    49
	public:
faluco@1541
    50
		inline const char *ArgS() const
faluco@1541
    51
		{
faluco@1541
    52
			return engine->Cmd_Args();
faluco@1541
    53
		}
faluco@1541
    54
		inline int ArgC() const
faluco@1541
    55
		{
faluco@1541
    56
			return engine->Cmd_Argc();
faluco@1541
    57
		}
faluco@1541
    58
		inline const char *Arg(int index) const
faluco@1541
    59
		{
faluco@1541
    60
			return engine->Cmd_Argv(index);
faluco@1541
    61
		}
faluco@1541
    62
	};
faluco@1541
    63
faluco@1541
    64
	inline bool IsFlagSet(ConCommandBase *cmd, int flag)
faluco@1541
    65
	{
faluco@1541
    66
		return cmd->IsBitSet(flag);
faluco@1541
    67
	}
faluco@1541
    68
	inline void InsertServerCommand(const char *buf)
faluco@1541
    69
	{
faluco@1541
    70
		engine->InsertServerCommand(buf);
faluco@1541
    71
	}
faluco@1541
    72
dvander@1545
    73
	#define CVAR_INTERFACE_VERSION				VENGINE_CVAR_INTERFACE_VERSION
dvander@1545
    74
faluco@1541
    75
	#define CONVAR_REGISTER(object)				ConCommandBaseMgr::OneTimeInit(object)
faluco@1541
    76
	typedef FnChangeCallback					FnChangeCallback_t;
faluco@1541
    77
#endif //ORANGEBOX_BUILD
faluco@1541
    78
faluco@1541
    79
#endif //_INCLUDE_SOURCEMOD_COMPAT_WRAPPERS_H_