VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
surfaceCharacteristicsMap.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vlutil/vlFilename.h>
14 #include <vlutil/vlString.h>
15 
16 #include <geometry/surface.h>
17 
18 #include <boost/unordered_map.hpp>
19 #include <set>
20 
21 #include <sstream>
22 #include <string>
23 
24 namespace makVrf {
26  {
27  public:
28 
29  class Entry
30  {
31  public:
32  //virtual ~Entry();
33 
34  virtual bool matches(const DtString& str) const = 0;
36  virtual int position() const = 0;
37  };
38 
41 
44 
46  virtual bool init(const DtFilename filename, bool displayWarning = false);
47 
49  virtual bool characteristicsFromString(const char* str,
50  unsigned int& characteristics, int& position, int& matchClass);
51 
52  virtual void printResults(const char* str, unsigned int characteristics, const char* additionalInformation = 0);
53 
54  protected:
56  virtual bool get(std::istream& stream);
57 
59  virtual bool processToken(std::istream& stream, const DtString& token);
60 
61  typedef boost::unordered_map<DtString, boost::shared_ptr<Entry> > MatchMap;
62  typedef std::vector<boost::shared_ptr<Entry> > EntryList;
63 
66 
68 
69  static const DtString theMatchString;
71 
72  private:
73 
79  std::set<std::string> myPrintedMessages;
80  };
81 
82 }
std::vector< boost::shared_ptr< Entry > > EntryList
Definition: surfaceCharacteristicsMap.h:62
virtual bool init(const DtFilename filename, bool displayWarning=false)
Initialize the metafile. Calls createSurface().
boost::unordered_map< DtString, boost::shared_ptr< Entry > > MatchMap
Definition: surfaceCharacteristicsMap.h:61
int myCurrentPosition
Definition: surfaceCharacteristicsMap.h:67
static const DtString theMatchString
Definition: surfaceCharacteristicsMap.h:69
std::set< std::string > myPrintedMessages
This is here to prevent error/status messages from streaming out endlessly.
Definition: surfaceCharacteristicsMap.h:79
MatchMap myExactMatches
Definition: surfaceCharacteristicsMap.h:64
Definition: surfaceCharacteristicsMap.h:25
virtual bool matches(const DtString &str) const =0
DtSurfaceCharacteristicMap()
default constructor.
virtual int position() const =0
virtual void printResults(const char *str, unsigned int characteristics, const char *additionalInformation=0)
voidpf stream
Definition: ioapi.h:39
unsigned int DtCharacteristics
Definition: surface.h:196
EntryList myEntries
Definition: surfaceCharacteristicsMap.h:65
virtual bool processToken(std::istream &stream, const DtString &token)
identifies a token or passes token the parent class.
virtual DtSurface::DtCharacteristics characteristics() const =0
virtual ~DtSurfaceCharacteristicMap()
destructor
Definition: surfaceCharacteristicsMap.h:29
virtual bool characteristicsFromString(const char *str, unsigned int &characteristics, int &position, int &matchClass)
Set characteristics based on a string.
static const DtString theRegExprMatchString
Definition: surfaceCharacteristicsMap.h:70

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)