/*
$Log$
-Revision 1.1 2003/01/23 19:45:58 brain
-Initial revision
+Revision 1.2 2003/01/26 23:52:59 brain
+Modified documentation for base classes
+Added base classes
+
+Revision 1.1.1.1 2003/01/23 19:45:58 brain
+InspIRCd second source tree
Revision 1.12 2003/01/22 20:59:10 brain
Added FileReader class documentation
#define __PLUGIN_H
#include "dynamic.h"
+#include "base.h"
#include <string>
#include <deque>
* The four members (set by the constructor only) indicate details as to the version number
* of a module. A class of type Version is returned by the GetVersion method of the Module class.
*/
-class Version
+class Version : public classbase
{
public:
const int Major, Minor, Revision, Build;
* and has three read-only values, Name, Email and Nick that contain the specified values for the
* server where the module is running.
*/
-class Admin
+class Admin : public classbase
{
public:
const string Name, Email, Nick;
* its methods will be called when irc server events occur. class inherited from module must be
* instantiated by the ModuleFactory class (see relevent section) for the plugin to be initialised.
*/
-class Module
+class Module : public classbase
{
public:
/** Default constructor
* output to users and other servers. All modules should instantiate at least one copy of this class,
* and use its member functions to perform their tasks.
*/
-class Server
+class Server : public classbase
{
public:
/** Default constructor.
* Constructing the class using one parameter allows you to specify a path to your own configuration
* file, otherwise, inspircd.conf is read.
*/
-class ConfigReader
+class ConfigReader : public classbase
{
protected:
/** The filename of the configuration file, as set by the constructor.
* Either use the constructor type with one parameter to load a file into memory
* at construction, or use the LoadFile method to load a file.
*/
-class FileReader
+class FileReader : public classbase
{
file_cache fc;
public:
* In most cases, the simple class shown in the example module m_foobar.so will suffice for most
* modules.
*/
-class ModuleFactory
+class ModuleFactory : public classbase
{
public:
ModuleFactory() { }