VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
missileTargetManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
7 
8 #pragma once
9 
10 #include <vrfGuiCore/vrfGuiCore.h>
13 #include <vrvUtil/DtUnicode.h>
14 #include <vrvCore/DtStateView.h>
15 #include <vrvCore/DtEntityState.h>
16 
17 #include <vrvUtil/signalslib.h>
18 #include <vlpi/entityType.h>
19 
20 namespace makVrv
21 {
22  class DtDe;
23  class DtSimObjectEntry;
24  class DtRecordSettingsBackupInterface;
25  class DtSharedSettingsManager;
26 }
27 
28 class DtSimMessage;
29 
30 namespace makVrf
31 {
32  struct DtVrlinkSimulatedEnvironmentProcess;
33 }
34 
35 namespace makVrf
36 {
38 
40  {
41  public:
42  typedef std::map<makVrv::DtElementID, makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*> MissileTargetItems;
43 
44  public:
47 
49  virtual ~DtMissileTargetManager();
50 
52  static DtMissileTargetManager& instance(makVrv::DtDe& de);
53 
55  static void registerInstance(makVrv::DtDe&, DtMissileTargetManager*);
56 
58  {
59  return myMissileTargetItems;
60  }
61 
63  virtual bool hasMissileInteceptData(makVrv::DtElementID) const;
64 
65  public:
66  boost::signals2::signal<void (makVrv::DtElementID)> signal_removed;
67  boost::signals2::signal<void(const makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*)> signal_updated;
68 
69  protected:
71  void initInterceptAreas();
72 
74  virtual void slot_onBallisticTargetUpdated(const makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*);
75 
77  virtual void addIfIntercept(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
78  virtual void missileTargetAdded(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
79  virtual void missileTargetRemoved(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
80 
81  protected:
83 
85  std::map<makVrv::DtElementID, bool> myWaiting;
87  };
88 }
Virtual base class.
Definition: DtVirtualBaseClass.h:22
A unicode string.
Definition: DtUnicode.h:33
Definition: missileTargetManager.h:39
Contains makVrv::DtStateView class.
static const makVrv::DtUnicode DtMissileTargetName
Definition: missileTargetManager.h:37
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:26
std::map< makVrv::DtElementID, bool > myWaiting
Definition: missileTargetManager.h:85
makVrv::DtDe & myDe
Definition: missileTargetManager.h:82
Contains makVrv::DtVirtualBaseClass class.
static DtUnicode tr(const char *ascii)
Ascii translation function, used to be compatible with Qt&#39;s translation tools.
Definition: DtUnicode.h:92
File: simMsg.h.
Definition: simMessage.h:35
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
const MissileTargetItems & interceptItems() const
Definition: missileTargetManager.h:57
Contains makVrv::DtEntityState class.
std::map< makVrv::DtElementID, makVrv::DtStateView< DtVrlinkSimulatedEnvironmentProcess > * > MissileTargetItems
Definition: missileTargetManager.h:42
Base class to provide boost signal/slot management.
makVrv::DtSignalConnectionManager myConnectionManager
Definition: missileTargetManager.h:84
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
boost::signals2::signal< void(makVrv::DtElementID)> signal_removed
Definition: missileTargetManager.h:66
MissileTargetItems myMissileTargetItems
Definition: missileTargetManager.h:86

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)