18 #include <vl/detonationInteraction.h>
39 class DtDynamicTerrainFeature;
40 class DtDynamicTerrainChanges;
41 class DtDynamicTerrainGeometry;
70 virtual void registerCallbacks();
73 virtual void deregisterCallbacks();
79 virtual const char*
type()
const;
87 unsigned priority,
double delay = 0.0);
93 unsigned priority,
double delay = 0.0);
99 double tolerance,
const DtString& key,
unsigned* index = 0);
107 virtual void processQueuedTerrainChanges(
double dt);
111 virtual void setDynamicTerrainInformationRecheckPeriod(
double);
112 virtual double dynamicTerrainInformationRecheckPeriod()
const
114 return myDynamicTerrainRecheckPeriod;
121 virtual std::list<DtVector> findDynamicTerrainElements(
const DtVector& localLocation,
double radius,
122 const DtString& filterKey = DtString::nullString(),
123 std::list<DtRwDynamicTerrainInformation>* fullInfo = 0);
128 virtual std::list<DtVector> findDynamicTerrainElements(
const DtVector& localStartLocation,
129 const DtVector& localEndLocation,
const DtString& filterKey = DtString::nullString(),
130 std::list<DtRwDynamicTerrainInformation>* fullInfo = 0);
141 static void addDynamicTerrainChangesCallback(
const DtSimCommand& cmd,
void* usr);
147 static void switchDynamicTerrainCallback(
const DtSimCommand& cmd,
void* usr);
153 static void resetDynamicTerrainChangesCallback(
const DtSimCommand& cmd,
void* usr);
174 static void dynamicTerrainInformationRequestCallback(
DtSimMessage*,
void* usr);
196 static void drawDynamicTerrainCallback(
DtSimMessage * msg,
void * usr);
197 virtual void processDrawDynamicTerrainTask(
DtSimMessage * msg);
207 virtual void addPublishedChange(std::vector<DtDynamicTerrainPublisher*>& publishers,
212 virtual void updatePublishedChange(std::vector<DtDynamicTerrainPublisher*>& publishers,
213 unsigned index,
const DtKeyValuePairList& changeData,
unsigned priority,
unsigned eventNumber);
216 virtual const DtTerrainGeometryAndData& publishedChange(
const std::vector<DtDynamicTerrainPublisher*>& publishers,
unsigned index)
const;