aboutsummaryrefslogtreecommitdiff
path: root/src/archival.h
diff options
context:
space:
mode:
authorMike Buland <eichlan@xagasoft.com>2007-04-10 13:53:18 +0000
committerMike Buland <eichlan@xagasoft.com>2007-04-10 13:53:18 +0000
commit5a0d7856dc265580cebaa833e0367d03ef21bbc3 (patch)
treeebd127d25b3658d3f0417cdb1706e0049a9a28de /src/archival.h
parent997f13ec4791adcda91cd4db41cdb5962b73d47d (diff)
downloadlibbu++-5a0d7856dc265580cebaa833e0367d03ef21bbc3.tar.gz
libbu++-5a0d7856dc265580cebaa833e0367d03ef21bbc3.tar.bz2
libbu++-5a0d7856dc265580cebaa833e0367d03ef21bbc3.tar.xz
libbu++-5a0d7856dc265580cebaa833e0367d03ef21bbc3.zip
Woo, changed the name of Achable to Archival, I dig that, and added the ground-
work for the SSocket, that should be cool.
Diffstat (limited to 'src/archival.h')
-rw-r--r--src/archival.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/archival.h b/src/archival.h
new file mode 100644
index 0000000..e2c803c
--- /dev/null
+++ b/src/archival.h
@@ -0,0 +1,38 @@
1#ifndef ARCHIVAL_H
2#define ARCHIVAL_H
3
4namespace Bu
5{
6 /**
7 * The base class for any class you want to archive. Simply include this as
8 * a base class, implement the purely virtual archive function and you've
9 * got an easily archiveable class.
10 *
11 * Archival: "of or pertaining to archives or valuable records; contained
12 * in or comprising such archives or records."
13 */
14 class Archival
15 {
16 public:
17 /**
18 * Does nothing, here for completeness.
19 */
20 Archival();
21
22 /**
23 * Here to ensure the deconstructor is virtual.
24 */
25 virtual ~Archival();
26
27 /**
28 * This is the main workhorse of the archive system, just override and
29 * you've got a archiveable class. A reference to the Archive
30 * used is passed in as your only parameter, query it to discover if
31 * you are loading or saving.
32 * @param ar A reference to the Archive object to use.
33 */
34 virtual void archive( class Archive &ar )=0;
35 };
36}
37
38#endif