VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rwNLengthStringVector.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
12 
13 #include <vlutil/vlMachineTypes.h>
15 #include <vlutil/vlConfig.h>
16 #include <vector>
17 #include <list>
18 #include <set>
19 #include "vrfutil/vrfutilDefines.h"
20 
22 
29 {
30 public:
31 
33  parentRegistry = 0);
34  DtRwNLengthStringVector(const std::vector<DtString>& strings, DtReaderWriterRegistry*
35  parentRegistry = 0);
36  DtRwNLengthStringVector(const std::vector<std::string>& strings, DtReaderWriterRegistry*
37  parentRegistry = 0);
38  DtRwNLengthStringVector(const std::list<DtString>& strings, DtReaderWriterRegistry*
39  parentRegistry = 0);
41  parentRegistry = 0);
42 
44  DtReaderWriterRegistry* parentRegistry = 0);
45 
47 
51  virtual bool operator==(const DtRwNLengthStringVector& orig) const;
52  virtual bool operator!=(const DtRwNLengthStringVector& orig) const;
53 
54  virtual ~DtRwNLengthStringVector();
55 
57  parentRegistry = 0) const;
58 
64  virtual bool compare(const DtRwNLengthStringVector& orig,
65  bool bCaseSensitive = true) const;
66 
69  virtual void setSize(unsigned int length);
71  virtual unsigned int size() const;
72 
76 
77  virtual DtString& operator[] (unsigned int index);
78  virtual const DtString& operator[] (unsigned int index) const;
79  virtual DtString at(unsigned int index) const;
81 
84  virtual int indexOfValue(const DtString& value) const;
85 
87  virtual bool containsValue(const DtString& value) const;
88 
89  virtual void putData(std::string& fp, int indentLevel = 0);
90  virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
91  const DtVariableBindingsList& variableBindings);
92 
96  virtual const char* readerWriterType() const;
97 
99  virtual void add(const DtString&);
100 
102  virtual void remove(int iIndex);
103 
106  virtual void remove(const DtString&);
107 
108  const std::vector<DtString>& strings() const;
109  virtual void setFrom(const std::vector<DtString>&);
110 
111  std::set<std::string> asStdSet() const;
112  virtual void setFrom(const std::set<std::string>&);
113  virtual void setFrom(const std::set<DtString>&);
114 
117  virtual void putData(DtEnvironmentSP, DtEnvValueSP parent) const;
118  virtual void getData(const DtEnvironmentSP, const DtEnvValueSP value,
120  const DtVariableBindingsList& bindings = DtVariableBindingsList());
121  virtual void getSelf(DtlObjPtr args,
122  const DtReaderWriter::SearchPaths& searchPaths = SearchPaths(),
123  const DtVariableBindingsList& variableBindings = nullVariableReference());
124  virtual void getSelf(const DtEnvironmentSP, const DtEnvValueSP root,
125  const SearchPaths& searchPaths = SearchPaths(),
126  const DtVariableBindingsList& bindings = DtVariableBindingsList());
127 
129  static const char* theXmlType();
130 
131  virtual const char* xmlType() const
132  {
133  return theXmlType();
134  }
135  virtual void stringToStringList(const DtString& string);
136  virtual DtString stringListToString() const;
137 
139 
140  void clear();
141 
143  virtual DtString prettyPrint() const;
144 
145 protected:
146  std::vector<DtString> myStrings;
147  std::set<std::string> mySetStrings;
148 };
149 
150 inline const std::vector<DtString>& DtRwNLengthStringVector::strings() const
151 {
152  return myStrings;
153 }
154 
156 {
157  myStrings.clear();
158  mySetStrings.clear();
159 }
bool operator==(const DtReaderWriter &) const
Equivalence operator.
virtual const char * xmlType() const
Routines to archive/dearchive from an XML Environment.
Definition: rwNLengthStringVector.h:131
virtual const char * readerWriterType() const
Used to supply a string type that this reader writer type is. This can be used in place of dynamic-ca...
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
voidpf void uLong size
Definition: ioapi.h:39
virtual DtlObjPtr getData(DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
Deriving class overrides these to get/put class specific data.
Definition: readerWriter.h:85
Definition: readerWriterRegistry.h:39
virtual DtString prettyPrint() const
Routine to return a human readable form of the reader/writer variable. Not all reader/writer classes ...
std::vector< DtString > myStrings
Definition: rwNLengthStringVector.h:146
void clear()
Definition: rwNLengthStringVector.h:155
bool operator!=(const DtReaderWriter &rhs) const
Definition: readerWriter.h:121
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...
static const DtVariableBindingsList & nullVariableReference()
virtual void putData(std::string &fp, int indentLevel=0)
Deriving class overrides these to get/put class specific data.
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
std::set< std::string > mySetStrings
Definition: rwNLengthStringVector.h:147
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
static const char * theXmlType()
The type that is used when archiving to an XML stream.
DT_DLL_readerWriter std::shared_ptr< DtEnvironment > DtEnvironmentSP
Definition: readerWriter.h:30
const std::vector< DtString > & strings() const
Definition: rwNLengthStringVector.h:150

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)