libmoost
|
00001 /* vim:set ts=3 sw=3 sts=3 et: */ 00028 #ifndef MOOST_CONFIGURABLE_PERSISTABLE_H__ 00029 #define MOOST_CONFIGURABLE_PERSISTABLE_H__ 00030 00031 namespace moost { namespace configurable { 00032 00035 class persistable 00036 { 00037 public: 00039 virtual void read(std::istream & source) = 0; 00041 virtual void write(std::ostream & dest, int indent = 0) const = 0; 00043 virtual void set_default() = 0; 00045 virtual ~persistable() {} 00046 }; 00047 00048 }} // moost::configurable 00049 00050 #endif // MOOST_CONFIGURABLE_PERSISTABLE_H__