![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #pragma once 00010 00011 #include <vrvCore/DtDriver.h> 00012 00013 class DtDetonationPdu; 00014 typedef DtDetonationPdu DtDetonationInteraction; 00015 00016 namespace makVrv 00017 { 00018 00019 class DtSceneObjectAgent; 00020 class DtModelAgent; 00021 00022 namespace tutorialDistributedSimulation5 00023 { 00024 00025 class DistributedSimulationConnection; 00026 00027 class DistributedSimulationDriver : public DtDriver 00028 { 00029 public: 00031 00032 typedef std::pair<DtSceneObjectAgent*, DtModelAgent*> SceneObjectAndModelPair; 00033 typedef std::vector<SceneObjectAndModelPair> SceneObjectAndModelList; 00035 00037 DistributedSimulationDriver(DtAgentManager& agentManager, const std::string& instanceName); 00038 00040 virtual ~DistributedSimulationDriver(); 00041 00043 virtual const std::string& className() const; 00044 00045 protected: 00046 00049 virtual bool onStart(); 00050 00052 virtual bool onStop(); 00053 00055 virtual bool onTick(); 00056 00059 static void processDetonationCb(DtDetonationInteraction* inter, void* usr); 00060 00063 virtual void processDetonation(DtDetonationInteraction* inter); 00064 00065 protected: 00066 00067 DistributedSimulationConnection* mySimulation; 00068 SceneObjectAndModelList mySceneObjectAgentsList; 00069 double myRotationDegree; 00070 }; 00071 00072 } 00073 }