changed Makefile; build all commands as an own file
[NeonServV5.git] / ChanNode.h
index 213f8aea193815e5ce844d7bdba4f09bdd9cf659..7847dea7efd64d92080298a8687c906b34aae270 100644 (file)
@@ -4,10 +4,12 @@
 
 struct ChanUser;
 struct trigger_cache;
+struct ModeNode;
 
 #define CHANFLAG_RECEIVED_USERLIST  0x01
 #define CHANFLAG_REQUESTED_CHANINFO 0x02
 #define CHANFLAG_CHAN_REGISTERED    0x04
+#define CHANFLAG_HAVE_INVISIBLES    0x08
 
 struct ChanNode {
     char name[CHANNELLEN+1];
@@ -15,9 +17,7 @@ struct ChanNode {
     struct ChanUser *user;
     unsigned int usercount;
     unsigned char flags;
-    unsigned int modes;
-    char **mode_str_args;
-    int *mode_int_args;
+    struct ModeNode *modes;
     struct BanNode *bans;
     
     struct UserNode *chanbot;
@@ -32,12 +32,11 @@ void free_ChanNode();
 int is_valid_chan(const char *name);
 struct ChanNode* getChanByName(const char *name);
 struct ChanNode* addChannel(const char *chan);
+int getChannelCount();
+int getChanUserCount();
+int getChanBanCount();
 void delChannel(struct ChanNode* chan, int freeChan);
 void freeChanNode(struct ChanNode* chan);
 void checkChannelVisibility(struct ChanNode* chan);
-int isModeSet(struct ChanNode* chan, char modeChar);
-void* getModeValue(struct ChanNode* chan, char modeChar);
-void parseModes(struct ChanNode* chan, char *modeStr, char **argv, int argc);
-void getModeString(struct ChanNode* chan, char *modesStr);
 
 #endif
\ No newline at end of file