VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtForestObject.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #ifndef DtForestObject_H_
11 #define DtForestObject_H_
12 
13 #include <vrvCore/vrvCore.h>
14 #include <vrvCore/DtTreeRecord.h>
17 #include <boost/unordered_map.hpp>
18 
19 namespace makVrv
20 {
21  class DtDe;
22  class DtModelInstance;
23  class DtModelDefinition;
24 
28  {
29 
30  public:
31 
33  friend class DtForestObjectClassesCreator;
34  friend class DtForestCreator;
35 
36  typedef boost::unordered_map<DtUniqueID, DtTreeRecord> TreeRecordMap;
37 
39  virtual ~DtForestObject();
40 
44 
45 
47  virtual void addUniqueTree(DtTreeRecord& record) = 0;
48 
50  virtual void removeTree(DtUniqueID treeId) = 0;
51 
53  virtual void removeAllTrees() = 0;
54 
57  virtual void setTreeClippingPlane(float fFar) = 0;
58 
60  virtual void getTreeClippingPlane( float& fFar) = 0;
61 
64  virtual void setTree3DLodDistances(float fNear, float fFar) = 0;
65 
68  virtual void getTree3DLodDistances(float& fNear, float& fFar) = 0;
69 
72  virtual void setTreeBillboardDistances(float fStart, float fEnd) = 0;
73 
76  virtual void getTreeBillboardDistances(float& fStart, float& fEnd) = 0;
77 
80  void addTree(DtTreeRecord& record);
81 
83 
85  virtual DtDe& de();
86 
87  protected:
88 
91 
92  protected:
94  };
95 
99  {
100 
101  public:
102 
105  static DtForestCreator& instance(DtDe& de);
106 
108  static void registerInstance(DtDe& de, DtForestCreator* instance = 0);
109 
111  virtual DtForestObject* create(DtDe& de, DtUniqueID id);
112 
113  };
114 
115 }
116 
117 #endif
118 

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)