Mercurial > cabal
diff sources/headers/connection.h @ 0:bafff9de2a76
Initial commit since summer'07
| author | Vlad Glagolev <enqlave@gmail.com> |
|---|---|
| date | Sun, 20 Jan 2008 19:25:25 +0300 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sources/headers/connection.h Sun Jan 20 19:25:25 2008 +0300 @@ -0,0 +1,75 @@ +/** + * connection.h (2007-04-12) + * + * -- CABAL -- connection header + * + * Copyright (c) 2007 Vlad Glagolev <enqlave@gmail.com> + * All rights reserved. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef _CONNECTION_H_ +#define _CONNECTION_H_ + +#include "network.h" + +class Connection + : public Network +{ +public: + Connection(); + ~Connection(); + + void ircConnect(); + + void ircPass(string); + void ircNick(string); + void ircUser(string, string); + void ircAway(string); + void ircJoin(string, string); + void ircPart(string); + void ircCycle(string); + + void establish(); + + struct host_type { + pchar host; + int port; + pchar password; + host_type *next; + + host_type(pchar h, int p, pchar pw) + : + host(h), + port(p), + password(pw), + next(this) + {}; + host_type(pchar h, int p, pchar pw, host_type *t) + : + host(h), + port(p), + password(pw), + next(t) + {}; + } *hosts, *current; + + host_type *hostAdd(host_type *, pchar, int, pchar); + + pchar virtualhost, nick, user, name, chan, key; + + time_t now, uptime; +}; + +#endif // _CONNECTION_H_
