xref: /haiku/src/apps/cortex/Persistence/IStateArchivable.h (revision 1fb778c8e7462da8fa05a292e592b51dac945d5b)
1 // IStateArchivable.h
2 // * PURPOSE
3 //   Similar to BArchivable, but provides for archiving of
4 //   a particular object's state, not the object itself.
5 //   This mechanism doesn't instantiate objects.
6 //
7 // * HISTORY
8 //   e.moon			27nov99		Begun
9 
10 #ifndef __IStateArchivable_H__
11 #define __IStateArchivable_H__
12 
13 #include "cortex_defs.h"
14 __BEGIN_CORTEX_NAMESPACE
15 
16 class IStateArchivable {
17 public:
18 	// empty virtual dtor
19 	virtual ~IStateArchivable() {}
20 
21 public:												// *** INTERFACE
22 	virtual status_t importState(
23 		const BMessage*						archive) =0;
24 
25 	virtual status_t exportState(
26 		BMessage*									archive) const =0;
27 };
28 
29 __END_CORTEX_NAMESPACE
30 #endif /*__IStateArchivable_H__*/
31 
32