summaryrefslogtreecommitdiff
path: root/ychat-0.2/chat.h
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2013-04-06 13:14:41 +0200
committerPaul Buetow <paul@buetow.org>2013-04-06 13:14:41 +0200
commit9cd3ccffd5372dfde3af478e3f832f18db4be3f1 (patch)
tree631c295a4a4a16b57502b847626763a279bf6df7 /ychat-0.2/chat.h
parent13aaf70af703748fe096e0664c305cd202637ad2 (diff)
tagging tags
Diffstat (limited to 'ychat-0.2/chat.h')
-rwxr-xr-xychat-0.2/chat.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/ychat-0.2/chat.h b/ychat-0.2/chat.h
new file mode 100755
index 0000000..164c0c4
--- /dev/null
+++ b/ychat-0.2/chat.h
@@ -0,0 +1,40 @@
+// class chat declaration.
+
+#ifndef CHAT_H
+#define CHAT_H
+
+#include <vector>
+#include "incl.h"
+#include "data.h"
+#include "room.h"
+#include "user.h"
+
+using namespace std;
+
+class chat : public data<room>
+{
+private:
+
+public:
+ room* get_room( string &s_name, bool &b_found )
+ {
+ return static_cast<room*>( get_elem( s_name, b_found ) );
+ }
+
+ // public methods:
+ explicit chat(); // a standard constructor.
+ ~chat(); // destructor.
+
+ // get the object of a specific user.
+ virtual user* get_user( string &s_nick );
+ virtual user* get_user( string &s_nick, bool &b_found );
+ static void get_user_( name* name_obj, void *v_arg );
+
+ // will be called every time a user tries to login.
+ virtual void login( map_string &map_params );
+
+ // will be called if a user posts a message.
+ virtual void post ( user* u_user, map_string &map_params );
+};
+
+#endif