SourceMod SDK  1.7
IPluginSys.h File Reference

Defines the interface for the Plugin System, which manages loaded plugins. More...

#include <IShareSys.h>
#include <IHandleSys.h>
#include <sp_vm_api.h>

Go to the source code of this file.

Classes

struct  SourceMod::sm_plugininfo_s
 Encapsulates plugin public information exposed through "myinfo.". More...
 
class  SourceMod::IPlugin
 Encapsulates a run-time plugin as maintained by SourceMod. More...
 
class  SourceMod::IPluginIterator
 Iterates over a list of plugins. More...
 
class  SourceMod::IPluginsListener
 Listens for plugin-oriented events. More...
 
class  SourceMod::IPluginManager
 Manages the runtime loading and unloading of plugins. More...
 

Macros

#define SMINTERFACE_PLUGINSYSTEM_NAME   "IPluginManager"
 
#define SMINTERFACE_PLUGINSYSTEM_VERSION   5
 
#define SM_CONTEXTVAR_USER   3
 

Typedefs

typedef struct SourceMod::sm_plugininfo_s SourceMod::sm_plugininfo_t
 Encapsulates plugin public information exposed through "myinfo.".
 

Enumerations

enum  PluginStatus {
  SourceMod::Plugin_Running =0, SourceMod::Plugin_Paused, SourceMod::Plugin_Error, SourceMod::Plugin_Loaded,
  SourceMod::Plugin_Failed, SourceMod::Plugin_Created, SourceMod::Plugin_Uncompiled, SourceMod::Plugin_BadLoad
}
 Describes the usability status of a plugin.
 
enum  PluginType { SourceMod::PluginType_Private, SourceMod::PluginType_MapUpdated, SourceMod::PluginType_MapOnly, SourceMod::PluginType_Global }
 Describes the object lifetime of a plugin.
 

Detailed Description

Defines the interface for the Plugin System, which manages loaded plugins.

vim: set ts=4 sw=4 :

SourceMod

Copyright (C) 2004-2009 AlliedModders LLC. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 3.0, 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, see http://www.gnu.org/licenses/.

As a special exception, AlliedModders LLC gives you permission to link the code of this program (as well as its derivative works) to "Half-Life 2," the "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software by the Valve Corporation. You must obey the GNU General Public License in all respects for all other code used. Additionally, AlliedModders LLC grants this exception to all derivative works. AlliedModders LLC defines further exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007), or http://www.sourcemod.net/license.php.

Version: $Id$

Macro Definition Documentation

#define SM_CONTEXTVAR_USER   3

Context user slot 3 is used Core for holding an IPluginContext pointer.