VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
engagementReportGeneratorController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 #pragma once
11 
14 #include <list>
17 
20 class DtRwEngagementInfo;
21 class DtEngagementReport;
22 class DtSimMessage;
23 class DtVrfObjectMessage;
24 class DtSettingsObject;
25 class DtBoolSetting;
26 class DtRwPropertiesList;
27 
47 {
48 private:
56 public:
57 
61  DtSimManager* simManager, DtComponentDescriptor* desc=0,
62  DtReaderWriterRegistry *parentRegistry=0);
63 
66 
70  virtual bool init();
71 
74  virtual const char* type() const;
75 
78  virtual void tick();
79 
81  static void setEngagementReportingCallback(DtSimMessage * msg, void * usr);
82 
83  virtual void processSetEngagementReporting(DtSimMessage * msg);
84 
88  virtual void setLocalEnabled(bool on);
89 
97  virtual void setGlobalEnabledOverridingLocal();
98 
102  static DtSimComponent * creator(const DtString& name,
103  DtVrfObject* owner,
104  DtSimManager* simManager,
105  DtComponentDescriptor* desc = 0,
106  DtReaderWriterRegistry* parentRegistry = 0);
107 
108 protected:
109 
112  DtEngagementReport* engagementReport();
113 
119  virtual bool createPSR();
120 
123  virtual void registerRadioMessageCallbacks();
124 
127  virtual void generateAndSendEngagementReport(const DtRwPropertiesList* attacks,
128  const DtRwPropertiesList* limitedMunitionAttacks,
129  const DtRwPropertiesList* attacksDefended);
130 
134  virtual DtRwEngagementInfo* createEngagementInfoForTarget(
135  const DtUUID& targetName, const DtVrfObjectStateRepository* target);
136 
138  virtual void updateEngagementInfoForTarget(DtRwEngagementInfo& engagement,
139  const DtUUID& targetName, const DtVrfObjectStateRepository* target,
140  bool engagementComplete = false);
141 
146  virtual void sendEngagementReport(bool superiorOnly);
147 
153  virtual bool engagementReportNeedsUpdateAndResend();
154 
161  virtual const DtSimReportMessageType& engagementReportTypeString() const;
162 
166  static void settingConsumerCallback(const DtSettingsObject* settingsObject,
167  void* usr);
170  virtual void readGlobalEnabledSetting(const DtBoolSetting* enabledSetting);
171 
176  virtual bool reportingEnabled() const;
177 
178 protected:
179 
182 
185 
189 
193 };
194 

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)