VR-Engage  2.2
Loading...
Searching...
No Matches
detectionReportController.h
Go to the documentation of this file.
1/******************************************************************************
2** Copyright (c) 2024 MAK Technologies
3** All rights reserved.
4******************************************************************************/
5
6//! \file detectionReportController.h
7//! \ingroup vrfmodel
8
9//! \brief Controller component that inspects fused sensor contacts, identifies
10//! detected munitions, and publishes detection reports to VR-Engage.
11#pragma once
12
13#include "vrfobjcore/controllerComponent.h"
14#include <vrfobjcore/localObject.h>
15
16class DtSensorContactInfoList;
17
18namespace makVre
19{
21
22constexpr char DtDetectionReportControllerType[] = "detection-report-controller";
23
24class DtDetectionReportController : public DtControllerComponent
25{
26public:
27 //! \copydoc DtControllerComponent(const DtString&,DtLocalObject*,DtSimulationServices*,
28 //! DtComponentDescriptor*,DtReaderWriterRegistry* parentRegistry)
29 DtDetectionReportController(const DtString& name,
30 DtLocalObject* owner,
31 DtSimulationServices* simManager,
32 DtComponentDescriptor* desc = nullptr,
33 DtReaderWriterRegistry* parentRegistry = nullptr);
34
35 //! default constructor; not implemented
37
38 //! copy constructor; not implemented
40
41 //! assignment operator; not implemented
43
44 //! destructor
45 virtual ~DtDetectionReportController() override;
46
47 virtual bool init() override;
48
49 //! \copydoc DtSimComponent::type()
50 //! \return constexpr char DtDetectionReportControllerType[] = "detection-report-controller";
51 virtual const char* type() const override;
52
53 virtual void tick() override;
54
55 //! \copydoc DtSimComponent(const DtString&,DtLocalObject*,DtSimulationServices*,
56 //! DtComponentDescriptor*,DtReaderWriterRegistry* parentRegistry)
57 //! \return New instance of this class.
58 static DtSimComponent* creator(const DtString& name,
59 DtLocalObject* owner,
60 DtSimulationServices* simManager,
61 DtComponentDescriptor* desc = nullptr,
62 DtReaderWriterRegistry* parentRegistry = nullptr);
63
64protected:
65 //! This holds the fused list of sensor contacts. (i.e. only one entry per
66 //! potential target,
67 //! even if it was spotted by multiple sensors), keyed by name of contact.
68 //! This list points to the object's state repository list which is responsible
69 //! for the creation and destruction of the list.
70 DtSensorContactInfoList* myFusedContactsList;
71
73};
74
75} // namespace makVre
Definition detectionReportControllerDescriptor.h:22
DtDetectionReportController(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=nullptr, DtReaderWriterRegistry *parentRegistry=nullptr)
const DtDetectionReportController & operator=(const DtDetectionReportController &orig)=delete
assignment operator; not implemented
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=nullptr, DtReaderWriterRegistry *parentRegistry=nullptr)
virtual bool init() override
virtual const char * type() const override
DtDetectionReportController(const DtDetectionReportController &orig)=delete
copy constructor; not implemented
DtSensorContactInfoList * myFusedContactsList
This holds the fused list of sensor contacts. (i.e. only one entry per potential target,...
Definition detectionReportController.h:70
virtual ~DtDetectionReportController() override
destructor
virtual void tick() override
DtDetectionReportController()=delete
default constructor; not implemented
DtDetectionReportControllerDescriptor * myDescriptor
Definition detectionReportController.h:72
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
constexpr char DtDetectionReportControllerType[]
Definition detectionReportController.h:22