![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00010 00011 00012 #pragma once 00013 00014 #include "vrfmodel/lclEntSetCtlr.h" 00015 #include "vrfobjcore/simRadio.h" 00016 #include "vrftasks/simTask.h" 00017 00018 class DtVrfAggregateStateRepository; 00019 class DtFormation; 00020 class DtAggregatedResolutionPSR; 00021 class DtAggregateObjectParameters; 00022 00027 #include "vrfmodel/vrfmodelDefines.h" 00028 class DT_DLL_vrfmodel DtAggregatedSetController : public DtLocalEntitySetController 00029 { 00030 00031 public: 00032 00035 DtAggregatedSetController(const DtString& name, 00036 DtVrfObject* owner, 00037 DtSimManager* simManager, 00038 DtComponentDescriptor* desc = 0, 00039 DtReaderWriterRegistry* parentRegistry = 0); 00040 00042 virtual ~DtAggregatedSetController(); 00043 00044 virtual void processSetTrueAggregateTaskNotify(const DtSimTask & task); 00045 00048 virtual void enable(); 00049 00051 virtual void disable(); 00052 00054 virtual bool init(); 00055 00056 virtual bool postAddComponentsInit(); 00057 00058 public: 00059 00060 static void setTrueAggregateTaskNotifyCallback( 00061 const DtSimTask & task, const DtSimComponent ¬ifier, void* usr); 00062 00068 static void setFormationCallback(DtSimMessage * msg, void * usr); 00069 00073 static DtSimComponent * creator(const DtString& name, 00074 DtVrfObject* owner, 00075 DtSimManager* simManager, 00076 DtComponentDescriptor* desc = 0, 00077 DtReaderWriterRegistry* parentRegistry = 0); 00078 00079 private: 00082 DtAggregatedSetController(); 00083 00085 DtAggregatedSetController(const DtAggregatedSetController& orig); 00086 00088 const DtAggregatedSetController & operator=(const 00089 DtAggregatedSetController& orig); 00090 00091 00092 protected: 00094 virtual void setRadio(DtSimRadio * radio); 00095 00098 virtual void addSetDataCallbacks(); 00099 00102 void removeSetDataCallbacks(); 00103 00107 virtual void processSetFormation(DtSimMessage * msg); 00108 00109 virtual bool getFormation(const DtString& formationName, 00110 const DtAggregateObjectParameters& parameterEntry, DtFormation& formation); 00111 00112 virtual void updateBoundingGeometry(); 00113 00121 virtual void lookupAndCacheProcessSR(); 00122 00123 protected: 00124 00125 const DtSimTask* mySimTask; 00126 00127 DtVrfAggregateStateRepository* myAggregateStateRepository; 00128 00134 DtAggregatedResolutionPSR* myAggregatedResolutionProcessState; 00135 }; 00136 00137