1#ifndef _KVI_IRCCONNECTIONSERVERINFO_H_
2#define _KVI_IRCCONNECTIONSERVERINFO_H_
47 virtual const QString & getChannelModeDescription(
char mode)
const;
48 virtual const QString & getUserModeDescription(QChar mode)
const;
49 virtual QChar getUserModeRequirement(QChar mode)
const;
66 const QString & getChannelModeDescription(
char mode)
const override;
67 const QString & getUserModeDescription(QChar mode)
const override;
68 QChar getUserModeRequirement(QChar mode)
const override;
70 const char *
getSoftware()
const override {
return "Hybrid"; }
79 const QString & getChannelModeDescription(
char mode)
const override;
80 const QString & getUserModeDescription(QChar mode)
const override;
81 QChar getUserModeRequirement(QChar mode)
const override;
82 const char *
getSoftware()
const override {
return "Ircd-ratbox"; }
91 const QString & getChannelModeDescription(
char mode)
const override;
92 const QString & getUserModeDescription(QChar mode)
const override;
93 QChar getUserModeRequirement(QChar mode)
const override;
94 const char *
getSoftware()
const override {
return "Charybdis"; }
104 const QString & getUserModeDescription(QChar mode)
const override;
105 QChar getUserModeRequirement(QChar mode)
const override;
106 const char *
getSoftware()
const override {
return "Ircd-seven"; }
124 const QString & getChannelModeDescription(
char mode)
const override;
125 const QString & getUserModeDescription(QChar mode)
const override;
126 QChar getUserModeRequirement(QChar mode)
const override;
137 const QString & getChannelModeDescription(
char mode)
const override;
138 const QString & getUserModeDescription(QChar mode)
const override;
139 QChar getUserModeRequirement(QChar mode)
const override;
141 const char *
getSoftware()
const override {
return "Hybrid+Oftc"; }
155 const QString & getChannelModeDescription(
char mode)
const override;
156 const QString & getUserModeDescription(QChar mode)
const override;
157 QChar getUserModeRequirement(QChar mode)
const override;
169 const QString & getChannelModeDescription(
char mode)
const override;
170 const QString & getUserModeDescription(QChar mode)
const override;
171 QChar getUserModeRequirement(QChar mode)
const override;
182 const QString & getChannelModeDescription(
char mode)
const override;
183 const QString & getUserModeDescription(QChar mode)
const override;
184 QChar getUserModeRequirement(QChar mode)
const override;
186 const char *
getSoftware()
const override {
return "Ircu+Darenet"; }
198 const QString & getChannelModeDescription(
char mode)
const override;
211 const QString & getChannelModeDescription(
char mode)
const override;
212 const QString & getUserModeDescription(QChar mode)
const override;
213 QChar getUserModeRequirement(QChar mode)
const override;
222 const QString & getChannelModeDescription(
char mode)
const override;
223 const QString & getUserModeDescription(QChar mode)
const override;
233 const QString & getChannelModeDescription(
char mode)
const override;
234 const QString & getUserModeDescription(QChar mode)
const override;
235 QChar getUserModeRequirement(QChar mode)
const override;
255 const char *
getSoftware()
const override {
return "Nemesis2.0"; }
264 const QString & getChannelModeDescription(
char mode)
const override;
265 const QString & getUserModeDescription(QChar mode)
const override;
266 QChar getUserModeRequirement(QChar mode)
const override;
277 const QString & getUserModeDescription(QChar mode)
const override;
278 QChar getUserModeRequirement(QChar mode)
const override;
290 const QString & getChannelModeDescription(
char mode)
const override;
291 const QString & getUserModeDescription(QChar mode)
const override;
292 QChar getUserModeRequirement(QChar mode)
const override;
314 QString m_szSupportedChannelModes =
"pstnmiklb";
315 QString m_szSupportedModePrefixes =
"@+";
317 kvi_u32_t * m_pModePrefixTable =
nullptr;
319 QString m_szSupportedModeFlags =
"ov";
320 QString m_szSupportedChannelTypes =
"#&!+";
321 bool m_bSupportsWatchList =
false;
322 bool m_bSupportsCodePages =
false;
323 int m_iMaxTopicLen = -1;
324 int m_iMaxModeChanges = 3;
326 QString m_szListModes =
"b";
328 QString m_szParameterModes =
"k";
330 QString m_szParameterWhenSetModes =
"l";
332 QString m_szPlainModes =
"pstnmi";
333 bool m_bSupportsCap =
false;
335 bool m_bSupportsWhox =
false;
341 const QString &
name()
const {
return m_szName; }
362 void setServerVersion(
const QString & version);
371 bool isSupportedChannelType(QChar c)
const;
372 bool isSupportedModePrefix(QChar c)
const;
373 bool isSupportedModeFlag(QChar c)
const;
374 QChar modePrefixChar(kvi_u32_t flag)
const;
375 QChar modeFlagChar(kvi_u32_t flag)
const;
376 kvi_u32_t modeFlagFromPrefixChar(QChar c)
const;
377 kvi_u32_t modeFlagFromModeChar(QChar c)
const;
381 void setName(
const QString & szName) { m_szName = szName; }
383 void setSupportedChannelModes(
const QString & szSupportedChannelModes);
384 void setSupportedModePrefixes(
const QString & szSupportedModePrefixes,
const QString & szSupportedModeFlags);
389 void addSupportedCaps(
const QString & szCapList);
394 void buildModePrefixTable();
Helper functions for the QString class.
Definition KviIrcConnectionServerInfo.h:259
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:267
KviBahamutIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:262
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:268
Definition KviIrcConnectionServerInfo.h:36
virtual QChar getUserModeRequirement(QChar mode) const
Definition KviIrcConnectionServerInfo.cpp:1088
virtual bool getNeedsOpToListModeseI() const
Definition KviIrcConnectionServerInfo.h:52
virtual const QString & getUserModeDescription(QChar mode) const
Definition KviIrcConnectionServerInfo.cpp:293
virtual const char * getSoftware() const
Definition KviIrcConnectionServerInfo.h:51
QString m_szServerVersion
Definition KviIrcConnectionServerInfo.h:39
virtual bool getNeedsOperToSetS() const
Definition KviIrcConnectionServerInfo.h:53
virtual const QString & getChannelModeDescription(char mode) const
Definition KviIrcConnectionServerInfo.cpp:1561
KviIrcConnectionServerInfo * m_pParent
Definition KviIrcConnectionServerInfo.h:40
virtual char getRegisterModeChar() const
Definition KviIrcConnectionServerInfo.h:50
virtual ~KviBasicIrcServerInfo()
Definition KviIrcConnectionServerInfo.h:87
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:94
bool getNeedsOperToSetS() const override
Definition KviIrcConnectionServerInfo.h:95
KviCharybdisServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:89
Definition KviConsoleWindow.h:74
Definition KviIrcConnectionServerInfo.h:228
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:237
bool getNeedsOpToListModeseI() const override
Definition KviIrcConnectionServerInfo.h:238
KviCritenIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:231
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:236
Definition KviIrcConnectionServerInfo.h:177
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:186
KviDarenetIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:180
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:185
Definition KviIrcConnectionServerInfo.h:61
KviHybridServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:64
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:69
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:70
Definition KviIrcConnectionServerInfo.h:272
bool getNeedsOpToListModeseI() const override
Definition KviIrcConnectionServerInfo.h:281
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:280
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:279
KviHyperionIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:275
Definition KviIrcConnectionServerInfo.h:285
bool getNeedsOpToListModeseI() const override
Definition KviIrcConnectionServerInfo.h:295
bool getNeedsOperToSetS() const override
Definition KviIrcConnectionServerInfo.h:296
KviInspIRCdIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:288
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:293
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:294
Definition KviIrcConnectionServerInfo.h:300
const QString & networkName() const
Definition KviIrcConnectionServerInfo.h:342
QStringList m_lSupportedCaps
Definition KviIrcConnectionServerInfo.h:334
void setSupportedUserModes(const QString &szSupportedUserModes)
Definition KviIrcConnectionServerInfo.h:382
bool supportsWhox() const
Definition KviIrcConnectionServerInfo.h:357
bool supportsCap() const
Definition KviIrcConnectionServerInfo.h:353
const QStringList & supportedCaps() const
Definition KviIrcConnectionServerInfo.h:354
void setSupportedStatusMsgPrefixes(const QString &szSupportedStatusMsgPrefixes)
Definition KviIrcConnectionServerInfo.h:385
QString m_szNetworkName
Definition KviIrcConnectionServerInfo.h:311
const QString & supportedModePrefixes() const
Definition KviIrcConnectionServerInfo.h:346
void setSupportsWatchList(bool bSupportsWatchList)
Definition KviIrcConnectionServerInfo.h:387
const QString & getChannelModeDescription(char mode) const
Definition KviIrcConnectionServerInfo.h:364
const QString & supportedChannelTypes() const
Definition KviIrcConnectionServerInfo.h:345
const QString & supportedParameterModes() const
Definition KviIrcConnectionServerInfo.h:350
QString m_szSupportedUserModes
Definition KviIrcConnectionServerInfo.h:313
void setMaxModeChanges(int iModes)
Definition KviIrcConnectionServerInfo.h:391
const QString & name() const
Definition KviIrcConnectionServerInfo.h:341
QChar getUserModeRequirement(QChar mode) const
Definition KviIrcConnectionServerInfo.h:369
const QString & supportedModeFlags() const
Definition KviIrcConnectionServerInfo.h:348
int maxTopicLen() const
Definition KviIrcConnectionServerInfo.h:359
const char * software() const
Definition KviIrcConnectionServerInfo.h:338
bool supportsWatchList() const
Definition KviIrcConnectionServerInfo.h:355
bool supportsCodePages() const
Definition KviIrcConnectionServerInfo.h:356
const QString & supportedUserModes() const
Definition KviIrcConnectionServerInfo.h:343
const QString & getUserModeDescription(QChar mode) const
Definition KviIrcConnectionServerInfo.h:365
const QString & supportedListModes() const
Definition KviIrcConnectionServerInfo.h:349
void setSupportsWhox(bool bSupportsWhox)
Definition KviIrcConnectionServerInfo.h:392
QString m_szSupportedStatusMsgPrefixes
Definition KviIrcConnectionServerInfo.h:316
const QString & supportedParameterWhenSetModes() const
Definition KviIrcConnectionServerInfo.h:351
void setSupportedChannelTypes(const QString &szSupportedChannelTypes)
Definition KviIrcConnectionServerInfo.h:386
KviBasicIrcServerInfo * m_pServInfo
Definition KviIrcConnectionServerInfo.h:310
bool getNeedsOperToSetS() const
Definition KviIrcConnectionServerInfo.h:340
const QString & supportedStatusMsgPrefixes() const
Definition KviIrcConnectionServerInfo.h:347
void setMaxTopicLen(int iTopLen)
Definition KviIrcConnectionServerInfo.h:390
void setNetworkName(const QString &szName)
Definition KviIrcConnectionServerInfo.h:380
const QString & supportedChannelModes() const
Definition KviIrcConnectionServerInfo.h:344
const QString & supportedPlainModes() const
Definition KviIrcConnectionServerInfo.h:352
void setName(const QString &szName)
Definition KviIrcConnectionServerInfo.h:381
int maxModeChanges() const
Definition KviIrcConnectionServerInfo.h:360
unsigned int m_uPrefixes
Definition KviIrcConnectionServerInfo.h:318
QString m_szName
Definition KviIrcConnectionServerInfo.h:312
void setSupportsCodePages(bool bSupportsCodePages)
Definition KviIrcConnectionServerInfo.h:388
char registerModeChar() const
Definition KviIrcConnectionServerInfo.h:337
bool getNeedsOpToListModeseI() const
Definition KviIrcConnectionServerInfo.h:339
An abstraction of a connection to an IRC server.
Definition KviIrcConnection.h:97
Definition KviIrcServerParser.h:114
Definition KviIrcConnectionServerInfo.h:74
KviIrcdRatboxIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:77
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:82
bool getNeedsOpToListModeseI() const override
Definition KviIrcConnectionServerInfo.h:83
Definition KviIrcConnectionServerInfo.h:99
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:106
KviIrcdSevenIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:102
Definition KviIrcConnectionServerInfo.h:110
KviIrcdSolanumIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:113
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:115
Definition KviIrcConnectionServerInfo.h:150
bool getNeedsOpToListModeseI() const override
Definition KviIrcConnectionServerInfo.h:159
bool getNeedsOperToSetS() const override
Definition KviIrcConnectionServerInfo.h:160
KviIrcuIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:153
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:158
Definition KviIrcConnectionServerInfo.h:251
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:255
KviNemesis20IrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:253
Definition KviIrcConnectionServerInfo.h:242
KviNemesisIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:245
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:247
Definition KviIrcConnectionServerInfo.h:132
bool getNeedsOpToListModeseI() const override
Definition KviIrcConnectionServerInfo.h:142
KviOftcIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:135
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:140
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:141
Definition KviIrcConnectionServerInfo.h:119
KviPlexusIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:122
bool getNeedsOpToListModeseI() const override
Definition KviIrcConnectionServerInfo.h:128
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:127
Definition KviIrcConnectionServerInfo.h:164
bool getNeedsOperToSetS() const override
Definition KviIrcConnectionServerInfo.h:173
KviSnircdIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:167
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:172
Definition KviIrcConnectionServerInfo.h:205
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:214
KviUnreal32IrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:209
Definition KviIrcConnectionServerInfo.h:218
KviUnreal40IrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:220
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:224
Definition KviIrcConnectionServerInfo.h:194
const char * getSoftware() const override
Definition KviIrcConnectionServerInfo.h:200
bool getNeedsOperToSetS() const override
Definition KviIrcConnectionServerInfo.h:201
KviUnrealIrcServerInfo(KviIrcConnectionServerInfo *pParent=nullptr, const QString &version=KviQString::Empty)
Definition KviIrcConnectionServerInfo.h:196
char getRegisterModeChar() const override
Definition KviIrcConnectionServerInfo.h:199
This file contains compile time settings.
#define KVIRC_API
Definition kvi_settings.h:127
const QString Empty
A global empty string (note that this is ALSO NULL under Qt 3.x)
Definition KviQString.cpp:47