20 #include <znc/zncconfig.h>
77 const std::vector<CChan*>&
GetChans()
const;
90 const std::vector<CServer*>&
GetServers()
const;
162 bool JoinChan(
CChan* pChan);
201 #endif // !_IRCNETWORK_H
CString m_sNick
Definition: IRCNetwork.h:168
void SetIRCAway(bool b)
Definition: IRCNetwork.h:112
CBuffer m_QueryBuffer
Definition: IRCNetwork.h:198
const CString & GetIRCServer() const
CString m_sRealName
Definition: IRCNetwork.h:171
bool PutStatus(const CString &sLine, CClient *pClient=NULL, CClient *pSkipClient=NULL)
size_type UpdateExactLine(const CString &sFormat, const CString &sText="")
Same as UpdateLine, but does nothing if this exact line already exists.
void SetBindHost(const CString &s)
double GetFloodRate() const
Definition: IRCNetwork.h:154
void SetFloodBurst(unsigned short int uFloodBurst)
Definition: IRCNetwork.h:157
bool SetNextServer(const CServer *pServer)
CBuffer m_MotdBuffer
Definition: IRCNetwork.h:197
bool IsIRCConnected() const
This method will return whether the user is connected and authenticated to an IRC server...
void ClientDisconnected(CClient *pClient)
const CIRCSock * GetIRCSock() const
Definition: IRCNetwork.h:106
bool IsIRCAway() const
Definition: IRCNetwork.h:111
const CString & GetAltNick(const bool bAllowDefault=true) const
CString m_sEncoding
Definition: IRCNetwork.h:173
CModules * m_pModules
Definition: IRCNetwork.h:175
void SetFloodRate(double fFloodRate)
Definition: IRCNetwork.h:156
unsigned short int m_uFloodBurst
Definition: IRCNetwork.h:194
void Clear()
Definition: Buffer.h:71
size_t m_uServerIdx
Index in m_vServers of our current server + 1.
Definition: IRCNetwork.h:188
CBuffer m_RawBuffer
Definition: IRCNetwork.h:196
const CString & GetIdent(const bool bAllowDefault=true) const
const CString & GetChanPrefixes() const
Definition: IRCNetwork.h:86
CString m_sBindHost
Definition: IRCNetwork.h:172
double m_fFloodRate
Set to -1 to disable protection.
Definition: IRCNetwork.h:193
std::vector< CChan * > m_vChans
Definition: IRCNetwork.h:181
const CString & GetRealName() const
Definition: Modules.h:1066
CNick m_IRCNick
Definition: IRCNetwork.h:190
void AddMotdBuffer(const CString &sFormat, const CString &sText="")
Definition: IRCNetwork.h:130
const CModules & GetModules() const
Definition: IRCNetwork.h:70
void UpdateQueryBuffer(const CString &sMatch, const CString &sFormat, const CString &sText="")
Definition: IRCNetwork.h:135
void UpdateExactRawBuffer(const CString &sFormat, const CString &sText="")
Definition: IRCNetwork.h:127
CString m_sIdent
Definition: IRCNetwork.h:170
std::vector< CChan * > FindChans(const CString &sWild) const
void AddQueryBuffer(const CString &sFormat, const CString &sText="")
Definition: IRCNetwork.h:134
bool SetName(const CString &sName)
bool IsLastServer() const
CIRCSock * m_pIRCSock
Definition: IRCNetwork.h:179
void UpdateMotdBuffer(const CString &sMatch, const CString &sFormat, const CString &sText="")
Definition: IRCNetwork.h:131
void SetEncoding(const CString &s)
void ClearQueryBuffer()
Definition: IRCNetwork.h:136
CString m_sIRCServer
Definition: IRCNetwork.h:186
CIRCSock * GetIRCSock()
Definition: IRCNetwork.h:105
CString m_sName
Definition: IRCNetwork.h:165
std::vector< CServer * > m_vServers
Definition: IRCNetwork.h:187
bool HasServers() const
Definition: IRCNetwork.h:91
Definition: FileUtils.h:30
Definition: IRCNetwork.h:36
bool PutIRC(const CString &sLine)
const CString & GetEncoding() const
bool IsNetworkAttached() const
Definition: IRCNetwork.h:62
bool GetIRCConnectEnabled() const
Definition: IRCNetwork.h:103
String class that is used inside ZNC.
Definition: ZNCString.h:67
CString m_sAltNick
Definition: IRCNetwork.h:169
void SetNick(const CString &s)
bool m_bIRCAway
Definition: IRCNetwork.h:191
CServer * FindServer(const CString &sName) const
CChan * FindChan(CString sName) const
size_type UpdateLine(const CString &sMatch, const CString &sFormat, const CString &sText="")
Same as AddLine, but replaces a line whose format string starts with sMatch if there is one...
void SetUser(CUser *pUser)
void SetChanPrefixes(const CString &s)
Definition: IRCNetwork.h:87
void SetIRCSocket(CIRCSock *pIRCSock)
bool IsUserOnline() const
CServer * GetCurrentServer() const
void ClearRawBuffer()
Definition: IRCNetwork.h:128
unsigned short int GetFloodBurst() const
Definition: IRCNetwork.h:155
bool IsChan(const CString &sChan) const
CModules & GetModules()
Definition: IRCNetwork.h:69
CString m_sChanPrefixes
Definition: IRCNetwork.h:183
const std::vector< CChan * > & GetChans() const
void SetAltNick(const CString &s)
const CNick & GetIRCNick() const
CServer * GetNextServer()
const CString & GetName() const
bool DelServer(const CString &sName, unsigned short uPort, const CString &sPass)
void ClientConnected(CClient *pClient)
CString ExpandString(const CString &sStr) const
bool IsUserAttached() const
Definition: IRCNetwork.h:55
void UpdateRawBuffer(const CString &sMatch, const CString &sFormat, const CString &sText="")
Definition: IRCNetwork.h:126
void SetRealName(const CString &s)
void SetIRCNick(const CNick &n)
CIRCNetwork(CUser *pUser, const CString &sName)
bool AddServer(const CString &sName)
const std::vector< CServer * > & GetServers() const
void Clone(const CIRCNetwork &Network, bool bCloneName=true)
bool PutModule(const CString &sModule, const CString &sLine, CClient *pClient=NULL, CClient *pSkipClient=NULL)
std::vector< CClient * > m_vClients
Definition: IRCNetwork.h:177
bool PutUser(const CString &sLine, CClient *pClient=NULL, CClient *pSkipClient=NULL)
size_type AddLine(const CString &sFormat, const CString &sText="", const timeval *ts=0)
CString GetCurNick() const
void SetIdent(const CString &s)
bool AddChan(CChan *pChan)
void ClearMotdBuffer()
Definition: IRCNetwork.h:132
bool ParseConfig(CConfig *pConfig, CString &sError, bool bUpgrade=false)
std::vector< CClient * > & GetClients()
Definition: IRCNetwork.h:63
void SetIRCConnectEnabled(bool b)
void AddRawBuffer(const CString &sFormat, const CString &sText="")
Definition: IRCNetwork.h:125
const CString & GetNick(const bool bAllowDefault=true) const
bool m_bIRCConnectEnabled
Definition: IRCNetwork.h:185
void SetIRCServer(const CString &s)
bool DelChan(const CString &sName)
const CString & GetBindHost() const
CUser * m_pUser
Definition: IRCNetwork.h:166
static bool IsValidNetwork(const CString &sNetwork)