libmoost
/home/mhx/git/github/libmoost/include/moost/configurable/configurable.h
Go to the documentation of this file.
00001 /* vim:set ts=3 sw=3 sts=3 et: */
00028 #ifndef MOOST_CONFIGURABLE_CONFIGURABLE_H__
00029 #define MOOST_CONFIGURABLE_CONFIGURABLE_H__
00030 
00031 #include <vector>
00032 #include <string>
00033 
00034 #include "persistable.h"
00035 
00036 namespace moost { namespace configurable {
00037 
00040 class configurable : virtual public persistable
00041 {
00042 public:
00044   virtual void set(const std::string & key, const std::string & value) = 0;
00046   virtual void get(const std::string & key, std::string & value) const = 0;
00048   virtual void list(std::vector< std::pair< std::string, std::string > > & items) = 0;
00050   virtual ~configurable() {}
00052   static const int DEFAULT_INDENT = 2;
00053 };
00054 
00055 }} // moost::configurable
00056 
00057 #endif // MOOST_CONFIGURABLE_CONFIGURABLE_H__