ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/zoe/trunk/Zoe.hpp
Revision: 52
Committed: 2004-08-30T17:12:49-07:00 (20 years, 9 months ago) by douglas
File size: 1795 byte(s)
Log Message:
That should fix some stuff, hopefully Jay can fix the rest.

File Contents

# Content
1 // Zoe AIM Away Message RSS Feed Generator
2 //
3 // Seth King and Douglas Thrift
4 //
5 // $Id$
6
7 #ifndef _Zoe_hpp_
8 #define _Zoe_hpp_
9
10 #include <iostream>
11
12 using std::cin;
13 using std::cout;
14 using std::cerr;
15
16 #include <map>
17 #include <set>
18 #include <vector>
19
20 #include <menes-api/console.hpp>
21 #include <menes-api/files.hpp>
22 #include <menes-app/entrypoint.hpp>
23 #include <menes-dbi/connection.hpp>
24 #include <menes-dbi/resultset.hpp>
25 #include <menes-etl/fnbind.hpp>
26 #include <menes-ext/casts.hpp>
27 #include <menes-ext/string.hpp>
28 #include <menes-net/oscar/session.hpp>
29 #include <menes-net/oscar/tools/auth.hpp>
30 #include <menes-net/oscar/tools/buddy.hpp>
31 #include <menes-net/oscar/tools/chat.hpp>
32 #include <menes-net/oscar/tools/icbm.hpp>
33 #include <menes-net/oscar/tools/info.hpp>
34
35 #ifdef MENES_STL_CONVERTABLE
36 #undef MENES_STL_CONVERTABLE
37 #endif
38
39 #include <menes-xml/document.hpp>
40 #include <menes-xml/nodeset.hpp>
41 #include <menes-xml/parse.hpp>
42 #include <menes-xml/textwriter.hpp>
43
44 struct Database { ext::String driver, host, user, password, db; };
45
46 #include "Buddy.hpp"
47
48 class Zoe
49 {
50 private:
51 ext::String login, password;
52 Database database;
53 std::set<Buddy> buddies;
54 void configure();
55 void initialize();
56 public:
57 Zoe();
58 enum Generator { all, agent, url, version };
59 static bool debug, collector, publisher, color;
60 static ext::String program, config;
61 static void usage();
62 static ext::String generator(Generator generator = all);
63 };
64
65 enum Color { reset, bright, dim, underscore = 4, blink, reverse = 7, hidden,
66 black = 30, red, green, yellow, blue, magenta, cyan, white,
67 _black = 40, _red, _green, _yellow, _blue, _magenta, _cyan, _white };
68
69 inline std::ostream& operator<<(std::ostream& sout, Color color)
70 {
71 return Zoe::color ? sout << "\033[" << unsigned(color) << 'm' : sout;
72 }
73
74 #endif // _Zoe_hpp_

Properties

Name Value
svn:eol-style native
svn:keywords Id