VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rwNavigationProfile.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
12 #include <readerWriter/rwReal.h>
13 #include "vrfutil/rwIntegerList.h"
15 
16 #include "vrfutil/vrfutilDefines.h"
20 
21 
26 {
27 public:
28 
29  //Default constructor
31 
32  //Real constructors
33  DtRwNavigationProfile(const DtString& name,
34  DtReaderWriterRegistry* parentRegistry = NULL);
36  DtReaderWriterRegistry* parentRegistry = NULL);
37 
38  //Copy constructor
40 
41  double entityHeight() const { return myEntityHeight; };
42  void setEntityHeight(double height) { myEntityHeight = height; };
43 
44  double entityRadius() const { return myEntityRadius; };
45  void setEntityRadius(double radius) { myEntityRadius = radius; };
46 
47  double stepMax() const { return myStepMax; };
48  void setStepMax(double stepMax) { myStepMax = stepMax; };
49 
50  double slopeMax() const { return mySlopeMax; };
51  void setSlopeMax(double slopeMax) { mySlopeMax = slopeMax; };
52 
53  double rasterPrecision() const { return myRasterPrecision; };
54  void setRasterPrecision(double precision) { myRasterPrecision = precision; };
55 
56  bool generateAbstractData() const { return myGenerateAbstractData;};
57  void setGenerateAbstractData(bool yesNo) { myGenerateAbstractData = yesNo; };
58 
59  bool generateCoverPoints() const { return myGenerateCoverPoints; };
60  void setGenerateCoverPoints(bool yesNo) { myGenerateCoverPoints = yesNo; };
61 
62  double minNavigableSurface() const { return myMinNavigableSurface; };
63  void setMinNavigableSurface(double area) { myMinNavigableSurface = area; };
64 
65  int regenerationPriority() const { return myRegenPriority; };
66  void setGenerateAbstractData(int priority) { myRegenPriority = priority; };
67 
68  DtRwStringList& regenForDynamicTerrainTypes() { return myRegenForDynamicTerrainTypes; };
69  const DtRwStringList& regenForDynamicTerrainTypes() const { return myRegenForDynamicTerrainTypes; };
70 
71  DtRwNavigationProfileSoilTypeEntryList& soilTypeEntryList() { return mySoilTypeEntryList; };
72  const DtRwNavigationProfileSoilTypeEntryList& soilTypeEntryList() const { return mySoilTypeEntryList; };
73  const DtRwNavigationProfileSoilTypeEntry* soilTypeEntry(const DtString& soilType) const;
74 
75  DtRwStringList& soilTypesToTagList() { return mySoilTypesToTagList; };
76  const DtRwStringList& soilTypesToTagList() const { return mySoilTypesToTagList; };
77 
78  DtRwNavigationProfileFeatureEntryList& featureEntryList() { return myFeatureEntryList; };
79  const DtRwNavigationProfileFeatureEntryList& featureEntryList() const { return myFeatureEntryList; };
80 
81  DtRwNavigationProfileGenEntryList& navEdgeEntryList() { return myNavEdgeEntryList; };
82  const DtRwNavigationProfileGenEntryList& navEdgeEntryList() const { return myNavEdgeEntryList; };
83 
84  DtRwNavigationProfileGenEntryList& navPointEntryList() { return myNavPointEntryList; };
85  const DtRwNavigationProfileGenEntryList& navPointEntryList() const { return myNavPointEntryList; };
86 
87 protected:
88  DtRwReal myEntityHeight;
103 };
104 
106 {
107 public:
108 
109  //Default constructor
111 
112  //Real constructors
114  DtReaderWriterRegistry* parentRegistry = NULL);
116  DtReaderWriterRegistry* parentRegistry = NULL);
117 
118  //Copy constructor
120 
121  virtual DtString pluginPath() const;
122  virtual void setPluginPath(const DtString& p);
123 
124 protected:
125 
126  static const DtString& platform();
127 
133 
139 };
140 
142 {
143 public:
146 
148  DtRwNavigationProfileList(const DtString& name, DtReaderWriterRegistry* parentRegistry = NULL);
149 
150  DtRwNavigationProfileList(const DtSymbolString& name, DtReaderWriterRegistry* parentRegistry = NULL);
151 
153  DtReaderWriterRegistry* parentRegistry = NULL);
154 
156  DtReaderWriterRegistry* parentRegistry = NULL);
157 
159  DtReaderWriterRegistry* parentRegistry = NULL);
160 
161  virtual DtRwNavigationProfile* getProfileByName(const DtString& profileName) const;
162 
164  virtual const DtRwTemplatedListPtr<DtRwNavigationProfile, true>& profiles() const { return myProfiles; };
165 
166 
167  int maxCells() const { return myMaxCells; };
168  void setMaxCells(int maxCells) { myMaxCells = maxCells; };
169 
170  double areaDepth() const { return myAreaDepth; };
171  void setAreaDepth(double depth) { myAreaDepth = depth; };
172 
173  double areaHeight() const { return myAreaHeight; };
174  void setAreaHeight(double height) { myAreaHeight = height; };
175 
176  const std::set<DtFilename>& plugins() const;
177  void setPlugins(const std::set<DtFilename>& pluginPaths);
178 
179 protected:
185 
187  mutable std::set<DtFilename> myPluginFiles;
188 };
189 
190 bool DT_DLL_vrfutil ReadFromFile(const DtFilename& filePath, DtRwNavigationProfileList* input);
191 bool DT_DLL_vrfutil WriteToFile(const DtFilename& filePath, DtRwNavigationProfileList* input);
DtRwString myLinuxPath
Definition: rwNavigationProfile.h:128
DtRwInt myRegenPriority
Definition: rwNavigationProfile.h:96
DtRwStringList myRegenForDynamicTerrainTypes
Definition: rwNavigationProfile.h:97
int regenerationPriority() const
Definition: rwNavigationProfile.h:65
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
void setMaxCells(int maxCells)
Definition: rwNavigationProfile.h:168
const DtRwNavigationProfileGenEntryList & navEdgeEntryList() const
Definition: rwNavigationProfile.h:82
bool DT_DLL_vrfutil WriteToFile(const DtFilename &filePath, DtRwChatChannelConfig *input)
bool DT_DLL_vrfutil ReadFromFile(const DtFilename &filePath, DtRwChatChannelConfig *input, const DtVariableBindingsList &variableBindings=DtReaderWriter::nullVariableReference())
void setRasterPrecision(double precision)
Definition: rwNavigationProfile.h:54
void setSlopeMax(double slopeMax)
Definition: rwNavigationProfile.h:51
double slopeMax() const
Definition: rwNavigationProfile.h:50
void setEntityHeight(double height)
Definition: rwNavigationProfile.h:42
DtRwString myWindows64DebugPath
Definition: rwNavigationProfile.h:131
DtRwTemplatedListPtr< DtRwNavGenerationPluginInfo, true > myPlugins
Definition: rwNavigationProfile.h:184
DtRwReal myAreaHeight
Definition: rwNavigationProfile.h:182
Defines settings for navData generation, to allow navData to be generated differently for different t...
Definition: rwNavigationProfileSoilTypeEntry.h:21
DtRwTemplatedListPtr< DtRwNavigationProfile, true > myProfiles
Definition: rwNavigationProfile.h:183
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
void setAreaHeight(double height)
Definition: rwNavigationProfile.h:174
DtRwBoolean myGenerateCoverPoints
Definition: rwNavigationProfile.h:95
void setAreaDepth(double depth)
Definition: rwNavigationProfile.h:171
static const DtString theWindows64DebugPlatformName
Definition: rwNavigationProfile.h:137
Definition: readerWriterRegistry.h:39
DtRwNavigationProfileGenEntryList & navPointEntryList()
Definition: rwNavigationProfile.h:84
const DtRwNavigationProfileGenEntryList & navPointEntryList() const
Definition: rwNavigationProfile.h:85
DtRwString myWindows32DebugPath
Definition: rwNavigationProfile.h:129
double entityRadius() const
Definition: rwNavigationProfile.h:44
void setStepMax(double stepMax)
Definition: rwNavigationProfile.h:48
DtRwBoolean myGenerateAbstractData
Definition: rwNavigationProfile.h:94
void setGenerateAbstractData(bool yesNo)
Definition: rwNavigationProfile.h:57
double entityHeight() const
Definition: rwNavigationProfile.h:41
void setEntityRadius(double radius)
Definition: rwNavigationProfile.h:45
static const DtString theWindows64ReleasePlatformName
Definition: rwNavigationProfile.h:138
Definition: rwNavigationProfileFeatureEntry.h:65
DtRwStringList & soilTypesToTagList()
Definition: rwNavigationProfile.h:75
double areaDepth() const
Definition: rwNavigationProfile.h:170
virtual DtRwTemplatedListPtr< DtRwNavigationProfile, true > & profiles()
Definition: rwNavigationProfile.h:163
DtRwReal myAreaDepth
Definition: rwNavigationProfile.h:181
DtRwString myWindows32ReleasePath
Definition: rwNavigationProfile.h:130
DtRwStringList mySoilTypesToTagList
Definition: rwNavigationProfile.h:99
static const DtString theWindows32ReleasePlatformName
Definition: rwNavigationProfile.h:136
Defines settings for navData generation, to allow navData to be generated differently for different t...
Definition: rwNavigationProfile.h:25
DtRwNavigationProfileSoilTypeEntryList & soilTypeEntryList()
Definition: rwNavigationProfile.h:71
const DtRwStringList & soilTypesToTagList() const
Definition: rwNavigationProfile.h:76
Description: Readable, Writable int.
Definition: rwInt.h:25
DtRwNavigationProfileFeatureEntryList & featureEntryList()
Definition: rwNavigationProfile.h:78
static const DtString theWindows32DebugPlatformName
Definition: rwNavigationProfile.h:135
static const DtString theLinuxPlatformName
Definition: rwNavigationProfile.h:134
const DtRwStringList & regenForDynamicTerrainTypes() const
Definition: rwNavigationProfile.h:69
double rasterPrecision() const
Definition: rwNavigationProfile.h:53
double areaHeight() const
Definition: rwNavigationProfile.h:173
DtRwInt myMaxCells
Definition: rwNavigationProfile.h:180
double minNavigableSurface() const
Definition: rwNavigationProfile.h:62
void setGenerateCoverPoints(bool yesNo)
Definition: rwNavigationProfile.h:60
DtRwNavigationProfileSoilTypeEntryList mySoilTypeEntryList
Definition: rwNavigationProfile.h:98
DtRwReal myStepMax
Definition: rwNavigationProfile.h:90
DtRwReal myMinNavigableSurface
Definition: rwNavigationProfile.h:93
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
DtRwNavigationProfileGenEntryList myNavEdgeEntryList
Definition: rwNavigationProfile.h:101
DtRwReal myEntityRadius
Definition: rwNavigationProfile.h:89
DtRwReal mySlopeMax
Definition: rwNavigationProfile.h:91
Definition: rwNavigationProfileSoilTypeEntry.h:55
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
const DtRwNavigationProfileFeatureEntryList & featureEntryList() const
Definition: rwNavigationProfile.h:79
DtRwNavigationProfileGenEntryList myNavPointEntryList
Definition: rwNavigationProfile.h:102
double stepMax() const
Definition: rwNavigationProfile.h:47
void setGenerateAbstractData(int priority)
Definition: rwNavigationProfile.h:66
Definition: rwNavigationProfileGenEntry.h:69
#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
DtRwNavigationProfileGenEntryList & navEdgeEntryList()
Definition: rwNavigationProfile.h:81
DtRwNavigationProfileFeatureEntryList myFeatureEntryList
Definition: rwNavigationProfile.h:100
DtRwReal myRasterPrecision
Definition: rwNavigationProfile.h:92
std::set< DtFilename > myPluginFiles
Mutable because it is constructed from myPlugins in plugins();.
Definition: rwNavigationProfile.h:187
Definition: rwStringList.h:20
virtual const DtRwTemplatedListPtr< DtRwNavigationProfile, true > & profiles() const
Definition: rwNavigationProfile.h:164
DtRwStringList & regenForDynamicTerrainTypes()
Definition: rwNavigationProfile.h:68
bool generateCoverPoints() const
Definition: rwNavigationProfile.h:59
Definition: rwNavigationProfile.h:105
Definition: rwNavigationProfile.h:141
const DtRwNavigationProfileSoilTypeEntryList & soilTypeEntryList() const
Definition: rwNavigationProfile.h:72
DtRwString myWindows64ReleasePath
Definition: rwNavigationProfile.h:132
bool generateAbstractData() const
Definition: rwNavigationProfile.h:56
void setMinNavigableSurface(double area)
Definition: rwNavigationProfile.h:63
int maxCells() const
Definition: rwNavigationProfile.h:167

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)