VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
readerWriterRegistry.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
14 #pragma once
15 #include <vlutil/vlList.h>
16 #include <vlutil/vlString.h>
17 #include "stdio.h"
18 #include <mtl/mtl.h>
19 #include "tdbutil/symbolString.h"
20 #include <vector>
21 #include "vrfutil/vrfutilDefines.h"
22 #include <list>
23 #include <ostream>
24 
25 class DtReaderWriter;
27 class DtFilename;
28 class DtFilename;
30 
31 typedef std::list<const DtRwVariableBindings*> DtVariableBindingsList;
32 
40 {
41 
42 public:
45 
48 
50  DtReaderWriterRegistry & operator =(const DtReaderWriterRegistry & orig);
51 
54 
59  bool localData() const;
60  void setLocalData();
61  void clearLocalData();
62 
65  void addEntry(const DtSymbolString& keyword, DtReaderWriter* const rw);
66 
67  void insertEntry(int index, DtReaderWriter* const rw);
68 
69  void addEntryBefore(const DtSymbolString& keyword,
70  DtReaderWriter* const rw, const DtString& addBefore);
71 
72  void addEntryBefore(const DtSymbolString& keyword,
73  DtReaderWriter* const rw, DtReaderWriter* const addBefore);
74 
75  void addEntryAfter(const DtSymbolString& keyword,
76  DtReaderWriter* const rw, const DtString& addAfter);
77 
78  void addEntryAfter(const DtSymbolString& keyword,
79  DtReaderWriter* const rw, DtReaderWriter* const addAfter);
80 
82  void removeEntry(const DtSymbolString& keyword);
83  void removeEntry(DtReaderWriter* const rw);
84  void removeEntry(const DtReaderWriter* const rw);
85  void removeEntry(int);
86 
88  DtReaderWriter* const readerWriter(const DtString& keyword);
89 
90  void putSelf(std::string& fp, int indentLevel, bool writeUnspecified,
91  const DtFilename& path);
92  void getSelf(DtlObjPtr args, const std::vector<DtFilename>& searchPaths,
93  const DtVariableBindingsList& variableBindings);
94 
102  virtual void setValueSpecified(bool specified, bool recurse);
103 
104  const std::vector<DtReaderWriterRegistryData*>& registryData() const;
105  std::vector<DtReaderWriterRegistryData*>& registryData();
106 
108  virtual DtReaderWriterRegistryData* find(const DtString& keyword) const;
109 
111  virtual DtReaderWriterRegistryData* findByName(const DtString& name) const;
112 
114  virtual void clear();
115 
116  virtual DtRwVariableBindings* variableBindings();
117  virtual const DtRwVariableBindings* variableBindings() const;
118 
119  virtual const DtReaderWriter* findVariableBinding(const DtString& rwType,
120  const DtString& variableName) const;
121  virtual DtReaderWriter* findVariableBinding(const DtString& rwType,
122  const DtString& variableName);
123 
127  virtual void setVariableBindings(const DtRwVariableBindings* newBindings);
128 
135  virtual DtReaderWriter* addVariableBinding(const DtString& variableType,
136  const DtString& variableName);
137 
139 
140  bool operator==(const DtReaderWriterRegistry&) const;
141  bool operator!=(const DtReaderWriterRegistry&) const;
142 
143 protected:
144 
147 
148 protected:
149 
150  std::vector<DtReaderWriterRegistryData*> myData;
153 
154 };
155 
156 inline const std::vector<DtReaderWriterRegistryData*>& DtReaderWriterRegistry::registryData() const
157 {
158  return myData;
159 }
160 
161 inline std::vector<DtReaderWriterRegistryData*>& DtReaderWriterRegistry::registryData()
162 {
163  return myData;
164 }
165 

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)