X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ChanNode.h;h=7847dea7efd64d92080298a8687c906b34aae270;hb=795115bf680185ae01043bd1222b78bfed8c1d87;hp=dce8c384171c22e025026e33aa10db77232f8a31;hpb=ba6691bc746798ccaa885e952bf5e6f1aa4477a0;p=NeonServV5.git diff --git a/ChanNode.h b/ChanNode.h index dce8c38..7847dea 100644 --- a/ChanNode.h +++ b/ChanNode.h @@ -3,32 +3,40 @@ #include "main.h" 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]; char topic[TOPICLEN+1]; 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; - + struct trigger_cache *trigger; + int channel_id; + struct ChanNode *next; }; void init_ChanNode(); +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