16 #ifndef C4NETWORK2IRC_H
17 #define C4NETWORK2IRC_H
38 : iTimestamp(time(
nullptr)), eType(enType), Source(szSource), Target(szTarget), Data(szData), Next(
nullptr)
80 void SetPrefix(
const char *szPrefix) { Prefix = szPrefix; }
110 void OnUsers(
const char *szUsers,
const char *szPrefixes);
112 void OnJoin(
const char *szUser);
113 void OnPart(
const char *szUser,
const char *szComment);
114 void OnKick(
const char *szUser,
const char *szComment);
115 void OnTopic(
const char *szTopic);
132 bool fConnecting{
false}, fConnected{
false};
144 int32_t iLogLength{0}, iUnreadLogLength{0};
179 bool Connect(
const char *szServer,
const char *szNick,
const char *szRealName,
const char *szPassword =
nullptr,
const char *szChannel =
nullptr);
181 bool Close()
override;
183 bool Send(
const char *szCommand,
const char *szParameters =
nullptr);
189 bool Quit(
const char *szReason);
190 bool Join(
const char *szChannel);
191 bool Part(
const char *szChannel);
192 bool Message(
const char *szTarget,
const char *szText);
193 bool Notice(
const char *szTarget,
const char *szText);
194 bool Action(
const char *szTarget,
const char *szText);
196 bool RegisterNick(
const char *szPassword,
const char *szMail);
199 bool IsActive()
const {
return fConnecting || fConnected; }
203 void OnCommand(
const char *szSender,
const char *szCommand,
const char *szParameters);
204 void OnNumericCommand(
const char *szSender,
int iCommand,
const char *szParameters);
206 void OnMessage(
bool fNotice,
const char *szSource,
const char *szTarget,
const char *szText);
const int C4NetIRCMaxReadLogLength
const int C4NetIRCMaxLogLength
bool Send(const C4NetIOPacket &rPacket) override
struct C4NetIOTCP::ConnectWait nullptr
bool Connect(const addr_t &addr, std::unique_ptr< Socket > socket)
C4Network2IRCUser * getUser(const char *szName) const
bool isUsersLocked() const
C4Network2IRCChannel(const char *szName)
C4Network2IRCUser * getUsers() const
const char * getTopic() const
const char * getName() const
void SetNotify(class C4InteractiveThread *pnNotify)
bool Send(const C4NetIOPacket &rPacket) override
bool Action(const char *szTarget, const char *szText)
C4Network2IRCMessage * getMessageLog() const
bool ChangeNick(const char *szNewNick)
void MarkMessageLogRead()
bool RegisterNick(const char *szPassword, const char *szMail)
bool Notice(const char *szTarget, const char *szText)
bool Join(const char *szChannel)
C4Network2IRCMessage * getUnreadMessageLog() const
C4Network2IRCChannel * getFirstChannel() const
~C4Network2IRCClient() override
const char * getUserName() const
C4Network2IRCChannel * getChannel(const char *szName) const
C4Network2IRCChannel * getNextChannel(C4Network2IRCChannel *pPrevChan) const
bool Message(const char *szTarget, const char *szText)
bool Quit(const char *szReason)
bool Part(const char *szChannel)
bool Connect(const addr_t &addr, std::unique_ptr< Socket > socket)
C4Network2IRCMessage(C4Network2IRCMessageType enType, const char *szSource, const char *szTarget, const char *szData)
C4Network2IRCMessageType getType() const
C4Network2IRCMessage * getNext() const
const char * getSource() const
time_t getTimestamp() const
const char * getData() const
const char * getTarget() const
C4Network2IRCUser(const char *szName)
const char * getPrefix() const
C4Network2IRCUser * getNext() const
const char * getName() const
const char * getData() const