value.h

00001 #ifndef _DHT_VALUE_H_
00002 #define _DHT_VALUE_H_
00003 
00004 #include "store_data.h"
00005 #include "name_value_map.h"
00006 
00007 namespace dht {
00027     class value : public store_data {
00028         name_value_map _meta;
00029     public:
00035         inline value();
00042         inline value(const void *data, size_t len, bool aht = true);
00048         inline value(const char *str, bool aht = true);
00054         inline value(const std::string &str, bool aht = true);
00055         virtual ~value();
00056         
00065         inline       dht::name_value_map &meta();
00072         inline const dht::name_value_map &meta() const;
00073     };
00074 
00075     inline value::value() 
00076         : store_data(true) {}
00077     inline value::value(const void *data, size_t len, bool aht) 
00078         : store_data(data, len, aht) {}
00079     inline value::value(const char *str, bool aht) 
00080         : store_data(str, aht) {}
00081     inline value::value(const std::string &str, bool aht) 
00082         : store_data(str, aht) {}
00083 
00084     inline name_value_map &value::meta() {
00085         return _meta; }
00086 
00087     inline const name_value_map &value::meta() const {
00088         return _meta; }
00089         
00090 } // ns dht
00091 
00092 #endif //_DHT_VALUE_H_

Generated on Thu Mar 1 16:18:47 2007 for libdht by  doxygen 1.5.1