ZNC  trunk
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | List of all members
CModules Class Reference

#include <Modules.h>

+ Inheritance diagram for CModules:
+ Collaboration diagram for CModules:

Public Types

typedef std::queue< std::pair
< CString, CString > > 
ModDirList
 

Public Member Functions

 CModules ()
 
 ~CModules ()
 
 CModules (const CModules &)=default
 
CModulesoperator= (const CModules &)=default
 
void SetUser (CUser *pUser)
 
void SetNetwork (CIRCNetwork *pNetwork)
 
void SetClient (CClient *pClient)
 
CUserGetUser () const
 
CIRCNetworkGetNetwork () const
 
CClientGetClient () const
 
void UnloadAll ()
 
bool OnBoot ()
 
bool OnPreRehash ()
 
bool OnPostRehash ()
 
bool OnIRCDisconnected ()
 
bool OnIRCConnected ()
 
bool OnIRCConnecting (CIRCSock *pIRCSock)
 
bool OnIRCConnectionError (CIRCSock *pIRCSock)
 
bool OnIRCRegistration (CString &sPass, CString &sNick, CString &sIdent, CString &sRealName)
 
bool OnBroadcast (CString &sMessage)
 
bool OnChanPermission3 (const CNick *pOpNick, const CNick &Nick, CChan &Channel, char cMode, bool bAdded, bool bNoChange)
 
bool OnChanPermission2 (const CNick *pOpNick, const CNick &Nick, CChan &Channel, unsigned char uMode, bool bAdded, bool bNoChange)
 
bool OnChanPermission (const CNick &OpNick, const CNick &Nick, CChan &Channel, unsigned char uMode, bool bAdded, bool bNoChange)
 
