VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
navigationPreferenceController.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
11 #include "vrfobjcore/simRadio.h"
14 
15 class DtSimMessage;
16 class DtVrfObject;
19 class DtNavTag;
20 
21 
25 {
26 
27 public:
28 
32  DtVrfObject* owner,
33  DtSimManager* simManager,
34  DtComponentDescriptor* desc = 0,
35  DtReaderWriterRegistry* parentRegistry = 0);
36 
39 
42  virtual const char* type() const;
43 
47  static DtSimComponent * creator(const DtString& name,
48  DtVrfObject* owner,
49  DtSimManager* simManager,
50  DtComponentDescriptor* desc = 0,
51  DtReaderWriterRegistry* parentRegistry = 0);
52 
53  virtual bool init();
54 
55  virtual bool postAddComponentsInit();
56 
57  virtual void preFirstTickInit();
58 
59 
60 protected:
61  static bool pathCostEvalFcn(const DtNavTag& navTag, float* costMultiplier, void* userData);
62  virtual bool evaluatePathCost(const DtNavTag& navTag, float* costMultiplier);
63 
64  virtual void buildNormalizedSoilRoughnessFactors();
65  virtual void buildSoilAndSemanticFactors();
66  virtual void addSoilAndSemanticFactorsFromList(const DtPathCostEntryList& costList);
67 
68  virtual bool finalizePathCost(double pathCost, float* costMultiplier);
69 
70  static void setNavigationPreferencesCallback(DtSimMessage * msg, void * usr);
71  virtual void processSetNavigationPreferences(DtSimMessage* msg);
72 
74  virtual void removeRoadCosts();
76  virtual void addRoadCosts(double cost);
77 
78 
81 
82  std::map<DtRoughnessSoilType, double> myNormalizedSoilRoughnessFactors;
83  std::map<DtU32, double> mySoilCharacteristicFactors;
84  std::map<unsigned int, double> mySemanticDataFactors;
86 
89 
90 private:
92 
94 
97 
102 };
103 

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)