![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 1999 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: rwList.h,v $ $Revision: 1.12 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00012 #ifndef DtRwList_H_ 00013 #define DtRwList_H_ 00014 00015 #include <vlutil/vlList.h> 00016 #include "vrfutil/rdrWritr.h" 00017 #include "vrfutil/vrfutilDefines.h" 00018 00019 class DtListItem; 00020 00028 class DT_DLL_vrfutil DtRwList : public DtReaderWriter, public DtList 00029 { 00030 public: 00032 DtRwList(); 00033 00035 DtRwList(const DtString& name, DtReaderWriterRegistry* parentRegistry = NULL); 00036 DtRwList(const DtSymbolString& name, DtReaderWriterRegistry* parentRegistry = NULL); 00037 00042 00043 DtRwList(const DtString& name, 00044 const DtRwList& orig, 00045 DtReaderWriterRegistry* parentRegistry = NULL); 00046 00047 DtRwList(const DtSymbolString& name, 00048 const DtRwList& orig, 00049 DtReaderWriterRegistry* parentRegistry = NULL); 00051 00052 virtual ~DtRwList(); 00053 00055 const DtRwList & operator=(const DtRwList & orig); 00056 00059 virtual DtListItem* add(DtReaderWriter* data); 00060 00063 virtual DtListItem* addToStart(DtReaderWriter* data); 00064 00067 virtual DtListItem* addToEnd(DtReaderWriter* data); 00068 00074 virtual void* remove(DtReaderWriter* data, DtListItem* item); 00075 00090 virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath, 00091 const DtVariableBindingsList& variableBindings) = 0; 00092 00096 virtual DtlObjPtr getLocalData(DtlObjPtr args); 00097 00098 virtual void getSelf(DtlObjPtr args, const DtFilename& searchPath, 00099 const DtVariableBindingsList& variableBindings); 00100 00103 00104 virtual DtListItem* addBefore (DtReaderWriter* data, const DtString& before); 00105 virtual DtListItem* addBefore (DtReaderWriter* data, const DtSymbolString& before); 00107 00110 00111 virtual DtListItem* addAfter(DtReaderWriter* data, const DtString& after); 00112 virtual DtListItem* addAfter(DtReaderWriter* data, const DtSymbolString& after); 00114 00117 virtual DtListItem* addBefore (DtReaderWriter* data, DtReaderWriter* before); 00118 00121 virtual DtListItem* addAfter(DtReaderWriter* data, DtReaderWriter* after); 00122 00124 virtual void removeAll(); 00125 00129 virtual const char* readerWriterType() const; 00130 00131 protected: 00134 virtual DtListItem* addBefore (DtReaderWriter* data, DtListItem* before); 00135 00138 virtual DtListItem* addAfter(DtReaderWriter* data, DtListItem* after); 00139 00140 }; 00141 00142 00143 #endif 00144