diff options
Diffstat (limited to 'src/serializable.h')
-rw-r--r-- | src/serializable.h | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/serializable.h b/src/serializable.h index 36c94df..06def29 100644 --- a/src/serializable.h +++ b/src/serializable.h | |||
@@ -3,12 +3,32 @@ | |||
3 | 3 | ||
4 | //#include "serializer.h" | 4 | //#include "serializer.h" |
5 | 5 | ||
6 | /** | ||
7 | * The base class for any class you want to serialize. Simply include this as | ||
8 | * a base class, implement the purely virtual serialize function and you've got | ||
9 | * an easily serializable class. | ||
10 | */ | ||
6 | class Serializable | 11 | class Serializable |
7 | { | 12 | { |
8 | public: | 13 | public: |
14 | /** | ||
15 | * Does nothing, here for completeness. | ||
16 | */ | ||
9 | Serializable(); | 17 | Serializable(); |
18 | |||
19 | /** | ||
20 | * Here to ensure the deconstructor is virtual. | ||
21 | */ | ||
10 | virtual ~Serializable(); | 22 | virtual ~Serializable(); |
11 | virtual void serialize(class Serializer &)=0; | 23 | |
24 | /** | ||
25 | * This is the main workhorse of the serialization system, just override and | ||
26 | * you've got a serializable class. A reference to the Serializer archive | ||
27 | * used is passed in as your only parameter, query it to discover if you are | ||
28 | * loading or saving. | ||
29 | * @param ar A reference to the Serializer object to use. | ||
30 | */ | ||
31 | virtual void serialize( class Serializer &ar )=0; | ||
12 | }; | 32 | }; |
13 | 33 | ||
14 | #endif | 34 | #endif |