public/compat_wrappers.h

00001 /**
00002  * vim: set ts=4 :
00003  * =============================================================================
00004  * SourceMod
00005  * Copyright (C) 2004-2008 AlliedModders LLC.  All rights reserved.
00006  * =============================================================================
00007  *
00008  * This program is free software; you can redistribute it and/or modify it under
00009  * the terms of the GNU General Public License, version 3.0, as published by the
00010  * Free Software Foundation.
00011  * 
00012  * This program is distributed in the hope that it will be useful, but WITHOUT
00013  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00014  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
00015  * details.
00016  *
00017  * You should have received a copy of the GNU General Public License along with
00018  * this program.  If not, see <http://www.gnu.org/licenses/>.
00019  *
00020  * As a special exception, AlliedModders LLC gives you permission to link the
00021  * code of this program (as well as its derivative works) to "Half-Life 2," the
00022  * "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
00023  * by the Valve Corporation.  You must obey the GNU General Public License in
00024  * all respects for all other code used.  Additionally, AlliedModders LLC grants
00025  * this exception to all derivative works.  AlliedModders LLC defines further
00026  * exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
00027  * or <http://www.sourcemod.net/license.php>.
00028  *
00029  * Version: $Id: compat_wrappers.h 1964 2008-03-27 04:54:56Z damagedsoul $
00030  */
00031 
00032 #ifndef _INCLUDE_SOURCEMOD_COMPAT_WRAPPERS_H_
00033 #define _INCLUDE_SOURCEMOD_COMPAT_WRAPPERS_H_
00034 
00035 #if defined ORANGEBOX_BUILD
00036           #define CONVAR_REGISTER(object)                                       ConVar_Register(0, object)
00037 
00038           inline bool IsFlagSet(ConCommandBase *cmd, int flag)
00039           {
00040                     return cmd->IsFlagSet(flag);
00041           }
00042           inline void InsertServerCommand(const char *buf)
00043           {
00044                     engine->InsertServerCommand(buf);
00045           }
00046 #else
00047           class CCommand
00048           {
00049           public:
00050                     inline const char *ArgS() const
00051                     {
00052                               return engine->Cmd_Args();
00053                     }
00054                     inline int ArgC() const
00055                     {
00056                               return engine->Cmd_Argc();
00057                     }
00058                     inline const char *Arg(int index) const
00059                     {
00060                               return engine->Cmd_Argv(index);
00061                     }
00062           };
00063 
00064           inline bool IsFlagSet(ConCommandBase *cmd, int flag)
00065           {
00066                     return cmd->IsBitSet(flag);
00067           }
00068           inline void InsertServerCommand(const char *buf)
00069           {
00070                     engine->InsertServerCommand(buf);
00071           }
00072 
00073           #define CVAR_INTERFACE_VERSION                                        VENGINE_CVAR_INTERFACE_VERSION
00074 
00075           #define CONVAR_REGISTER(object)                                       ConCommandBaseMgr::OneTimeInit(object)
00076           typedef FnChangeCallback                                              FnChangeCallback_t;
00077 #endif //ORANGEBOX_BUILD
00078 
00079 #endif //_INCLUDE_SOURCEMOD_COMPAT_WRAPPERS_H_

Generated on Fri Nov 21 08:10:11 2008 for SourceMod SDK by  doxygen 1.5.1