![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00010 00011 #pragma once 00012 00013 #include "vrfobjcore/vrfobjcoreDefines.h" 00014 #include "terrainInterface/terrainPagingGeometry.h" 00015 #include "vrfutil/callbackList.h" 00016 00019 struct DtVrfObjectTerrainPreloadArgs 00020 { 00021 DtVrfObjectTerrainPreloadArgs(DtTerrainPagingGeometryList& list, double time) 00022 : geometryList(list), lookaheadTime(time) {} 00023 DtTerrainPagingGeometryList& geometryList; 00024 double lookaheadTime; 00025 }; 00026 00036 class DT_DLL_vrfobjcore DtVrfObjectTerrainPreloadManager 00037 { 00038 private: 00040 00041 DtVrfObjectTerrainPreloadManager(DtVrfObjectTerrainPreloadManager& orig); 00042 DtVrfObjectTerrainPreloadManager& operator=(DtVrfObjectTerrainPreloadManager& orig); 00044 public: 00045 typedef DtCallbackList<DtVrfObjectTerrainPreloadArgs&> DtProviderCallbackList; 00046 00047 DtVrfObjectTerrainPreloadManager(); 00048 virtual ~DtVrfObjectTerrainPreloadManager(); 00049 00052 virtual DtTerrainPagingGeometryList preloadGeometry(double seconds); 00053 00057 virtual void addProvider(DtProviderCallbackList::DtCallbackFunctionType fcn, void* usrData); 00059 virtual void removeProvider(DtProviderCallbackList::DtCallbackFunctionType fcn, void* usrData); 00060 00061 protected: 00062 DtProviderCallbackList myProviderCallbackList; 00063 };