Move all of the files in include/libc/... down to the top level include path.
[newos.git] / apps / irc / ircengine.h
blob60e091c0706e077f23c5dd21782d926c47eef012
1 #ifndef _IRCENGINE_H
2 #define _IRCENGINE_H
4 #include "ircreader.h"
5 #include "term.h"
6 #include <socket/socket.h>
8 class IRCEngine {
9 public:
10 IRCEngine();
11 ~IRCEngine();
12 int Run();
13 int SignOn();
14 int Disconnect();
15 int SetServer(ipv4_addr serverAddress, int port);
17 int SocketError(int error);
18 ssize_t WriteData(const char *data);
19 int ReceivedSocketData(char *data, int len);
20 int ReceivedKeyboardData(const char *data, int len);
21 int ProcessKeyboardInput(char *line);
23 private:
24 void Lock();
25 void Unlock();
26 void processCTCP(const char *target, const char *address, char *data);
28 IRCReader *mReader;
29 Term *mTerm;
30 TermWindow *mInputWindow;
31 TermWindow *mTextWindow;
32 int mSocket;
33 char mUser[256];
34 char mIRCName[256];
35 char mNick[256];
36 char mCurrentChannel[256];
37 sockaddr mServerSockaddr;
38 sem_id mSem;
40 char mInputLine[1024];
41 int mInputLinePtr;
44 #endif