![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00010 00011 #pragma once 00012 00013 #include "vrfutil/vrfutilDefines.h" 00014 #include "vrfutil/rwStringList.h" 00015 #include <map> 00016 #include <vlutil/vlString.h> 00017 00021 class DT_DLL_vrfutil DtRwKeyValueList : public DtRwStringList 00022 { 00023 private: 00024 public: 00026 DtRwKeyValueList(); 00027 00029 DtRwKeyValueList(const DtString& name, DtReaderWriterRegistry* const parentRegistry = NULL); 00030 DtRwKeyValueList(const DtSymbolString& name, DtReaderWriterRegistry* const parentRegistry = NULL); 00031 00033 virtual ~DtRwKeyValueList(); 00034 00036 DtRwKeyValueList(const DtRwKeyValueList& orig, DtReaderWriterRegistry* const parentRegistry = NULL); 00037 00039 DtRwKeyValueList& operator=(const DtRwKeyValueList& orig); 00040 00043 virtual void add(const DtString& key, const DtString& value); 00045 virtual void remove(const DtString& key); 00047 virtual void clear(); 00048 00050 virtual bool contains(const DtString& key) const; 00053 virtual DtString find(const DtString& key) const; 00054 00058 virtual std::map<DtString, DtString> convertToMap() const; 00059 00063 virtual void setFromMap(const std::map<DtString, DtString> sourceMap); 00064 00065 protected: 00066 }; 00067 00068 namespace DtBufferSerialize 00069 { 00070 DT_DLL_vrfutil char *encode(const DtRwKeyValueList& val, char *buffer); 00071 DT_DLL_vrfutil const char *decode(DtRwKeyValueList& val, const char *buffer) ; 00072 DT_DLL_vrfutil int getSize(const DtRwKeyValueList& val); 00073 00074 }