ZNC  trunk
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Attributes | List of all members
CModuleEntry Struct Reference

C-style entry point to the module. More...

#include <Modules.h>

Public Attributes

const char * pcVersion
const char * pcVersionExtra
const char * pcCompileOptions
void(* fpFillModInfo )(CModInfo &)

Detailed Description

C-style entry point to the module.

First, core compares C strings with version and compilation options of core and module. If they match, assume that C++ classes have the same layout and proceed to filling CModInfo.

Most parts of version-extra is explicitly not compared, otherwise all modules need to be rebuilt for every commit, which is more cumbersome for ZNC developers. However, the part set by user (e.g. +deb1), is compared.

If this struct ever changes, the first field (pcVersion) must stay the same. Otherwise, name of ZNCModuleEntry function must also change. Other fields can change at will.

Modules shouldn't care about this struct, it's all managed by ...MODULEDEFS macro.

Member Data Documentation

void(* CModuleEntry::fpFillModInfo)(CModInfo &)
const char* CModuleEntry::pcCompileOptions
const char* CModuleEntry::pcVersion
const char* CModuleEntry::pcVersionExtra

The documentation for this struct was generated from the following file: