aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/system/plugin.h
diff options
context:
space:
mode:
authorGravatar Szymon Tomasz Stefanek2011-01-01 20:19:56 +0000
committerGravatar Szymon Tomasz Stefanek2011-01-01 20:19:56 +0000
commitc601b5a27f74b16158adafe429faefbe573e64a2 (patch)
treea3cde3206a45628f8ac86e8dfbdab70b20c3a831 /src/modules/system/plugin.h
parentprobable compilation fix for rijndaled/crypto++ (diff)
downloadKVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.tar.gz
KVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.tar.bz2
KVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.zip
The big rename for modules. Still some details remaining.
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@5284 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/system/plugin.h')
-rw-r--r--src/modules/system/plugin.h82
1 files changed, 0 insertions, 82 deletions
diff --git a/src/modules/system/plugin.h b/src/modules/system/plugin.h
deleted file mode 100644
index 3edb9ad48..000000000
--- a/src/modules/system/plugin.h
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef _PLUGIN_H_
-#define _PLUGIN_H_
-
-//=============================================================================
-//
-// File : plugin.h
-// Creation date : Wed Apr 11 04 2007 00:54:00 GMT+1 by TheXception
-//
-// This file is part of the KVIrc irc client distribution
-// Copyright (C) 2007-2008 TheXception
-//
-// 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 (at your opinion) 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, write to the Free Software Foundation,
-// Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-//
-//=============================================================================
-
-#include "KviModule.h"
-#include "KviPointerHashTable.h"
-#include <QLibrary>
-
-typedef int (*plugin_function)(int argc, char* argv[], char ** buffer);
-typedef int (*plugin_unload)();
-typedef int (*plugin_canunload)();
-typedef int (*plugin_load)();
-typedef int (*plugin_free)(char * pBuffer);
-
-class KviPlugin
-{
-protected:
- // You have to create plugin instance by calling KviPlugin::load()
- KviPlugin(QLibrary * pLibrary,const QString& name);
-public:
- ~KviPlugin();
-private:
- // shared
- // internal
- QLibrary *m_pLibrary;
- QString m_szName;
-public:
- static KviPlugin* load(const QString& szFileName);
- bool pfree(char * pBuffer);
- bool unload();
- bool canunload();
- int call(const QString& szFunctionName, int argc, char * argv[], char ** pBuffer);
- QString name() const;
- void setName(const QString& szName);
-protected:
-};
-
-class KviPluginManager
-{
- public:
- KviPluginManager();
- ~KviPluginManager();
- private:
- // shared
- bool m_bCanUnload;
- // internal
- KviPointerHashTable<QString,KviPlugin> * m_pPluginDict;
- public:
- bool pluginCall(KviKvsModuleFunctionCall *c);
- bool checkUnload();
- void unloadAll();
- protected:
- bool findPlugin(QString& szName);
- bool isPluginLoaded(const QString& szFileNameOrPathToLoad);
- bool loadPlugin(const QString& szPluginPath);
- KviPlugin * getPlugin(const QString& szPluginPath);
-};
-
-#endif //_PLUGIN_H_