bool OnOp2 (const CNick *pOpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnOp (const CNick &OpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnDeop2 (const CNick *pOpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnDeop (const CNick &OpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnVoice2 (const CNick *pOpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnVoice (const CNick &OpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnDevoice2 (const CNick *pOpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnDevoice (const CNick &OpNick, const CNick &Nick, CChan &Channel, bool bNoChange)
 
bool OnRawMode2 (const CNick *pOpNick, CChan &Channel, const CString &sModes, const CString &sArgs)
 
bool OnRawMode (const CNick &OpNick, CChan &Channel, const CString &sModes, const CString &sArgs)
 
bool OnMode2 (const CNick *pOpNick, CChan &Channel, char uMode, const CString &sArg, bool bAdded, bool bNoChange)
 
bool OnMode (const CNick &OpNick, CChan &Channel, char uMode, const CString &sArg, bool bAdded, bool bNoChange)
 
bool OnRaw (CString &sLine)
 
bool OnRawMessage (CMessage &Message)
 
bool OnNumericMessage (CNumericMessage &Message)
 
bool OnStatusCommand (CString &sCommand)
 
bool OnModCommand (const CString &sCommand)
 
bool OnModNotice (const CString &sMessage)
 
bool OnModCTCP (const CString &sMessage)
 
bool OnQuit (const CNick &Nick, const CString &sMessage, const std::vector< CChan * > &vChans)
 
bool OnQuitMessage (CQuitMessage &Message, const std::vector< CChan * > &vChans)
 
bool OnNick (const CNick &Nick, const CString &sNewNick, const std::vector< CChan * > &vChans)
 
bool OnNickMessage (CNickMessage &Message, const std::vector< CChan * > &vChans)
 
bool OnKick (const CNick &Nick, const CString &sOpNick, CChan &Channel, const CString &sMessage)
 
bool OnKickMessage (CKickMessage &Message)
 
bool OnJoining (CChan &Channel)
 
bool OnJoin (const CNick &Nick, CChan &Channel)
 
bool OnJoinMessage (CJoinMessage &Message)
 
bool OnPart (const CNick &Nick, CChan &Channel, const CString &sMessage)
 
bool OnPartMessage (CPartMessage &Message)
 
bool OnInvite (const CNick &Nick, const CString &sChan)
 
bool OnChanBufferStarting (CChan &Chan, CClient &Client)
 
bool OnChanBufferEnding (CChan &Chan, CClient &Client)
 
bool OnChanBufferPlayLine2 (CChan &Chan, CClient &Client, CString &sLine, const timeval &tv)
 
bool OnChanBufferPlayLine (CChan &Chan, CClient &Client, CString &sLine)
 
bool OnPrivBufferStarting (CQuery &Query, CClient &Client)
 
bool OnPrivBufferEnding (CQuery &Query, CClient &Client)
 
bool OnPrivBufferPlayLine2 (CClient &Client, CString &sLine, const timeval &tv)
 
bool OnPrivBufferPlayLine (CClient &Client, CString &sLine)
 
bool OnChanBufferPlayMessage (CMessage &Message)
 
bool OnPrivBufferPlayMessage (CMessage &Message)
 
bool OnClientLogin ()
 
bool OnClientDisconnect ()
 
bool OnUserRaw (CString &sLine)
 
bool OnUserRawMessage (CMessage &Message)
 
bool OnUserCTCPReply (CString &sTarget, CString &sMessage)
 
bool OnUserCTCPReplyMessage (CCTCPMessage &Message)
 
bool OnUserCTCP (CString &sTarget, CString &sMessage)
 
bool OnUserCTCPMessage (CCTCPMessage &Message)
 
bool OnUserAction (CString &sTarget, CString &sMessage)
 
bool OnUserActionMessage (CActionMessage &Message)
 
bool OnUserMsg (CString &sTarget, CString &sMessage)
 
bool OnUserTextMessage (CTextMessage &Message)
 
bool OnUserNotice (CString &sTarget, CString &sMessage)
 
bool OnUserNoticeMessage (CNoticeMessage &Message)
 
bool OnUserJoin (CString &sChannel, CString &sKey)
 
bool OnUserJoinMessage (CJoinMessage &Message)
 
bool OnUserPart (CString &sChannel, CString &sMessage)
 
bool OnUserPartMessage (CPartMessage &Message)
 
bool OnUserTopic (CString &sChannel, CString &sTopic)
 
bool OnUserTopicMessage (CTopicMessage &Message)
 
bool OnUserTopicRequest (CString &sChannel)
 
bool OnUserQuit (CString &sMessage)
 
bool OnUserQuitMessage (CQuitMessage &Message)
 
bool OnCTCPReply (CNick &Nick, CString &sMessage)
 
bool OnCTCPReplyMessage (CCTCPMessage &Message)
 
bool OnPrivCTCP (CNick &Nick, CString &sMessage)
 
bool OnPrivCTCPMessage (CCTCPMessage &Message)
 
bool OnChanCTCP (CNick &Nick, CChan &Channel, CString &sMessage)
 
bool OnChanCTCPMessage (CCTCPMessage &Message)
 
bool OnPrivAction (CNick &Nick, CString &sMessage)
 
bool OnPrivActionMessage (CActionMessage &Message)
 
bool OnChanAction (CNick &Nick, CChan &Channel, CString &sMessage)
 
bool OnChanActionMessage (CActionMessage &Message)
 
bool OnPrivMsg (CNick &Nick, CString &sMessage)
 
bool OnPrivTextMessage (CTextMessage &Message)
 
bool OnChanMsg (CNick &Nick, CChan &Channel, CString &sMessage)
 
bool OnChanTextMessage (CTextMessage &Message)
 
bool OnPrivNotice (CNick &Nick, CString &sMessage)
 
bool OnPrivNoticeMessage (CNoticeMessage &Message)
 
bool OnChanNotice (CNick &Nick, CChan &Channel, CString &sMessage)
 
bool OnChanNoticeMessage (CNoticeMessage &Message)
 
bool OnTopic (CNick &Nick, CChan &Channel, CString &sTopic)
 
bool OnTopicMessage (CTopicMessage &Message)
 
bool OnTimerAutoJoin (CChan &Channel)
 
bool OnAddNetwork (CIRCNetwork &Network, CString &sErrorRet)
 
bool OnDeleteNetwork (CIRCNetwork &Network)
 
bool OnSendToClient (CString &sLine, CClient &Client)
 
bool OnSendToClientMessage (CMessage &Message)
 
bool OnSendToIRC (CString &sLine)
 
bool OnSendToIRCMessage (CMessage &Message)
 
bool OnServerCapAvailable (const CString &sCap)
 
bool OnServerCapResult (const CString &sCap, bool bSuccess)
 
CModuleFindModule (const CString &sModule) const
 
bool LoadModule (const CString &sModule, const CString &sArgs, CModInfo::EModuleType eType, CUser *pUser, CIRCNetwork *pNetwork, CString &sRetMsg)
 
bool UnloadModule (const CString &sModule)
 
bool UnloadModule (const CString &sModule, CString &sRetMsg)
 
bool ReloadModule (const CString &sModule, const CString &sArgs, CUser *pUser, CIRCNetwork *pNetwork, CString &sRetMsg)
 
bool OnAddUser (CUser &User, CString &sErrorRet)
 
bool OnDeleteUser (CUser &User)
 
bool OnClientConnect (CZNCSock *pSock, const CString &sHost, unsigned short uPort)
 
bool OnLoginAttempt (std::shared_ptr< CAuthBase > Auth)
 
bool OnFailedLogin (const CString &sUsername, const CString &sRemoteIP)
 
bool OnUnknownUserRaw (CClient *pClient, CString &sLine)
 
bool OnUnknownUserRawMessage (CMessage &Message)
 
bool OnClientCapLs (CClient *pClient, SCString &ssCaps)
 
bool IsClientCapSupported (CClient *pClient, const CString &sCap, bool bState)
 
bool OnClientCapRequest (CClient *pClient, const CString &sCap, bool bState)
 
bool OnModuleLoading (const CString &sModName, const CString &sArgs, CModInfo::EModuleType eType, bool &bSuccess, CString &sRetMsg)
 
bool OnModuleUnloading (CModule *pModule, bool &bSuccess, CString &sRetMsg)
 
bool OnGetModInfo (CModInfo &ModInfo, const CString &sModule, bool &bSuccess, CString &sRetMsg)
 
bool OnGetAvailableMods (std::set< CModInfo > &ssMods, CModInfo::EModuleType eType)
 

Static Public Member Functions

static bool GetModInfo (CModInfo &ModInfo, const CString &sModule, CString &sRetMsg)
 
static bool GetModPathInfo (CModInfo &ModInfo, const CString &sModule, const CString &sModPath, CString &sRetMsg)
 
static void GetAvailableMods (std::set< CModInfo > &ssMods, CModInfo::EModuleType eType=CModInfo::UserModule)
 
static void GetDefaultMods (std::set< CModInfo > &ssMods, CModInfo::EModuleType eType=CModInfo::UserModule)
 
static bool FindModPath (const CString &sModule, CString &sModPath, CString &sDataPath)
 
static ModDirList GetModDirs ()
 

Public Attributes

elements
 STL member. More...
 

Protected Attributes

CUserm_pUser
 
CIRCNetworkm_pNetwork
 
CClientm_pClient
 

Member Typedef Documentation

typedef std::queue<std::pair<CString, CString> > CModules::ModDirList

Constructor & Destructor Documentation

CModules::CModules ( )
CModules::~CModules ( )
CModules::CModules ( const CModules )
default

Member Function Documentation

static bool CModules::FindModPath ( const CString sModule,
CString sModPath,
CString sDataPath 
)
static
CModule* CModules::FindModule ( const CString sModule) const
static void CModules::GetAvailableMods ( std::set< CModInfo > &  ssMods,
CModInfo::EModuleType  eType = CModInfo::UserModule 
)
static
CClient* CModules::GetClient ( ) const
inline

References m_pClient.

static void CModules::GetDefaultMods ( std::set< CModInfo > &  ssMods,
CModInfo::EModuleType  eType = CModInfo::UserModule 
)
static
static ModDirList CModules::GetModDirs ( )
static
static bool CModules::GetModInfo ( CModInfo ModInfo,
const CString sModule,
CString sRetMsg 
)
static
static bool CModules::GetModPathInfo ( CModInfo ModInfo,
const CString sModule,
const CString sModPath,
CString sRetMsg 
)
static
CIRCNetwork* CModules::GetNetwork ( ) const
inline

References m_pNetwork.

CUser* CModules::GetUser ( ) const
inline

References m_pUser.

bool CModules::IsClientCapSupported ( CClient pClient,
const CString sCap,
bool  bState 
)
bool CModules::LoadModule ( const CString sModule,
const CString sArgs,
CModInfo::EModuleType  eType,
CUser pUser,
CIRCNetwork pNetwork,
CString sRetMsg 
)
bool CModules::OnAddNetwork ( CIRCNetwork Network,
CString sErrorRet 
)
bool CModules::OnAddUser ( CUser User,
CString sErrorRet 
)
bool CModules::OnBoot ( )
bool CModules::OnBroadcast ( CString sMessage)
bool CModules::OnChanAction ( CNick Nick,
CChan Channel,
CString sMessage 
)
bool CModules::OnChanActionMessage ( CActionMessage Message)
bool CModules::OnChanBufferEnding ( CChan Chan,
CClient Client 
)
bool CModules::OnChanBufferPlayLine ( CChan Chan,
CClient Client,
CString sLine 
)
bool CModules::OnChanBufferPlayLine2 ( CChan Chan,
CClient Client,
CString sLine,
const timeval &  tv 
)
bool CModules::OnChanBufferPlayMessage ( CMessage Message)
bool CModules::OnChanBufferStarting ( CChan Chan,
CClient Client 
)
bool CModules::OnChanCTCP ( CNick Nick,
CChan Channel,
CString sMessage 
)
bool CModules::OnChanCTCPMessage ( CCTCPMessage Message)
bool CModules::OnChanMsg ( CNick Nick,
CChan Channel,
CString sMessage 
)
bool CModules::OnChanNotice ( CNick Nick,
CChan Channel,
CString sMessage 
)
bool CModules::OnChanNoticeMessage ( CNoticeMessage Message)
bool CModules::OnChanPermission ( const CNick OpNick,
const CNick Nick,
CChan Channel,
unsigned char  uMode,
bool  bAdded,
bool  bNoChange 
)
bool CModules::OnChanPermission2 ( const CNick pOpNick,
const CNick Nick,
CChan Channel,
unsigned char  uMode,
bool  bAdded,
bool  bNoChange 
)
bool CModules::OnChanPermission3 ( const CNick pOpNick,
const CNick Nick,
CChan Channel,
char  cMode,
bool  bAdded,
bool  bNoChange 
)
bool CModules::OnChanTextMessage ( CTextMessage Message)
bool CModules::OnClientCapLs ( CClient pClient,
SCString ssCaps 
)
bool CModules::OnClientCapRequest ( CClient pClient,
const CString sCap,
bool  bState 
)
bool CModules::OnClientConnect ( CZNCSock pSock,
const CString sHost,
unsigned short  uPort 
)
bool CModules::OnClientDisconnect ( )
bool CModules::OnClientLogin ( )
bool CModules::OnCTCPReply ( CNick Nick,
CString sMessage 
)
bool CModules::OnCTCPReplyMessage ( CCTCPMessage Message)
bool CModules::OnDeleteNetwork ( CIRCNetwork Network)
bool CModules::OnDeleteUser ( CUser User)
bool CModules::OnDeop ( const CNick OpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
bool CModules::OnDeop2 ( const CNick pOpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
bool CModules::OnDevoice ( const CNick OpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
bool CModules::OnDevoice2 ( const CNick pOpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
bool CModules::OnFailedLogin ( const CString sUsername,
const CString sRemoteIP 
)
bool CModules::OnGetAvailableMods ( std::set< CModInfo > &  ssMods,
CModInfo::EModuleType  eType 
)
bool CModules::OnGetModInfo ( CModInfo ModInfo,
const CString sModule,
bool &  bSuccess,
CString sRetMsg 
)
bool CModules::OnInvite ( const CNick Nick,
const CString sChan 
)
bool CModules::OnIRCConnected ( )
bool CModules::OnIRCConnecting ( CIRCSock pIRCSock)
bool CModules::OnIRCConnectionError ( CIRCSock pIRCSock)
bool CModules::OnIRCDisconnected ( )
bool CModules::OnIRCRegistration ( CString sPass,
CString sNick,
CString sIdent,
CString sRealName 
)
bool CModules::OnJoin ( const CNick Nick,
CChan Channel 
)
bool CModules::OnJoining ( CChan Channel)
bool CModules::OnJoinMessage ( CJoinMessage Message)
bool CModules::OnKick ( const CNick Nick,
const CString sOpNick,
CChan Channel,
const CString sMessage 
)
bool CModules::OnKickMessage ( CKickMessage Message)
bool CModules::OnLoginAttempt ( std::shared_ptr< CAuthBase Auth)
bool CModules::OnModCommand ( const CString sCommand)
bool CModules::OnModCTCP ( const CString sMessage)
bool CModules::OnMode ( const CNick OpNick,
CChan Channel,
char  uMode,
const CString sArg,
bool  bAdded,
bool  bNoChange 
)
bool CModules::OnMode2 ( const CNick pOpNick,
CChan Channel,
char  uMode,
const CString sArg,
bool  bAdded,
bool  bNoChange 
)
bool CModules::OnModNotice ( const CString sMessage)
bool CModules::OnModuleLoading ( const CString sModName,
const CString sArgs,
CModInfo::EModuleType  eType,
bool &  bSuccess,
CString sRetMsg 
)
bool CModules::OnModuleUnloading ( CModule pModule,
bool &  bSuccess,
CString sRetMsg 
)
bool CModules::OnNick ( const CNick Nick,
const CString sNewNick,
const std::vector< CChan * > &  vChans 
)
bool CModules::OnNickMessage ( CNickMessage Message,
const std::vector< CChan * > &  vChans 
)
bool CModules::OnNumericMessage ( CNumericMessage Message)
bool CModules::OnOp ( const CNick OpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
bool CModules::OnOp2 ( const CNick pOpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
bool CModules::OnPart ( const CNick Nick,
CChan Channel,
const CString sMessage 
)
bool CModules::OnPartMessage ( CPartMessage Message)
bool CModules::OnPostRehash ( )
bool CModules::OnPreRehash ( )
bool CModules::OnPrivAction ( CNick Nick,
CString sMessage 
)
bool CModules::OnPrivActionMessage ( CActionMessage Message)
bool CModules::OnPrivBufferEnding ( CQuery Query,
CClient Client 
)
bool CModules::OnPrivBufferPlayLine ( CClient Client,
CString sLine 
)
bool CModules::OnPrivBufferPlayLine2 ( CClient Client,
CString sLine,
const timeval &  tv 
)
bool CModules::OnPrivBufferPlayMessage ( CMessage Message)
bool CModules::OnPrivBufferStarting ( CQuery Query,
CClient Client 
)
bool CModules::OnPrivCTCP ( CNick Nick,
CString sMessage 
)
bool CModules::OnPrivCTCPMessage ( CCTCPMessage Message)
bool CModules::OnPrivMsg ( CNick Nick,
CString sMessage 
)
bool CModules::OnPrivNotice ( CNick Nick,
CString sMessage 
)
bool CModules::OnPrivNoticeMessage ( CNoticeMessage Message)
bool CModules::OnPrivTextMessage ( CTextMessage Message)
bool CModules::OnQuit ( const CNick Nick,
const CString sMessage,
const std::vector< CChan * > &  vChans 
)
bool CModules::OnQuitMessage ( CQuitMessage Message,
const std::vector< CChan * > &  vChans 
)
bool CModules::OnRaw ( CString sLine)
bool CModules::OnRawMessage ( CMessage Message)
bool CModules::OnRawMode ( const CNick OpNick,
CChan Channel,
const CString sModes,
const CString sArgs 
)
bool CModules::OnRawMode2 ( const CNick pOpNick,
CChan Channel,
const CString sModes,
const CString sArgs 
)
bool CModules::OnSendToClient ( CString sLine,
CClient Client 
)
bool CModules::OnSendToClientMessage ( CMessage Message)
bool CModules::OnSendToIRC ( CString sLine)
bool CModules::OnSendToIRCMessage ( CMessage Message)
bool CModules::OnServerCapAvailable ( const CString sCap)
bool CModules::OnServerCapResult ( const CString sCap,
bool  bSuccess 
)
bool CModules::OnStatusCommand ( CString sCommand)
bool CModules::OnTimerAutoJoin ( CChan Channel)
bool CModules::OnTopic ( CNick Nick,
CChan Channel,
CString sTopic 
)
bool CModules::OnTopicMessage ( CTopicMessage Message)
bool CModules::OnUnknownUserRaw ( CClient pClient,
CString sLine 
)
bool CModules::OnUnknownUserRawMessage ( CMessage Message)
bool CModules::OnUserAction ( CString sTarget,
CString sMessage 
)
bool CModules::OnUserActionMessage ( CActionMessage Message)
bool CModules::OnUserCTCP ( CString sTarget,
CString sMessage 
)
bool CModules::OnUserCTCPMessage ( CCTCPMessage Message)
bool CModules::OnUserCTCPReply ( CString sTarget,
CString sMessage 
)
bool CModules::OnUserCTCPReplyMessage ( CCTCPMessage Message)
bool CModules::OnUserJoin ( CString sChannel,
CString sKey 
)
bool CModules::OnUserJoinMessage ( CJoinMessage Message)
bool CModules::OnUserMsg ( CString sTarget,
CString sMessage 
)
bool CModules::OnUserNotice ( CString sTarget,
CString sMessage 
)
bool CModules::OnUserNoticeMessage ( CNoticeMessage Message)
bool CModules::OnUserPart ( CString sChannel,
CString sMessage 
)
bool CModules::OnUserPartMessage ( CPartMessage Message)
bool CModules::OnUserQuit ( CString sMessage)
bool CModules::OnUserQuitMessage ( CQuitMessage Message)
bool CModules::OnUserRaw ( CString sLine)
bool CModules::OnUserRawMessage ( CMessage Message)
bool CModules::OnUserTextMessage ( CTextMessage Message)
bool CModules::OnUserTopic ( CString sChannel,
CString sTopic 
)
bool CModules::OnUserTopicMessage ( CTopicMessage Message)
bool CModules::OnUserTopicRequest ( CString sChannel)
bool CModules::OnVoice ( const CNick OpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
bool CModules::OnVoice2 ( const CNick pOpNick,
const CNick Nick,
CChan Channel,
bool  bNoChange 
)
CModules& CModules::operator= ( const CModules )
default
bool CModules::ReloadModule ( const CString sModule,
const CString sArgs,
CUser pUser,
CIRCNetwork pNetwork,
CString sRetMsg 
)
void CModules::SetClient ( CClient pClient)
inline

References m_pClient.

void CModules::SetNetwork ( CIRCNetwork pNetwork)
inline

References m_pNetwork.

void CModules::SetUser ( CUser pUser)
inline

References m_pUser.

void CModules::UnloadAll ( )
bool CModules::UnloadModule ( const CString sModule)
bool CModules::UnloadModule ( const CString sModule,
CString sRetMsg 
)

Member Data Documentation

T std::vector< T >::elements
inherited

STL member.

CClient* CModules::m_pClient
protected

Referenced by GetClient(), and SetClient().

CIRCNetwork* CModules::m_pNetwork
protected

Referenced by GetNetwork(), and SetNetwork().

CUser* CModules::m_pUser
protected

Referenced by GetUser(), and SetUser().


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