VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfDefaultDatabaseEvents.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2024 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 #pragma once
6 
8 #include <vector>
9 
10 namespace DtDefaultDatabaseEvents
11 {
15  const DtEntityType entityTypeParam;
16  const DtEntityIdentifier entityIdParam;
17  const DtVector vectorParam;
18  const DtEntityIdentifier simAddressParam;
19  const int intParam = 0;
20  const double doubleParam = 0;
21  const bool boolParam = 0;
22 
23 
39 
49 
62  std::string theScenarioRunTableName("ScenarioRun");
64  return DtVrfDatabaseEvent()
66  .addParameter("scenarioName", stringParam)
67  .addParameter("dateAndTimeStart", doubleParam)
68  .addParameter("realWorldTimeStart", doubleParam)
69  .addParameter("simTime", doubleParam)
70  .addParameter("simAddress", simAddressParam); };
71 
82  std::string theSimEngineTableName("SimEngine");
83  auto theSimEnginePrototype = []() {
84  DtVrfDatabaseEvent event;
86  event.addParameter("pid", intParam, DtVrfDatabaseEvent::PrimaryKey)
87  .addParameter("simAddress", simAddressParam)
88  .addParameter("host", stringParam)
89  .addParameter("startTime", doubleParam);
90  return event; };
91 
104  std::string theFireTableName("Fire");
105  auto theFirePrototype = []() {
106  return DtVrfDatabaseEvent()
109  .addParameter("firingObjectUuid", uuidParam)
110  .addParameter("targetObjectUuid", uuidParam)
111  .addParameter("munitionObjectUuid", uuidParam)
112  .addParameter("munitionType", entityTypeParam)
113  .addParameter("location", vectorParam); };
114 
128  std::string theDetonationTableName("Detonation");
130  return DtVrfDatabaseEvent()
133  .addParameter("attackingObjectUuid", uuidParam)
134  .addParameter("targetObjectUuid", uuidParam)
135  .addParameter("munitionObjectUuid", uuidParam)
136  .addParameter("munitionType", entityTypeParam)
137  .addParameter("location", vectorParam)
138  .addParameter("result", intParam); };
139 
155  std::string theDamageTableName("Damage");
156  auto theDamagePrototype = []() {
157  return DtVrfDatabaseEvent()
158  .addParameter("eventId", stringParam)
159  .addParameter("damagedObjectUuid", uuidParam)
160  .addParameter("munitionType", entityTypeParam)
161  .addParameter("surface", stringParam)
162  .addParameter("directHit", boolParam)
163  .addParameter("destroyed", boolParam)
164  .addParameter("mobilityKilled", boolParam)
165  .addParameter("firepowerKilled", boolParam)
166  .addParameter("sensorKilled", boolParam); };
167 
181  std::string theObjectTableName("Object");
182  auto theObjectPrototype = []() {
183  return DtVrfDatabaseEvent()
186  .addParameter("globalId", stringParam)
187  .addParameter("objectId", entityIdParam)
188  .addParameter("markingText", stringParam)
189  .addParameter("objectType", entityTypeParam)
190  .addParameter("forceType", intParam)
191  .addParameter("createdBySimEngine", simAddressParam); };
192 
204  std::string theResourceTableName("Resource");
205  auto theResourcePrototype = []() {
206  return DtVrfDatabaseEvent()
207  .addParameter("objectUuid", uuidParam)
208  .addParameter("resourceType", entityTypeParam)
209  .addParameter("location", intParam)
210  .addParameter("fullAmount", doubleParam)
211  .addParameter("currentAmount", doubleParam); };
212 
229  std::string theDetectionTableName("Detection");
230  auto theDetectionPrototype = []() {
231  return DtVrfDatabaseEvent()
232  .addParameter("detectingObjectUuid", uuidParam)
233  .addParameter("sensorName", stringParam)
234  .addParameter("sensorType", intParam)
235  .addParameter("sensorEnabled", boolParam)
236  .addParameter("contactObjectUuid", uuidParam)
237  .addParameter("combatIdentificationLevel", intParam)
238  .addParameter("contactForce", intParam)
239  .addParameter("contactType", entityTypeParam); };
240 
257  std::string theEngagementTableName("Engagement");
259  return DtVrfDatabaseEvent()
263  .addParameter("damageTaken", intParam)
264  .addParameter("startTime", doubleParam)
265  .addParameter("endTime", doubleParam); };
266 
286  std::string theEngagementAttackTableName("EngagementAttack");
288  return DtVrfDatabaseEvent()
292  .addParameter("targetUuid", uuidParam)
293  .addParameter("attackerEngagementId", intParam)
294  .addParameter("damageType", stringParam)
295  .addParameter("startTime", doubleParam)
296  .addParameter("endTime", doubleParam); };
297 
319  std::string theEngagementDefenseTableName("EngagementDefense");
321  return DtVrfDatabaseEvent()
325  .addParameter("targetUuid", uuidParam)
326  .addParameter("targetEngagementId", intParam)
327  .addParameter("damageType", stringParam)
328  .addParameter("damage", intParam)
329  .addParameter("startTime", doubleParam)
330  .addParameter("endTime", doubleParam); };
331 
345  std::string theEngagementCasualtyReportTableName("EngagementCasualtyReport");
347  return DtVrfDatabaseEvent()
351  .addParameter("numberKilled", intParam)
352  .addParameter("numberWounded", intParam)
353  .addParameter("numberCaptured", intParam)
354  .addParameter("numberMissing", intParam); };
355 
368  std::string theEngagementDamageReportTableName("EngagementDamageReport");
370  return DtVrfDatabaseEvent()
375  .addParameter("numberDamaged", intParam); };
376 
387  std::string theScenarioEventTableName("ScenarioEvent");
389  return DtVrfDatabaseEvent()
390  .addParameter("scenarioEventUuid", uuidParam)
391  .addParameter("scenarioEventName", stringParam)
392  .addParameter("stopOrStart", intParam)
393  .addParameter("location", vectorParam); };
394 
397  std::string theUnknownTableName("Unknown");
398  std::string theInternalStatsTableName("InternalStats");
400 
402  std::map<DtVrfDatabaseEvent::EventType, std::string> eventTypes()
403  {
404  return std::map<DtVrfDatabaseEvent::EventType, std::string>{
421  };
422  }
423 
425  std::map<DtVrfDatabaseEvent::EventType, DtVrfDatabaseEvent> eventPrototypes()
426  {
427  return std::map<DtVrfDatabaseEvent::EventType, DtVrfDatabaseEvent>{
442  };
443  };
444 
445 }
446 
447 
UUID is a unique ID wrapper class.
Definition: uuid.h:59
auto theFirePrototype
Definition: vrfDefaultDatabaseEvents.h:105
std::map< DtVrfDatabaseEvent::EventType, std::string > eventTypes()
Returns the list of all default database event type to table name mappings.
Definition: vrfDefaultDatabaseEvents.h:402
std::string theSimEngineTableName("SimEngine")
auto theEngagementCasualtyReportPrototype
Definition: vrfDefaultDatabaseEvents.h:346
virtual void setExcludeDefaultScenarioParameters(bool v)
If set, excludes the default scenario parameters that are added to all events: scenarioRunId, simTime, simAddress. This is not generally recommended, but can be used for events that are not related to specific scenarios.
std::string theEngagementDamageReportTableName("EngagementDamageReport")
std::string theEngagementTableName("Engagement")
const bool boolParam
Definition: vrfDefaultDatabaseEvents.h:21
std::string theDetonationTableName("Detonation")
std::string theObjectTableName("Object")
Definition: vrfDatabaseEvent.h:46
std::string theUnknownTableName("Unknown")
Internal use only.
Definition: vrfDatabaseEvent.h:38
std::string theFireTableName("Fire")
auto theDamagePrototype
Definition: vrfDefaultDatabaseEvents.h:156
const DtUUID uuidParam
Definition: vrfDefaultDatabaseEvents.h:14
auto theScenarioRunPrototype
Definition: vrfDefaultDatabaseEvents.h:63
Definition: vrfDatabaseEvent.h:40
Definition: vrfDatabaseEvent.h:35
std::map< DtVrfDatabaseEvent::EventType, DtVrfDatabaseEvent > eventPrototypes()
Returns the list of all default database event prototypes.
Definition: vrfDefaultDatabaseEvents.h:425
const DtEntityIdentifier simAddressParam
Definition: vrfDefaultDatabaseEvents.h:18
auto theEngagementDamageReportPrototype
Definition: vrfDefaultDatabaseEvents.h:369
Internal use only.
Definition: vrfDatabaseEvent.h:33
auto theResourcePrototype
Definition: vrfDefaultDatabaseEvents.h:205
Definition: vrfDatabaseEvent.h:41
std::string theInternalStatsTableName("InternalStats")
Internal use only.
virtual DtVrfDatabaseEvent & addParameter(const DtString &name, bool p, bool isPrimaryKey=false)
Adds a new parameter to this event. Parameters can be of many types, and are then converted into type...
Definition: vrfDatabaseEvent.h:43
const double doubleParam
Definition: vrfDefaultDatabaseEvents.h:20
Internal use only.
Definition: vrfDatabaseEvent.h:34
std::string theEngagementAttackTableName("EngagementAttack")
auto theEngagementAttackPrototype
Definition: vrfDefaultDatabaseEvents.h:287
std::string theEngagementCasualtyReportTableName("EngagementCasualtyReport")
const int intParam
Definition: vrfDefaultDatabaseEvents.h:19
auto theDetectionPrototype
Definition: vrfDefaultDatabaseEvents.h:230
auto theDetonationPrototype
Definition: vrfDefaultDatabaseEvents.h:129
const DtEntityIdentifier entityIdParam
Definition: vrfDefaultDatabaseEvents.h:16
std::string theDetectionTableName("Detection")
Definition: vrfDatabaseEvent.h:36
auto theScenarioEventPrototype
Definition: vrfDefaultDatabaseEvents.h:388
Definition: vrfDatabaseEvent.h:39
const DtVector vectorParam
Definition: vrfDefaultDatabaseEvents.h:17
const DtEntityType entityTypeParam
Definition: vrfDefaultDatabaseEvents.h:15
Definition: vrfDatabaseEvent.h:44
auto theEngagementDefensePrototype
Definition: vrfDefaultDatabaseEvents.h:320
Definition: vrfDatabaseEvent.h:47
Definition: vrfDatabaseEvent.h:37
const DtString stringParam
Placeholders to indicate data types of parameters in prototypes.
Definition: vrfDefaultDatabaseEvents.h:13
Definition: vrfDatabaseEvent.h:42
std::string theResourceTableName("Resource")
Definition: vrfDatabaseEvent.h:45
Represents a single event to be recorded in the database. Anytime something occurs that requires data...
Definition: vrfDatabaseEvent.h:22
Definition: vrfDatabaseEvent.h:30
static const bool PrimaryKey
Definition: vrfDatabaseEvent.h:53
std::string theDamageTableName("Damage")
auto theEngagementPrototype
Definition: vrfDefaultDatabaseEvents.h:258
auto theSimEnginePrototype
Definition: vrfDefaultDatabaseEvents.h:83
std::string theScenarioRunTableName("ScenarioRun")
auto theObjectPrototype
Definition: vrfDefaultDatabaseEvents.h:182
std::string theScenarioEventTableName("ScenarioEvent")
std::string theEngagementDefenseTableName("EngagementDefense")

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)