From 9cd3ccffd5372dfde3af478e3f832f18db4be3f1 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 6 Apr 2013 13:14:41 +0200 Subject: tagging tags --- ychat-0.8.2/src/chat/chat.h | 63 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100755 ychat-0.8.2/src/chat/chat.h (limited to 'ychat-0.8.2/src/chat/chat.h') diff --git a/ychat-0.8.2/src/chat/chat.h b/ychat-0.8.2/src/chat/chat.h new file mode 100755 index 0000000..bb087d5 --- /dev/null +++ b/ychat-0.8.2/src/chat/chat.h @@ -0,0 +1,63 @@ +// class chat declaration. + +class chat; + +#ifndef CHAT_H +#define CHAT_H + +#include +#include "../incl.h" +#include "base.h" +#include "perm.h" +#include "room.h" +#include "user.h" +#include "sess.h" +#include "../tool/tool.h" +#include "../maps/hashmap.h" + +using namespace std; + +#undef chat +class chat : public base, public perm +{ +private: + map map_replace_strings; + vector vec_replace_keys; + void dumpit(); + +public: + virtual room* get_room( string s_name ) + { + bool b_bool; + return get_room( s_name, b_bool ); + } + + virtual room* get_room( string &s_name, bool &b_found ) + { + return static_cast( get_elem( s_name, b_found ) ); + } + + // public methods: + explicit chat(); // a standard constructor. + ~chat(); // destructor. + + // get the object of a specific user. + user* get_user( string &s_nick ); + user* get_user( string &s_nick, bool &b_found ); + static void get_user_( room* room_obj, void *v_arg ); + + // will be called every time a user tries to login. + void login( map &map_params ); + + // will be called if a user posts a message. + void post ( user* u_user, map &map_params ); + + void del_elem( string s_name ) + { + base::del_elem( s_name ); + } + + void reconf(); + void string_replacer(string *p_msg); +}; +#endif -- cgit v1.2.3