ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/zoe/trunk/Zoe.hpp
Revision: 53
Committed: 2004-08-30T17:44:15-07:00 (20 years, 9 months ago) by douglas
File size: 1826 byte(s)
Log Message:
Jay says this should be this way.

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

Properties

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