diff options
| author | Paul Buetow <paul@buetow.org> | 2010-11-21 16:18:43 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2010-11-21 16:18:43 +0000 |
| commit | 7fa0ff180b35e7fef218f0b9113d7e0f3f9b54a8 (patch) | |
| tree | e45ffca8cf18ac5d00a2928229d8a717a3718669 /src/modl.h | |
| parent | c155ee9e0f133aafff70984f5b09c45efc62ca5a (diff) | |
| parent | 55b08bd93257d32df76efc4e8e3f49311c39ee82 (diff) | |
Diffstat (limited to 'src/modl.h')
| -rw-r--r-- | src/modl.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/modl.h b/src/modl.h new file mode 100644 index 0000000..7790703 --- /dev/null +++ b/src/modl.h @@ -0,0 +1,59 @@ +/*:* + *: File: ./src/modl.h + *: + *: yChat; Homepage: ychat.buetow.org; Version 0.9.0-CURRENT + *: + *: Copyright (C) 2003 Paul C. Buetow, Volker Richter + *: Copyright (C) 2004 Paul C. Buetow + *: Copyright (C) 2005 EXA Digital Solutions GbR + *: Copyright (C) 2006, 2007 Paul C. Buetow + *: + *: 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 option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + *:*/ + +#include "incl.h" + +#ifndef MODL_H +#define MODL_H + +#include "maps/shashmap.h" + +using namespace std; + +class modl : public shashmap<dynmod*> +{ +private: + static void dlclose_( dynmod* mod ); + dynmod* cache_module ( string s_name, bool b_print_sys_msg ); + void preload_modules( string s_path ); + +public: + modl(); + ~modl(); + + dynmod* get_module( string s_name ); + dynmod* get_module( string s_name, string s_user ); + + vector<string>* get_mod_vector() + { + vector<string>* p_ret = get_key_vector(); + return p_ret; + } + + void unload_modules(); + void reload_modules(); +}; + +#endif |
