![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtForest.h,v $ $Revision: 1.12 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #ifndef DtForest_H_ 00014 #define DtForest_H_ 00015 00016 #include <vrvCore/vrvCore.h> 00017 #include <vrvCore/DtUniqueID.h> 00018 00019 #include <string> 00020 00021 namespace makArchives { class DtForestSettingsRecord; } 00022 00023 namespace makVrv 00024 { 00025 00026 class DtProp; 00027 class DtAgentManagerInterface; 00028 class DtForestObjectAgent; 00029 class DtTreeRecord; 00030 00034 class DT_DLL_VRVCORE DtForest 00035 { 00036 public: 00037 00039 DtForest(DtAgentManagerInterface& smi); 00040 00042 ~DtForest(); 00043 00045 void setClippingPlanes(float farPlane); 00046 00048 void getClippingPlanes(float& farPlane) const; 00049 00051 void setLodDistances(float nearLOD, float farLOD); 00052 00054 void getLodDistances(float& nearLOD,float& farLOD) const; 00055 00057 void setPerformanceProfile(int index); 00058 00060 int performanceProfile() const; 00061 00063 void addTree(const DtTreeRecord& record); 00064 00066 void removeTree(const DtTreeRecord& record); 00067 00069 void addTree(const DtProp& prop); 00070 00072 void removeTree(const DtProp& propID); 00073 00075 void removeAllTrees(); 00076 00078 DtForestObjectAgent* driver(); 00079 00080 protected: 00081 DtAgentManagerInterface& mySceneInterface; 00082 DtForestObjectAgent* myForestAgent; 00083 float myFarPlane; 00084 float myNearLOD; 00085 float myFarLOD; 00086 int myPerformanceProfile; 00087 }; 00088 } 00089 00090 #endif 00091