VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
surfaceCharacteristicMap.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1998 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: surfCharMap.h,v $ $Revision: 1.13 $ $State: Exp $
7 *******************************************************************************/
8 
9 #ifndef surfaceCharacteristicMap_H_
10 #define surfaceCharacteristicMap_H_
11 
12 #include "flt/fltDefines.h"
13 #include "geometry/surface.h"
14 #include <vlutil/vlConfig.h>
15 #include <vlutil/vlUtil.h>
16 #include <vlutil/vlFilename.h>
17 #include <vlutil/vlString.h>
18 #include <iosfwd>
19 #include <set>
20 #include <map>
21 #include <string>
22 
23 class DtSurface;
24 
25 //
26 // This is the base class for all metafile records.
28 {
29 
30 public:
31 
32  // default constructor.
34 
35  // destructor
36  virtual ~DtSurfaceCharacteristicMap();
37 
38  // copy constructor
40 
41  // assignment operator - provided by default by compiler.
42  // This class is assignable.
43 
44  // Initialize the metafile. Calls createSurface().
45  virtual bool init(const DtFilename filename, bool displayWarning = false);
46 
47  // get data from a stream
48  virtual bool get(std::istream& stream);
49 
50  // identifies a token or passes token the parent class.
51  virtual bool processToken(std::istream& stream, DtString& token);
52 
53  // Set characteristics based on a string
54  virtual bool characteristicsFromString(const char* str,
55  unsigned int& characteristics);
56 
57 protected:
58 
59  // Creates mySufarce.
60  virtual DtSurface* createSurface();
61 
62 protected:
63  typedef std::map <DtString, DtSurface::DtCharacteristics> DtSurfaceStringToCharacteristics;
64  typedef DtSurfaceStringToCharacteristics::const_iterator DtSurfStrToCharsConstIter;
65  typedef DtSurfaceStringToCharacteristics::iterator DtSurfStrToCharsIter;
66 
68  static const DtString theMatchString;
70 
71 private:
72 
73  // This is here to prevent error messages from streaming out when many polygons
74  // have textures not referenced in the surface characteristics map. Should
75  // probably be changed to a logging class that is a member of the class, that explicitly
76  // has the "only output once" logic held internally.
77  // NOTE: This is used in the characteristicsFromString function.
78  // @see characteristicsFromString
79  std::set<std::string> myPrintedWarnings;
80 
81 };
82 
83 #endif
84 
#define DT_DLL_flt
Definition: fltDefines.h:23
std::set< std::string > myPrintedWarnings
Definition: surfaceCharacteristicMap.h:79
DtSurface * mySurface
Definition: surfaceCharacteristicMap.h:69
Definition: surface.h:179
DtSurfaceStringToCharacteristics::const_iterator DtSurfStrToCharsConstIter
Definition: surfaceCharacteristicMap.h:64
Definition: surfaceCharacteristicMap.h:27
voidpf stream
Definition: ioapi.h:39
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtSurfaceStringToCharacteristics::iterator DtSurfStrToCharsIter
Definition: surfaceCharacteristicMap.h:65
static const DtString theMatchString
Definition: surfaceCharacteristicMap.h:68
DtSurfaceStringToCharacteristics mySurfaceStringToCharacteristics
Definition: surfaceCharacteristicMap.h:67
std::map< DtString, DtSurface::DtCharacteristics > DtSurfaceStringToCharacteristics
Definition: surfaceCharacteristicMap.h:63

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)