modcmd added (with debug output only)
[NeonServV5.git] / ChanNode.h
1 #ifndef _ChanNode_h
2 #define _ChanNode_h
3 #include "main.h"
4
5 struct ChanUser;
6
7 #define CHANFLAG_RECEIVED_USERLIST  0x01
8
9 struct ChanNode {
10     char name[CHANNELLEN+1];
11     char topic[TOPICLEN+1];
12     struct ChanUser *user;
13     unsigned char flags;
14     unsigned int modes;
15     char **mode_str_args;
16     int *mode_int_args;
17     struct UserNode *chanbot;
18         
19     struct ChanNode *next;
20 };
21
22 void init_ChanNode();
23 int is_valid_chan(const char *name);
24 struct ChanNode* getChanByName(const char *name);
25 struct ChanNode* addChannel(const char *chan);
26 void delChannel(struct ChanNode* chan, int freeChan);
27 void freeChanNode(struct ChanNode* chan);
28 void checkChannelVisibility(struct ChanNode* chan);
29 int isModeSet(struct ChanNode* chan, char modeChar);
30 void* getModeValue(struct ChanNode* chan, char modeChar);
31 void parseModes(struct ChanNode* chan, char *modeStr, char **argv, int argc);
32 void getModeString(struct ChanNode* chan, char *modesStr);
33
34 #endif