VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
featuresColumnPrinter.h
Go to the documentation of this file.
1 
5 #pragma once
6 
7 #include <features/feature.h>
8 #include <features/featureSet.h>
9 
10 #include <vector>
11 #include <iosfwd>
12 
13 #include <boost/regex.hpp>
14 
15 namespace MAKVRinTerra
16 {
18  {
19  public:
21  {
22  public:
23  Column(unsigned width = 0);
24 
25  void setValue(std::string value, unsigned line);
26  std::string value(unsigned line) const;
27 
28  unsigned width() const { return myWidth; }
29  void updateWidth(unsigned);
30 
31  private:
32  typedef std::vector<std::string> ValueVector;
33 
34  unsigned myWidth;
36  };
37 
38  typedef std::vector<std::string> Attributes;
39  typedef std::vector<boost::basic_regex<char> > RegexList;
40 
42 
43  void run(const DtFeatureSet&, unsigned max = 0);
44 
45  void print(std::ostream&);
46 
47  private:
48  void processFeature(const DtFeature&, unsigned max);
49  void processAttribute(const DtFeature::Key&, const DtFeature::Attribute&);
50 
51  typedef std::map<DtFeature::Key, Column> ColumnMap;
52 
53  unsigned myLineNumber;
56  };
57 }
Represents a set of DtFeature objects or others which conform to the DtFeature concept.
Definition: featureSet.h:101
#define DT_DLL_features
stop complaining about multiple independent base classes for boost::noncopyable this should probably ...
Definition: featuresDefines.h:41
Key used to lookup attributes. The DtFeature interface is a dictionary that maps Key objects to attri...
Definition: feature.h:68
unsigned myWidth
Definition: featuresColumnPrinter.h:34
unsigned myLineNumber
Definition: featuresColumnPrinter.h:53
Definition: featuresColumnPrinter.h:20
RegexList myAttribs
Definition: featuresColumnPrinter.h:55
std::vector< std::string > Attributes
Definition: featuresColumnPrinter.h:38
std::map< DtFeature::Key, Column > ColumnMap
Definition: featuresColumnPrinter.h:51
std::vector< std::string > ValueVector
Definition: featuresColumnPrinter.h:32
unsigned width() const
Definition: featuresColumnPrinter.h:28
ColumnMap myColumns
Definition: featuresColumnPrinter.h:54
Represents a GIS feature. Features consist of a DtFeatureGeometry (2.5D geometric vector data) and a ...
Definition: feature.h:37
std::vector< boost::basic_regex< char > > RegexList
Definition: featuresColumnPrinter.h:39
ValueVector myValues
Definition: featuresColumnPrinter.h:35
Definition: featuresColumnPrinter.h:17
boost::variant< std::string, long long, bool, double > Attribute
boost::variant type for accessing attributes.
Definition: feature.h:48
void print(double **a, int r, int c, char *str)

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)